망취소 (Net-Cancel)
승인 요청 시 통신 장애나 타임아웃(Timeout)으로 인해 응답을 수신하지 못한 경우, 데이터 정합성을 위해 요청하는 API입니다. 기존 승인 요청 데이터를 그대로 사용하여 망취소를 시도해야 합니다.
🚨 중요: 망취소 필수 시점
다음과 같은 경우 반드시 망취소 API를 호출해야 합니다.
- Read Timeout: 승인 요청 후 설정된 시간(예: 30초) 내에 응답이 오지 않은 경우
- Connection Error: 승인 요청 중 연결이 끊기거나 네트워크 오류가 발생한 경우
- Parsing Error: 응답은 받았으나 JSON 형식이 깨져서 성공 여부를 판단할 수 없는 경우
요청
요청 URL
POST https://{API 도메인}/smpy/kiccpay/reqRtran
Content-type: application/json; charset=utf-8
파라미터
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| tid | String | 10Byte | ✅ | KICC 단말기 ID |
| svcId | String | 10Byte | ✅ | KICC 간편결제 서비스 ID |
| bizrNo | String | 10Byte | ✅ | 가맹점 사업자번호 |
| mercTrxNo | String | 40Byte | ✅ | 가맹점 거래일련번호 (20Byte 권장) |
| tokenKey | String | 40Byte | ✅ | 간편결제 Token 데이터 (승인 요청 시 값) |
| alotMonth | String | 2Byte | ✅ | 할부기간 (Default: "00" - 일시불) |
| trxAmt | Number | ✅ | 전체 결제금액 | |
| vatAmt | Number | ✅ | 부가세 | |
| svcAmt | Number | ✅ | 봉사료 | |
| tranDt | String | 8Byte | ✅ | 가맹점 전송일자 (yyyyMMdd) |
| tranTm | String | 6Byte | ✅ | 가맹점 전송시각 (HH24MISS) |
요청 예시
{
"tid": "{KICC 단말기 ID}",
"svcId": "{KICC 간편결제 서비스 ID}",
"bizrNo": "1234567890",
"mercTrxNo": "ORD_20231225_0001",
"tokenKey": "TOKEN_ABC123XYZ...",
"alotMonth": "00",
"trxAmt": 10000,
"vatAmt": 909,
"svcAmt": 0,
"tranDt": "20231225",
"tranTm": "120000"
}
응답
파라미터
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| respCd | String | 4Byte | ✅ | 결과코드 (정상 : “0000”) |
| respMsg | String | 128Byte | ✅ | 결과 메시지 |
| tid | String | 10Byte | ✅ | KICC 단말기 ID |
| svcId | String | 10Byte | ✅ | KICC 간편결제 서비스 ID |
| bizrNo | String | 10Byte | ✅ | 가맹점 사업자번호 |
| mercTrxNo | String | 20Byte | ✅ | 가맹점 거래일련번호 |
| trxDt | String | 8Byte | ✅ | VAN 처리요청일자 |
| trxTm | String | 6Byte | ✅ | VAN 처리요청시각 |
| cardConfirmNo | String | 40Byte | ✅ | 마스킹된 카드번호 (Masked Card No) |
응답 예시
{
"respCd": "0000",
"respMsg": "망취소 성공",
"tid": "T123456789",
"svcId": "SVC_SIMPLE",
"bizrNo": "1234567890",
"mercTrxNo": "ORD_20231225_0001",
"trxDt": "20231225",
"trxTm": "120005",
"cardConfirmNo": "1234-56**-****-1234"
}