네이버페이 간편결제 (결제창 방식)

네이버페이 간편결제는 네이버페이를 통해 결제하는 서비스입니다.

테스트용 키 정보


API 정보

POST/corp/main.do
Content-Typeapplication/x-www-form-urlencoded
테스트https://tbnpg.settlebank.co.kr/corp/main.do
운영https://npg.settlebank.co.kr/corp/main.do

주의 사항

NOTE

네이버페이 테스트 안내

네이버페이 테스트는 네이버 계정이 필요합니다.
NOTE

정기결제 안내

정기결제를 사용하려면 정기결제 서비스가 설정된 상점아이디를 사용하고 autoPayType=A를 설정해야 합니다. 결제 성공 시 billKey가 발급되며, 이를 사용해 정기결제 API를 호출할 수 있습니다. 영업 담당자를 통해 별도 신청이 필요합니다.
  • 네이버페이 결제 시 네이버 계정으로 로그인이 필요합니다.
  • 네이버페이는 포인트와 머니를 구분하지 않고 합산 금액(trdAmt)만 제공합니다. 현금영수증은 포인트/머니 결제 금액 중 이벤트·프로모션 등으로 무상 지급된 포인트를 제외한 금액에 대해서만 발급되므로, 응답의 csrcAmt(현금영수증 발급 금액)는 trdAmt보다 작을 수 있습니다.

요청 파라미터

타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자
예: AN(10) = 영문+숫자, 최대 10byte

필수 파라미터

mchtIdAN(10)영문+숫자, 최대 10byte*
헥토파이낸셜에서 부여하는 고유 상점아이디
hecto_test: 네이버페이 간편결제 테스트 nxnvp_auto: 정기결제 테스트
methodAN(20)영문+숫자, 최대 20byte*
결제 구분 코드
*고정값
corpPayCodeAN(3)영문+숫자, 최대 3byte*
간편결제 코드
*네이버페이: NVP
trdDtN(8)숫자, 최대 8byte*
요청일자 (yyyyMMdd)
trdTmN(6)숫자, 최대 6byte*
요청시간 (HH24MISS)
mchtTrdNoAN(100)영문+숫자, 최대 100byte*
상점에서 생성하는 고유 주문번호 (한글 제외)
mchtNameAHN(100)영문+한글+숫자, 최대 100byte*
상점한글명
pmtPrdtNmAHN(128)영문+한글+숫자, 최대 128byte*
결제상품명
trdAmtN(12)숫자, 최대 12byte*AES-256AES-256/ECB/PKCS5Padding + Base64
거래금액
notiUrlAN(250)영문+숫자, 최대 250byte*
결제 후 결과 전달되는 페이지의 URL (Server To Server 연동 URL)
nextUrlAN(250)영문+숫자, 최대 250byte*
결제 결과 화면으로 전환되는 URL
*결제창 내 버튼 클릭 시 리다이렉트 됩니다. outStatCd 값으로 결제 성공(0021)/실패(0031) 여부를 확인하세요.
cancUrlAN(250)영문+숫자, 최대 250byte*
고객이 결제창의 X 버튼 클릭 시 리다이렉트 되는 URL
*브라우저 종료, 뒤로가기 등은 감지되지 않습니다.
pktHashAN(200)영문+숫자, 최대 200byte*SHA-256(실시간 생성)
SHA256 방식으로 생성한 해쉬값
NOTE

해쉬 생성 조합

mchtId + method + mchtTrdNo + trdDt + trdTm + trdAmt(평문) + hashKey

선택 파라미터

