키움페이 통합API 매뉴얼을 통해 세부 절차와 결제유형별 항목을 확인해보세요.
※ 주의사항 설명 텍스트를 입력해주세요.
결제 프로세스
키움페이 통합API 결제의 기본적 흐름은 다음과 같이 이루어져요.
고객
가맹점
키움페이
1상품 주문
6결제결과 안내
2결제 URL 요청
3결제창 URL 응답
4결제 URL 호출
5결제 결과 응답
용어 정리
키움페이의 통합결제연동 서비스를 사용하는 과정에 필요한 결제수단 및 용어 설명을 제공해요.
API 연동
신용카드D,K(수기/월자동), 휴대폰(월자동), 폰빌(월자동), 상품권, 위챗페이, 카카오페이, 현금영수증, 가상계좌
결제연동 절차
- 1restful url을 호출하면서 헤더 및 결제수단 요청 파라미터를 함께 보내요.
- 2서버에서 헤더에 있는 AUTHKEY값 검증 진행 후 결제수단 요청 파라미터를 분석해요.
- 3결제수단 요청 파라미터에 들어온 경우 알맞은 URL을 응답해요.
- 4URL에 맞는 파라미터 항목을 연동 매뉴얼을 참고하여 JSON방식으로 전송해요.
- 5URL을 통해 호출 받은 서버에서 app서버와 ORDER(주문요청) 통신 후 DAOUTRX, TOKEN, AUTH(승인요청) URL을 응답해요.
- 6URL을 통해 호출 받은 서버에서 AUTH(승인요청) 통신 후 성공인지 실패인지 결과를 응답해요.
- 7가맹점에서는 응답 받은 결과를 토대로 성공/실패여부를 고객에게 보여줘요.
통합결제 URL
API 연동 가능 통합 URL
| 분류 | URL |
|---|---|
운영 | https://api.kiwoompay.co.kr/pay/ready |
개발 | https://apitest.kiwoompay.co.kr/pay/ready |
결제요청 URL 연동
통합결제 URL을 호출하여 결제요청 URL을 리턴 받을 수 있어요.
결제수단(PAYMETHOD)
| PAYMETHOD | 결제수단 | PAYMETHOD | 결제수단 |
|---|---|---|---|
MOBILE-BATCH | 휴대폰(월 자동 연장결제) | HAPPYMONEY | 해피머니상품권 |
KT-BATCH | 폰빌(월 자동 연장결제) | MOBILEPOP | 모바일팝 |
CARDK-KEYGEN | 신용카드K(월 자동 키 발행) | TEENCASH | 틴캐시 |
CARD-KEYGEN | 신용카드(월 자동 키 발행) | EGGMONEY | 에그머니상품권 |
CARDK-BATCH | 신용카드K(월 자동 연장결제) | GAMECARD | 게임문화상품권 |
CARD-BATCH | 신용카드(월 자동 연장결제) | WECHAT | 위챗페이 |
CARDK-SUGI | 신용카드K(수기결제) | KAKAOPAY | 카카오페이 |
CARD-SUGI | 신용카드(수기결제) | CASHREC | 현금영수증 |
CULTURE | 문화상품권 | VACCOUNT-ISSUE | 가상계좌 발행 |
BOOKNLIFE | 도서문화상품권 |
결제요청 URL 요청 항목
| 구분 | 항목명 | 길이 | 내용 | 비고 |
|---|---|---|---|---|
필수(헤더) | Authorization | 제한없음 | 상점 고유 결제 연동 키 | 키움페이에서 부여 |
필수(JSON) | CPID | 20 | 가맹점ID | 키움페이에서 부여 |
PAYMETHOD | 500 | 결제수단 |
전송 필수항목
모든 항목이 POST방식을 사용하고 있나요?
PAYMETHOD(결제수단)의 항목이 TOTAL(통합결제창) 고정인가요?
참고 예시
아래에 예시용 코드를 제공해드려요. 참고용으로만 사용하시고, 각 언어와 환경에 맞도록 구성해주세요.
※ 위의 코드는 예시 및 참고용으로만 사용해주세요.호출 사용 예시
String readyUrl = “https://apitest.kiwoompay.co.kr/pay/ready”;URL url = new URL(readyURL);HttpURLConnection conn = (HttpURLConnection) url.openConnection();conn.setRequestMethod(“POST”);conn.setRequestProperty(“Content-Type”, “application/json;charset=EUC-KR”);conn.setRequestProperty(“Authorization”, “키움페이에서 안내해준 연동 Key”);
CURL 호출 사용 예시
curl -X POST -H "Content-Type: application/json; charset=EUC-KR" –d '{"CPID":"","PAYMETHOD":""}'"https://apitest.kiwoompay.co.kr/pay/ready"
결제요청 URL 요청 응답항목
결제요청 URL 호출이 정상적으로 완료되면 다음 결제를 할 수 있는 결제 URL 정보를 리턴해요.
| 구분 | 항목명 | 길이 | 내용 | 비고 |
|---|---|---|---|---|
필수 | RETURNURL | 제한없음 | PAYMETHOD에 해당하는 결제 요청 URL | |
TOKEN | 제한없음 | 요청에 대한 유효한 KEY |
결제요청
리턴받은 결제 URL에 PAYMETHOD 유형에 맞는 파라미터 항목을 JSON형태로 전송해요.
※ 결제수단 별 상세 파라미터는 매뉴얼을 참고해주세요.| 구분 | 항목명 | 길이 | 내용 | 비고 |
|---|---|---|---|---|
필수(헤더) | Authorization | 제한없음 | 상점 고유 결제 연동 키 | 키움페이에서 부여 |
TOKEN | 제한없음 | 요청에 대한 유효한 KEY | ||
필수(JSON) | CPID | 20 | 가맹점ID | 키움페이에서 부여 |
PAYMETHOD | 20 | 결제수단 | ||
ORDERNO | 50 | 주문번호 | ||
PRODUCTTYPE | 2 | 상품구분 | ||
BILLTYPE | 2 | 과금 유형 | ||
AMOUNT | 10 | 결제금액 | ||
PRODUCTNAME | 50 | 상품명 | ||
IPADDRESS | 20 | 고객IP정보 | ||
USERID | 50 | 고객 ID | ||
선택(JSON) | EMAIL | 100 | 고객 E-MAIL | |
USERNAME | 50 | 고객명 | ||
PRODUCTCODE | 10 | 상품코드 | ||
RESERVEDINDEX1 | 20 | 예약항목1 | ||
RESERVEDINDEX2 | 20 | 예약항목2 | ||
RESERVEDSTRING | 500 | 예약항목 |
전송 필수항목
모든 항목이 POST방식을 사용하고 있나요?
Authorization(인증키) 값이 헤더에 반드시 포함되어 있나요?
결제수단에 맞는 파라미터들을 반드시 포함하여 JSON형태로 전송하고 있나요?
결제요청 응답 항목
결제가 성공 또는 실패 되었을 때 리턴되는 항목이에요.
※ 결제수단 별 상세 파라미터는 매뉴얼을 참고해주세요.| 구분 | 항목명 | 길이 | 내용 | 비고 |
|---|---|---|---|---|
공통(JSON) | TOKEN | 제한없음 | 요청에 대한 유효한 KEY | 가맹점검증용 |
PAYMETHOD | 20 | 결제수단 | ||
RESULTCODE | 4 | 결과코드 | ||
ERRORMESSAGE | 100 | 오류 메시지 | ||
DAOUTRX | 20 | 다우거래번호 | ||
AMOUNT | 10 | 결제금액 | ||
ORDERNO | 50 | 주문번호 | ||
AUTHDATE | 14 | 결제일시(YYYYMMDDhh24miss) | 당사기준 | |
CPNAME | 50 | 가맹점 명(결제완료 Email 내용) | ||
CPURL | 50 | 가맹점 홈페이지 주소(결제완료 Email 내용) | ||
CPTELNO | 15 | 가맹점 고객센터(결제완료 Email 내용) |