휴대폰 자동결제 API
휴대폰 자동결제는 1회차 결제 승인 이후, 발급된 인증키(billKey)로 다음 회차에 다시 결제하는 방식의 서비스입니다.
테스트용 키 정보
API 정보
POST/spay/APIService.do
Content-Type
application/json테스트
https://tbgw.settlebank.co.kr/spay/APIService.do운영
https://gw.settlebank.co.kr/spay/APIService.do주의 사항
NOTE
월자동 결제 흐름
1) 1회차 결제창 요청 (autoPayType='M') → 2) billKey 발급 → 3) 2회차부터 이 API로 결제
- 1회차 결제 시
autoPayType요청 파라미터에M을 설정하면billKey가 발급됩니다. - 2회차 결제 시 발급받은
billKey를 요청 파라미터에 세팅하여 결제 요청합니다. - 2회차 결제 시의 거래금액과 상품명은 1회차 결제와 동일해야 합니다.
요청 파라미터
타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자예: AN(10) = 영문+숫자, 최대 10byte
params 객체
└mchtIdAN(10)영문+숫자, 최대 10byte*헥토파이낸셜에서 부여하는 고유 상점아이디
헥토파이낸셜에서 부여하는 고유 상점아이디
nxhp_sb_ma: 월자동결제 테스트└verAN(4)영문+숫자, 최대 4byte*전문의 버전
전문의 버전
*고정값
└methodA(2)영문, 최대 2byte*결제수단
결제수단
*고정값 (MP: 휴대폰결제)
└bizTypeAN(2)영문+숫자, 최대 2byte*업무 구분코드
업무 구분코드
*고정값 (B1: 자동연장)
└encCdN(2)숫자, 최대 2byte*암호화 구분 코드
암호화 구분 코드
*고정값
└mchtTrdNoAN(100)영문+숫자, 최대 100byte*상점에서 생성하는 고유한 주문번호
상점에서 생성하는 고유한 주문번호
└trdDtN(8)숫자, 최대 8byte*요청일자 (YYYYMMDD)
요청일자 (YYYYMMDD)
└trdTmN(6)숫자, 최대 6byte*요청시간 (HHMMSS)
요청시간 (HHMMSS)
└mobileYnA(1)영문, 최대 1byte모바일 여부
모바일 여부
Y: 모바일웹/앱 N: PC 또는 그 외└osTypeA(1)영문, 최대 1byteOS 구분
OS 구분
A: Android I: iOS W: Windows M: Mac E: 기타data 객체
└pktHashAN(64)영문+숫자, 최대 64byte*
SHA-256SHA256 방식으로 생성한 해쉬값(실시간 생성)SHA256 방식으로 생성한 해쉬값
NOTE
해쉬 생성 조합
trdDt + trdTm + mchtId + mchtTrdNo + trdAmt(평문) + hashKey
└emailAN(60)영문+숫자, 최대 60byte*고객 이메일 주소
고객 이메일 주소
└mUserIdAHN(50)영문+한글+숫자, 최대 50byte*상점 고객아이디
상점 고객아이디
└crcCdA(3)영문, 최대 3byte*통화구분
통화구분
*고정값
└trdAmtN(12)숫자, 최대 12byte*
AES-256AES-256/ECB/PKCS5Padding + Base64거래금액 (1회차 결제와 동일해야 함)거래금액 (1회차 결제와 동일해야 함)
└prdtNmAHN(128)영문+한글+숫자, 최대 128byte*상품명 (1회차 결제와 동일해야 함)
상품명 (1회차 결제와 동일해야 함)
└sellerNmAHN(50)영문+한글+숫자, 최대 50byte판매자명
판매자명
└ordNmAHN(50)영문+한글+숫자, 최대 50byte*주문자명
주문자명
└billKeyAN(50)영문+숫자, 최대 50byte*헥토파이낸셜에서 발급한 빌키
헥토파이낸셜에서 발급한 빌키
응답 파라미터
타입 표기법
N숫자A영문H한글AN영문+숫자AHN영문+한글+숫자예: AN(10) = 영문+숫자, 최대 10byte
params 객체
└mchtIdAN(10)영문+숫자, 최대 10byte*상점아이디
nxhp_sb_ma상점아이디
└verAN(4)영문+숫자, 최대 4byte*전문의 버전
0A19전문의 버전
└methodA(2)영문, 최대 2byte*결제수단
MP결제수단
└bizTypeAN(2)영문+숫자, 최대 2byte*업무 구분코드
B1업무 구분코드
└encCdN(2)숫자, 최대 2byte*암호화 구분 코드
23암호화 구분 코드
└mchtTrdNoAN(100)영문+숫자, 최대 100byte*상점주문번호
ORDER20211231100000상점주문번호
└trdNoAN(40)영문+숫자, 최대 40byte*헥토파이낸셜 거래번호
STFP_PGMPnxhp_sb_ma0211129135810M1494620헥토파이낸셜 거래번호
└trdDtN(8)숫자, 최대 8byte*요청일자 (YYYYMMDD)
20211231요청일자 (YYYYMMDD)
└trdTmN(6)숫자, 최대 6byte*요청시간 (HHMMSS)
100000요청시간 (HHMMSS)
└outStatCdAN(4)영문+숫자, 최대 4byte*거래상태코드 (성공/실패)
0021거래상태코드 (성공/실패)
0021: 성공 0031: 실패└outRsltCdAN(4)영문+숫자, 최대 4byte*결과코드
0000결과코드
└outRsltMsgAHN(200)영문+한글+숫자, 최대 200byte*결과메시지
정상적으로 처리되었습니다.결과메시지
data 객체
└pktHashAN(64)영문+숫자, 최대 64byte*요청시 hash 값 그대로 return
f395b6725a9a18...요청시 hash 값 그대로 return
└telCoA(3)영문, 최대 3byte
AES-256AES-256/ECB/PKCS5Padding통신사SKT통신사
*실제 응답값은 AES-256 암호화된 값입니다. 복호화 후 사용하세요.
└trdAmtN(12)숫자, 최대 12byte*
AES-256AES-256/ECB/PKCS5Padding거래금액1000거래금액
*실제 응답값은 AES-256 암호화된 값입니다. 복호화 후 사용하세요.
└billKeyAN(50)영문+숫자, 최대 50byte*요청 시 값 그대로 return
MO0123456789요청 시 값 그대로 return
