등록창 호출
거래 등록(빌키 등록창 URL 요청)
등록 화면 호출을 하기 위해 고객정보를 등록하고 빌키 등록창 호출 URL을 응답으로 받을 수 있습니다.
요청
요청 URL
POST https://{API 도메인}/api/ep9/trades/webpay
Content-type: application/json; charset=utf-8
파라미터
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| mallId | String | 8Byte | ✅ | KICC에서 부여한 상점ID |
| shopOrderNo | String | 40Byte | ✅ | 상점 주문번호 반드시 Unique 값으로 생성 |
| amount | Number | ✅ | 결제요청 금액 0원으로 고정 | |
| payMethodTypeCode | String | 2Byte | ✅ | 정기결제는 "81" 고정 |
| currency | String | 2Byte | ✅ | 통화코드(원화 : “00”) |
| returnUrl | String | 256Byte | ✅ | 인증 완료 후 이동할 URL |
| deviceTypeCode | String | 20Byte | ✅ | 결제고객 단말구분 PC버전: “pc”, 모바일버전: “mobile” |
| clientTypeCode | String | 2Byte | ✅ | 결제창 구분코드 (통합창: "00") 고정 |
| langFlag | String | 3Byte | KOR: 한국어, ENG:영어, JPN:일본어, CHN:중국어 | |
| orderInfo | Object | ✅ | 결제 주문정보 (아래 orderInfo 참조) | |
| payMethodInfo | Object | 결제수단 정보 (아래 payMethodInfo 참조) | ||
| shopValueInfo | Object | 상점 예비필드(개인정보에 해당하는 데이터는 제외하여 전달해야 합니다.) |
orderInfo(주문 정보)
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| goodsName | String | 50Byte | ✅ | 상품명 |
| customerInfo | Object | 주문 고객정보 (아래 customerInfo 참조) |
orderInfo > customerInfo(주문 고객정보)
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| customerId | String | 20Byte | 고객 ID | |
| customerName | String | 20Byte | 고객명 | |
| customerMail | String | 50Byte | 고객 Email | |
| customerContactNo | String | 11Byte | 고객 연락처(숫자만 허용) | |
| customerAddr | String | 200Byte | 고객 주소 |
payMethodInfo(결제수단 정보)
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| billKeyMethodInfo | Object | ✅ | 카드정보 입력옵션 정보 (아래 billKeyMethodInfo 참조) |
payMethodInfo > billKeyMethodInfo(카드정보 입력옵션 정보)
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| certType | String | 1Byte | ✅ | 신용카드 인증타입으로 해당 값에 따라 입력받는 화면이 달라집니다. "0": 카드번호, 유효기간, 생년월일, 비밀번호 "1": 카드번호, 유효기간, 생년월일 "2": 카드번호, 유효기간 |
shopValueInfo(상점 필드)
| 필드명 | 타입 | 길이 | 필수여부 | 설명 |
|---|---|---|---|---|
| value1 | String | 64Byte | 필드1 | |
| value2 | String | 64Byte | 필드2 | |
| value3 | String | 32Byte | 필드3 | |
| value4 | String | 32Byte | 필드4 | |
| value5 | String | 64Byte | 필드5 | |
| value6 | String | 64Byte | 필드6 | |
| value7 | String | 64Byte | 필드7 |
요청 예시
{
"mallId": "T5102001",
"shopOrderNo": "{상점 주문번호}",
"amount": 0,
"payMethodTypeCode": "81",
"currency": "00",
"clientTypeCode": "00",
"returnUrl": "{상점 리턴 URL}",
"deviceTypeCode": "mobile",
"orderInfo": {
"goodsName": "예시 상품명"
}
}
응답
파라미터
| 필드명 | 타입 | 길이 | 설명 |
|---|---|---|---|
| resCd | String | 4Byte | 결과코드(정상 : “0000”) |
| resMsg | String | 1000Byte | 결과 메시지 |
| authPageUrl | String | 256Byte | 빌키 등록창 호출 URL |
응답 예시
{
"resCd": "0000",
"resMsg": "정상처리",
"authPageUrl": "{등록창 호출 URL}"
}
빌키 등록창 호출
인증완료 후 상점 returnUrl로 인증완료에 대한 응답이 POST로 전송됩니다.
요청
요청 URL
GET {결제창 호출 URL}
Content-type: text/html
응답
파라미터
| 필드명 | 타입 | 길이 | 설명 |
|---|---|---|---|
| resCd | String | 4Byte | 결과코드(정상 : “0000”) |
| resMsg | String | 1000Byte | 결과 메시지 |
| shopOrderNo | String | 40Byte | 상점 주문번호 거래등록 요청값 그대로 응답 |
| authorizationId | String | 60Byte | 인증 거래번호 빌키 발급요청 시 필수 값 |
| shopValue1 | String | 64Byte | 필드1, 거래등록 요청 시 전달받은 값 |
| shopValue2 | String | 64Byte | 필드2, 거래등록 요청 시 전달받은 값 |
| shopValue3 | String | 32Byte | 필드3, 거래등록 요청 시 전달받은 값 |
| shopValue4 | String | 32Byte | 필드4, 거래등록 요청 시 전달받은 값 |
| shopValue5 | String | 64Byte | 필드5, 거래등록 요청 시 전달받은 값 |
| shopValue6 | String | 64Byte | 필드6, 거래등록 요청 시 전달받은 값 |
| shopValue7 | String | 64Byte | 필드7, 거래등록 요청 시 전달받은 값 |