결제 승인
결제창으로부터 받은 인증 거래일련번호으로 승인 요청하는 API 입니다.
주의사항
- 응답 대기시간 초과 및 네트워크 오류로 응답을 받지 못한 경우 반드시 거래상태 조회를 통해 PG 거래고유번호를 조회 후 취소처리 바랍니다. 거래상태 조회 참고
- 승인결과의 결제금액과 상점의 결제금액이 상이할 시 반드시 취소처리 바랍니다.
- 승인결과에 대한 상점 DB 처리 실패 시 반드시 취소처리 바랍니다
요청
요청 URL
POST https://{API 도메인}/appcardpay/v1/approval.do
Content-type: application/json; charset=euc-kr
참고
API 멱등성 지원 대상 (API 멱등성 참조)
주의
최종 결제 승인이 완료되기까지 시간이 걸리므로 timeout을 30초로 설정해야 합니다.
파라미터
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| vanTid | String | 8Byte | ✅ | VAN 터미널 ID |
| shopTransactionId | String | 60Byte | ✅ | 상점 거래고유번호 (API 멱등성 키) |
| certContorlNo | String | 40Byte | ✅ | 인증 거래일련번호 결제창 호출 후 받은 값 그대로 사용 |
| approvalReqDate | String | 8Byte | ✅ | 승인요청일자(yyyyMMdd) |
요청 예시
{
"vanTid": "{VAN 터미널ID}",
"shopTransactionId": "{API 멱등성 키}",
"certControlNo": "{인증 거래번호}",
"approvalReqDate": "{요청일자}"
}
응답
파라미터
| 필드명 | 타입 | 길이 | 설명 |
|---|---|---|---|
| resCd | String | 4Byte | 결과코드(정상 : “0000”) |
| resMsg | String | 1000Byte | 결과 메시지 |
| shopTransactionId | String | 60Byte | 상점 거래고유번호 승인 요청 시 전송한 값 그대로 사용 |
| vanTid | String | 8Byte | VAN 터미널 ID |
| shopOrderNo | String | 40Byte | 상점 주문번호(거래등록 시 요청한 값 그대로 응답) |
| controlNo | String | 20Byte | KICC 거래일련번호(취소요청 시 필수 필드) |
| amount | Number | 총 결제금액 | |
| transactionDate | String | 14Byte | 거래일시(yyyyMMddHHmmss) |
| accepterId | String | 15Byte | 가맹점번호 |
| paymentInfo | Object | 결제 승인결과 정보 (아래 paymentInfo 참조) |
paymentInfo(결제 승인결과 정보)
| 필드명 | 타입 | 길이 | 설명 |
|---|---|---|---|
| payMethodType | String | 2Byte | 결제수단 코드 신용카드: "11" |
| vanSerial | String | 20Byte | VAN 거래 일련번호 상점 관리자에서 결제내역을 조회할 때 필요합니다. |
| authNo | String | 20Byte | 승인번호 |
| cardInfo | Object | 신용카드 결제 결과 (아래 cardInfo 참조) | |
| npyPaymentId | String | 20Byte | 네이버페이 결제번호(네이버페이 결제 시 적용) |
paymentInfo > cardInfo(신용카드 결제결과)
| 필드명 | 타입 | 길이 | 설명 |
|---|---|---|---|
| cardNo | String | 20Byte | 카드번호(마스킹 *) |
| issuerCode | String | 3Byte | 발급사 코드 (카드사 코드 참고) |
| acquirerCode | String | 3Byte | 매입사 코드 (카드사 코드 참고) |
| installmentMonth | String | 2Byte | 할부개월 |
응답 예시
{
// 신용카드 결제 승인응답
"resCd": "0000",
"resMsg": "결제 정상",
"vanTid": "{요청한 VAN 터미널 ID}",
"controlNo": "{KICC 거래일련번호}",
"shopTransactionId": "{요청한 API 멱등성 키}",
"shopOrderNo": "{상점 주문번호}",
"amount": 51004,
"transactionDate": "20210326090200",
"accepterId": "{가맹점번호}",
"paymentInfo": {
"payMethodTypeCode": "11",
"approvalNo": "00017177",
"vanSerial": "50123011010326090200",
"cardInfo": {
"cardNo": "45184211******81",
"issuerCode": "029",
"acquirerCode": "029",
"installmentMonth": "00"
}
}
}