결제 승인
간편결제 인증 단계에서 획득한 토큰 등의 정보를 사용하여 최종 결제 승인을 요청하는 API입니다.
주의사항
- 응답 대기시간 초과(Read Timeout) 및 네트워크 오류로 응답을 받지 못한 경우, 실제로는 승인이 되었을 수 있으므로 반드시 망취소(Net-Cancel) API를 호출해야 합니다.
- 승인결과의 결제금액과 상점의 결제금액이 상이할 시 반드시 취소처리 바랍니다.
- 승인결과에 대한 상점 DB 처리 실패 시 반드시 취소처리 바랍니다.
요청
요청 URL
POST https://{API 도메인}/smpy/kiccpay/reqAprv
Content-type: application/json; charset=utf-8
주의
최종 결제 승인이 완료되기까지 시간이 걸리므로 timeout을 30초로 설정해야 합니다.
파라미터
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| tid | String | 10Byte | ✅ | KICC 단말기 ID |
| svcId | String | 10Byte | ✅ | KICC 간편결제 서비스 ID |
| bizrNo | String | 10Byte | ✅ | 가맹점 사업자번호 |
| mercTrxNo | String | 40Byte | ✅ | 가맹점 거래일련번호 (20Byte 권장) |
| tokenKey | String | 128Byte | ✅ | 간편결제 인증 후 수신한 Token 데이터 간편결제 인증응답으로 받은 authorizationId 를 AES256로 암호화 |
| alotMonth | String | 2Byte | ✅ | 할부기간 (Default: "00" - 일시불) |
| trxAmt | Number | ✅ | 전체 결제 금액 | |
| vatAmt | Number | ✅ | 부가세 (전체 금액 부과세일 경우 생략가능) | |
| svcAmt | Number | 봉사료 | ||
| taxFreeAmt | Number | 비과세금액 | ||
| tranDt | String | 8Byte | ✅ | 가맹점 전송일자 (yyyyMMdd) |
| tranTm | String | 6Byte | ✅ | 가맹점 전송시각 (HH24MISS) |
| userData | String | 512Byte | 가맹점 사용자 데이터 (Echo 필드) |
요청 예시
{
"tid": "{KICC 단말기 ID}",
"svcId": "{KICC 간편결제 서비스 ID}",
"bizrNo": "1234567890",
"mercTrxNo": "ORD_20231225_0001",
"tokenKey": "TOKEN_ABC123XYZ...",
"alotMonth": "00",
"trxAmt": 10000,
"vatAmt": 909,
"svcAmt": 0,
"taxFreeAmt": 0,
"tranDt": "20231225",
"tranTm": "120000",
"userData": "User_001"
}
응답
파라미터
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| respCd | String | 4Byte | ✅ | 결과코드 (정상 : “0000”) |
| respMsg | String | 128Byte | ✅ | 결과 메시지 |
| tid | String | 10Byte | ✅ | 요청 시 전송한 KICC 단말기 ID |
| svcId | String | 10Byte | ✅ | 요청 시 전송한 서비스 ID |
| bizrNo | String | 10Byte | ✅ | 가맹점 사업자번호 |
| mercTrxNo | String | 20Byte | ✅ | 가맹점 거래일련번호 |
| trxDt | String | 8Byte | ✅ | VAN 처리 요청일자 |
| trxTm | String | 6Byte | ✅ | VAN 처리 요청시각 |
| issFmCd | String | 4Byte | ✅ | 발급사 코드 (카드코드 참조) |
| issFmNm | String | 20Byte | ✅ | 발급사 명 |
| purchFmCd | String | 4Byte | ✅ | 매입사 코드 (카드코드 참조) |
| purchFmNm | String | 20Byte | ✅ | 매입사 명 |
| joShopNo | String | 15Byte | ✅ | 카드사 가맹점 번호 |
| aprvDt | String | 8Byte | ✅ | 카드사 승인일자 (yyyyMMdd) |
| aprvTm | String | 6Byte | ✅ | 카드사 승인시각 (HH24MISS) |
| aprvNo | String | 10Byte | ✅ | 신용 승인번호 |
| vanTrxNo | String | 12Byte | ✅ | VAN 거래 고유번호 |
| cardConfirmNo | String | 40Byte | ✅ | 마스킹된 카드번호 (Masked Card No) |
응답 예시
{
"respCd": "0000",
"respMsg": "승인 성공",
"tid": "T123456789",
"svcId": "SVC_SIMPLE",
"bizrNo": "1234567890",
"mercTrxNo": "ORD_20231225_0001",
"trxDt": "20231225",
"trxTm": "120001",
"issFmCd": "06",
"issFmNm": "국민카드",
"purchFmCd": "06",
"purchFmNm": "국민카드",
"joShopNo": "1234567890",
"aprvDt": "20231225",
"aprvTm": "120002",
"aprvNo": "12345678",
"vanTrxNo": "V12345678901",
"cardConfirmNo": "1234-56**-****-1234"
}