taxTypeCdA(1)영문, 최대 1byte
면세여부. 공백일 경우 상점 설정에 따름
N: 과세 Y: 면세 G: 복합과세
taxAmtN(12)숫자, 최대 12byteAES-256AES-256/ECB/PKCS5Padding + Base64
과세금액 (복합과세일 경우 필수)
vatAmtN(12)숫자, 최대 12byteAES-256AES-256/ECB/PKCS5Padding + Base64
부가세금액 (복합과세일 경우 필수)
taxFreeAmtN(12)숫자, 최대 12byteAES-256AES-256/ECB/PKCS5Padding + Base64
비과세금액 (복합과세일 경우 필수)
mchtParamAHN(4000)영문+한글+숫자, 최대 4000byte
상점 예약 필드 (결과 전달시 그대로 return)
mchtCustIdAN(50)영문+숫자, 최대 50byteAES-256AES-256/ECB/PKCS5Padding + Base64
상점 고객아이디
appSchemeAN(100)영문+숫자, 최대 100byte
자체앱을 구축하는 경우 사용하는 앱스키마
corpPayTypeA(5)영문, 최대 5byte
결제 수단 지정
CARD: 카드결제 POINT: 네이버포인트
*공백 시 브릿지 페이지에서 고객이 직접 결제 수단을 선택합니다.
cashRcptUIYnA(1)영문, 최대 1byte
현금영수증 발급 페이지 호출 여부
Y: 현금영수증 발급 페이지 호출 N: 호출 안함
*네이버포인트(POINT) 결제 시 현금영수증 발급이 필요한 경우 Y로 설정
autoPayTypeA(1)영문, 최대 1byte
자동결제 타입
A: 자동결제 (정기결제)
*정기결제 서비스가 설정된 상점아이디 사용 시 필수. 영업 담당자를 통해 별도 신청 필요.

응답 파라미터

결제 완료 또는 실패 시 nextUrl로, 고객이 결제창 내 X 버튼을 클릭하면 cancUrl로 리다이렉트되며 아래 파라미터가 전달됩니다. 브라우저 종료 및 뒤로가기는 감지되지 않습니다.

타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자
예: AN(10) = 영문+숫자, 최대 10byte

공통 응답

mchtIdAN(10)영문+숫자, 최대 10byte*hecto_test
상점아이디
outStatCdAN(4)영문+숫자, 최대 4byte*0021
거래상태코드
0021: 성공 0031: 실패
outRsltCdAN(4)영문+숫자, 최대 4byte*0000
결과코드
outRsltMsgAHN(200)영문+한글+숫자, 최대 200byte*정상적으로 처리되었습니다.
결과메시지
methodAN(20)영문+숫자, 최대 20byte*corp
결제수단
mchtTrdNoAN(100)영문+숫자, 최대 100byte*NAVER20211231100000
상점 주문번호
mchtCustIdAN(50)영문+숫자, 최대 50byteAES-256AES-256/ECB/PKCS5PaddingHongGilDong
상점 고객아이디
*실제 응답값은 AES-256 암호화된 값입니다. 복호화 후 사용하세요.
trdNoAN(40)영문+숫자, 최대 40byte*STFP_PGPZhecto_test0211129135810M1494620
헥토파이낸셜 거래번호
trdAmtN(12)숫자, 최대 12byte*AES-256AES-256/ECB/PKCS5Padding1000
거래금액
*실제 응답값은 AES-256 암호화된 값입니다. 복호화 후 사용하세요.
mchtParamAHN(4000)영문+한글+숫자, 최대 4000bytename=HongGilDong&age=25
요청으로 받은 필드값을 응답으로 Bypass
authDtN(14)숫자, 최대 14byte20211231100000
승인일시
csrcAmtN(12)숫자, 최대 12byte*AES-256AES-256/ECB/PKCS5Padding1000
현금영수증 발급 금액
*네이버페이 포인트/머니 결제 금액 중 무상 지급(이벤트·프로모션 등) 포인트는 제외되므로 trdAmt보다 작을 수 있음
*실제 응답값은 AES-256 암호화된 값입니다. 복호화 후 사용하세요.
billKeyAN(50)영문+숫자, 최대 50byteSBILL_0123456789
자동결제키 (정기결제 시 발급)
*정기결제 서비스가 설정된 상점아이디 사용 시 발급됩니다. 영업 담당자를 통해 별도 신청 필요.

노티 전문 (결과통보)

결제 완료 후 헥토파이낸셜에서 가맹점으로 노티(결과통보)가 전송됩니다.

NOTE

노티 전문 확인

네이버페이 결제 결과통보 파라미터와 처리 방법은 노티 전문 문서를 참고하세요.
❓

더 궁금한 내용이 있나요?

FAQ
💬

기술지원이 필요한가요?