브랜드페이

브랜드 컨셉에 맞는 다양한 혜택 및 커스텀이 가능한 결제 서비스

소개

고객사 API 목록

고객사 API 목록
API 구분 API 리소스 경로
결제 요청 POSTv1.0/payments/request
결제 승인 POSTv1.0/payments/confirm
결제 취소 POSTv1.0/payments/cancel
부분 취소 POSTv1.0/payments/cancel/partial
전용페이 관리화면 요청
  • POST전용페이 결제수단 등록
  • POST전용페이 결제 비밀번호 수정
  • POST전용페이 결제 비밀번호 생략
  • POST전용페이 결제 비밀번호 사용
  • POST전용페이 결제수단 삭제
  • POST머니 사용 전용페이 비밀번호 인증
  • POST전용페이 결제수단 관리
  • POST전용페이 사용자 삭제
v1.0/payments/o2opay/manage
  • POSTv1.0/payments/o2opay/manage
  • POSTv1.0/payments/o2opay/manage/modify
  • POSTv1.0/payments/o2opay/manage/pwd-skip
  • POSTv1.0/payments/o2opay/manage/pws-use
  • POSTv1.0/payments/o2opay/manage/delete
  • POSTv1.0/payments/o2opay/manage/pwd-auth
  • POSTv1.0/payments/o2opay/manage/control
  • POSTv1.0/payments/o2opay/manage/delete-user
전용페이 결제 비밀번호 사용 여부 조회 GETv1.0/payments/o2opay/pwd-use
전용페이 결제수단 삭제 POSTv1.0/payments/o2opay/payment-method
전용페이 사용자 삭제 POSTv1.0/payments/o2opay/user/secession
전용페이 결제수단 목록 조회 GETv1.0/payments/info/payment-method-list
환불용 전용페이 계좌 조회 GETv1.0/payments/o2opay/pybk-acct
현금영수증 발행(발급취소) POSTv1.0/cashreceipt/issue/{tid}
현금영수증 발행 확인 GETv1.0/cashreceipt/issue-info
거래 확인서 GETv1.0/receipt/info/{tid}
결제 거래정보 조회 GETv1.0/payments/confirm-info
카드사 목록 조회 GETv1.0/payments/info/card-list
간편결제 앱카드 목록 조회(핏콜라보용) GETv1.0/payments/info/payment-card-list
PG약관 조회 GETv1.0/payments/info/terms-info-list

*고객사 API의 미디어 타입은 “content-type application/json” 입니다.

고객사 API 정의

결제 요청

고객사 결제 요청 용 API 입니다. 최소 승인 금액은 일반카드, 전용페이카드 100원, 계좌이체 1원, 제로페이 1원이며, 해당 금액 미만의 결제 요청은 처리되지 않습니다. API 요청

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/request POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
공통필수영역
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
client_id 필수 string 10 고객사 아이디
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_name 필수 string 20 고객사 사용자(회원) 명
order_no 필수 string 50 고객사 주문번호
pay_type 필수 number   결제 유형 (1: 단일 결제, 2: 복합 일반, 3: 복합 전용)
device_type 필수 number   (결제 요청)기기 유형 (1: 모바일, 2: PC)
amount 필수 number   (결제 상품)금액
*(결제 요청) 컵반환 보증금이 있는 경우 상품금액에 더하여 호출합니다.
예) 총금액 10,000원, 컵반환 보증금 300원
-> amount : 10,300원으로 설정
*(결제 요청) 선불전자결제수단 금액이 있는 경우 상품금액에서 제외하여 호출합니다.
예) 총금액 10,000원, 선불전자결제 : 2,000원
-> amount : 8,000원으로 설정
product_name 필수 string 50 (결제)상품 명
return_url 필수 string 255 결제 인증 결과 수신 및 결제 승인 API를 호출하는 고객사 URL
cancel_url 필수 string 255 결제 취소 시 이동하는 고객사 URL
fail_url 필수 string 255 결제 실패 시 이동하는 고객사 URL
param_ispt_hash 필수 string 1000 파라메터 검증 해시
*고객사 요청 파라미터 검증을 위한 sha256 hash 값을 의미하며, "sha256(client_id + user_id + order_no + pay_type + amount + payment API Key)" 조합으로 생성된다.
공통부가영역
user_ci 선택적 필수 string 88 고객사 사용자 CI(Connecting information)
*제로페이 최초 사용자를 위한 본인인증 시, 고객사에서 전달한 user_ci, mobile_no와 휴대폰 본인인증 결과가 다를 경우, 제로페이 회원 등록이 불가합니다.
*지역화폐 단일 결제 요청 시 필수 값 입니다.
*결제수단이 shpay일 때 필수 값 입니다.
*핏콜라보 결제 요청 시 필수 값 입니다.
taxfree_amount   number   비과세 금액
*(결제 요청)금액이 모두 비과세액인 경우, amount, taxfree_amount 모두 동일한 값을 설정하여야 합니다.
예) (결제 요청)금액 1,000원 모두 비과세 금액인 경우
→ amount, taxfree_amount 모두 1,000원 설정
*(결제 요청)금액 중 일부가 비과세 금액인 경우, 해당 금액만 taxfree_amount에 설정하여야 합니다.
예) (결제 요청)금액 1,000원중 비과세 금액이 100원인 경우
→ amount 1,000원, taxfree_amount 100원 설정
tax_amount   number   부가세 금액
*요청 파라미터 값이 없으면,
((amount - taxfree_amount - cup_return_deposit) / 11) 계산식을 적용, 소수점 이하 반올림으로 자동 계산합니다.
cup_return_deposit   number   컵반환보증금
card_cpny_cd 선택적 필수 string   카드사 코드
* 6.1 카드사 코드 참조
* 일반 신용카드 결제 시 고객사 화면에서 카드사를 선택하여 결제 요청시 필수 값 입니다.
install_month   string 2 할부 개월수(00~12)
* 다이렉트 결제 요청시 필수 값 입니다.
*핏콜라보 결제 요청 시 필수 값 입니다.
inst_type 선택적 필수 number   할부 타입
1: 일반,
2: 무이자,
3: 청구할인5%일반
4: 청구할인5%무이자
5: 청구할인7%일반
6: 청구할인7%무이자
7: 청구할인10%일반
8: 청구할인 10%무이자
*핏콜라보 결제 요청 시 필수 값 입니다.
email_flag   string 1 (결제)메일 수신 여부 (Y: 사용, N: 미사용)
*기본 값은 "N: 미사용" 입니다.
email_addr   string 50 (결제)메일 수신 주소
*email_flag 'Y'인 경우에만 사용합니다.
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
custom_parameter   string 1000 고객사 전용 값을 의미하며, 암호화를 권장합니다.
*결제 요청 시 고객사에서 필요한 고객, 주문, 기타 등 정보를 전달하면, 그 값 그대로 고객사 return_url로 반환합니다.
mobile_no 선택적 필수 string 11 사용자 휴대폰 번호
*지역화폐 단일 결제 요청 시 필수 값 입니다.
*가상계좌일 때 선택 값 입니다.
card_purpost_type 선택적 필수 number   카드 용도 유형 (1: 일반 신용카드, 2: 프로모션 일반 신용카드, 3: 비인증 신용카드, 4: 환금성 신용카드)
*기본값은 1
app_return_url 선택적 필수 string 100 일반 신용카드(ISP) 결제 이후 이동할 고객사 앱 스키마 정보
*모바일 앱의 일반 신용카드 결제 요청 시 필수 값 입니다.
app_cancel_url 선택적 필수 string 100 일반 신용카드(ISP) 결제 진행 중단 시 이동할 고객사 앱 스키마 정보
*모바일 앱의 일반 신용카드 결제 요청 시 필수 값 입니다.
전용페이전용
bill_key 선택적 필수 string 50 빌 키 (전용페이 결제수단 등록 시 발급되는 고유 식별 정보)
*전용페이 결제 요청 시 필수 값 입니다.
(단 결제수단이 shpay일때는 필수 아님)
*"전용페이 결제수단 목록 조회 API"의 응답 중 "빌 키" 항목입니다. 예로, 2개의 신용카드, 1개의 은행계좌를 전용페이로 등록한 사용자는 총 3개의 빌 키를 응답 받습니다.
현금영수증전용
cash_rcpt_pub_type   number   현금 영수증 발행 유형 (1: 소득공제용, 2: 지출증빙용)
*해당 요청 파라미터와 현금 영수증 발행 번호 유형, 현금 영수증 발행 번호 파라미터들의 값이 있으면 전용페이 계좌/가상계좌 결제 승인 이후 해당 정보들로 현금영수증을 발행 처리합니다. 만약 해당 요청 값들이 없으면 자진 발급번호로 발행 처리합니다.
cash_rcpt_pub_no_type   number   현금 영수증 발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급 등 기타)
*해당 요청 파라미터와 현금 영수증 발행 유형, 현금 영수증 발행 번호 파라미터들의 값이 있으면 전용페이 계좌/가상계좌 결제 승인 이후 해당 정보들로 현금영수증을 발행 처리합니다. 만약 해당 요청 값들이 없으면 자진 발급번호로 발행 처리합니다.
cash_rcpt_pub_no   string 20 현금 영수증 발행 번호 (*발행 유형 "소득공제"는 휴대폰번호, “지출증빙"은 사업자 번호, 발행 유형 “자진 발급”은 국세청 지정 코드 "010-000-1234”을 발행 번호로 자체 발급 처리)
*해당 요청 파라미터와 현금 영수증 발행 유형, 현금 영수증 발행 번호 유형 파라미터들의 값이 있으면 전용페이 계좌/가상계좌 결제 승인 이후 해당 정보들로 현금영수증을 발행 처리합니다. 만약 해당 요청 값들이 없으면 자진 발급번호로 발행 처리합니다.
◎ 전용페이 카드 단일 결제를 요청하는 경우
{
    "pgcode": "shpaycard",
    "client_id": "o2o",
    "user_id": "test_01",
    "user_name": "테스터01",
    "order_no": "202108311259590001",
    "pay_type”: 1,                                // 단일 결제
    "device_type": 1,
    "amount": 11000,
    "taxfree_amount": 0,
    "tax_amount": 90,
    "product_name": "테스트 상품",
    “param_ispt_hash”:”821b7bf742abfb49c8e535ee9a0801c4e6cefe4d49c9c8209b8c54d5077082f8"
    "email_flag": "Y",
    "email_addr": "bae1222@payletter.com",
    "pay_hash": "dfhuoi892ashiozxui123…”,
    "custom_parameter": "asdfoxuoy12uyisadouydfouayiouf…",
    "return_url": "https://o2odev.shinhan.com/partner/pay/approval",
    "cancel_url": "https://o2odev.shinhan.com/partner/pay/cancel",
    "fail_url": "https://o2odev.shinhan.com/partner/pay/fail",
    "card_purpost_type": 1,                    // 신용카드는 필수 설정
    "bill_key": "hoiu123yox134yauyxf",     // 전용페이 결제수단 등록 시 발급되는 고유 식별 정보
    “cup_return_deposit”: “100” ,            // 컵반환 보증금
    “prepay_amount”: 2000                  // 선불전자지급수단을 사용할 경우 필수 설정
}
                                

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
redirect_url string 1000 (결제용)웹 화면
*PG 웹 화면 접근 후 redirect_url token은 다시 사용할 수 없습니다.

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "redirect_url": "https://devpayapispg.shinhan.com/pgsvc/pay?token=2021083110239001duf.." // (결제 인증용)웹 화면
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

통합결제창용 결제 요청

개인/법인용 통합결제창 결제 호출 용 API 입니다. 최소 승인 금액은 일반카드, 전용페이카드 100원, 계좌이체 1원이며, 해당 금액 미만의 결제 요청은 처리되지 않습니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/request POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
공통(개인/법인)필수영역
pgcode 필수 string 10 결제수단 코드(개인: selpay / 법인: bizselpay)
client_id 필수 string 10 고객사 아이디
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_name 필수 string 20 고객사 사용자(회원) 명
order_no 필수 string 50 고객사 주문번호
pay_type 필수 number   결제 유형 (1: 단일 결제)
device_type 필수 number   기기 유형.
1: 모바일(개인),
2: PC(개인/법인)
amount 필수 number   금액
*컵반환 보증금이 있는 경우 상품금액에 더하여 호출합니다. 예) 총금액 10,000원, 컵반환 보증금 300원 -> amount : 10,300원으로 설정 법인대출연계에 사용될 때는 일시지급일때는 총구매금액(100%), 잔금지급일때는 지원신청금액(70%)
product_name 필수 string 50 (결제)상품 명
param_ispt_hash 필수 string 1000 파라메터 검증 해시
*고객사 요청 파라미터 검증을 위한 sha256 hash 값을 의미하며, "sha256(client_id + user_id + order_no + pay_type + amount + payment API Key)" 조합으로 생성된다.
법인대출연계요청영역 (법인대출연계시 필수)
buyr_bizr_no 선택적 필수 string 10 구매자 사업자 번호
dpst_req_no 선택적 필수 string 8 입금요청번호
clnt_pay_clf_cd 선택적 필수 string 6 결제 구분
SGLPAY: 일시지급(선수금없음)
RMDPAY: 잔금지급(선수금대상)
req_amt 선택적 필수 number 13 지원신청금액(원)
대출금액으로 기본 70% 신한 은행 여신 기준에 맞춰 천원 단위로 절사 처리 필요
(로직 제공, 금액이 안 맞는 경우 처리결과 ‘F’ 리턴, 고객부담금에 나머지 금액 추가)
chrg_amt 선택적 필수 number 13 고객부담금액(원)
tot_tx_amt 선택적 필수 number 13 총구매금액(원)
pay_amt 선택적 필수 number 13 결제요청금액(원)
일시지급일때는 총구매금액(100%), 잔금지급일때는 지원신청금액(70%)
clnt_tx_clf_cd 선택적 필수 string 6 거래 구분 (고객사거래구분코드)
고객사결제구분코드 (GNR: 일반거래 / IMPL: 전용거래)
cncl_yn 선택적 필수 string 1 취소 여부
주문취소 건인 경우 취소 여부(‘Y’)와 PK정보(사업자 번호, 입금요청번호)만 전송
clnt_tx_ymd 선택적 필수 string 8 낙찰일 (고객사 거래일자)
seller_name 선택적 필수 string 20 판매사명
플랫폼이 판매사인 경우 플랫폼명
오픈마켓 : 판매자
email_addr   string 50 고객이메일
고객의 이메일 주소입니다. 결제 결과를 알려줄 때 사용합니다
mobile_no   string 13 고객휴대폰번호
고객의 휴대폰 번호입니다. 가상계좌 입금 안내가 전송되는 번호 입니다.
개인부가영역
taxfree_amount   number   비과세 금액
*금액이 모두 비과세액인 경우, amount, taxfree_amount 모두 동일한 값을 설정하여야 합니다.
예) 금액 1,000원 모두 비과세 금액인 경우
→ amount, taxfree_amount 모두 1,000원 설정
*금액 중 일부가 비과세 금액인 경우, 해당 금액만 taxfree_amount에 설정하여야 합니다.
예) (결제 요청)금액 1,000원중 비과세 금액이 100원인 경우
→ amount 1,000원, taxfree_amount 100원 설정
tax_amount   number   부가세 금액
*요청 파라미터 값이 없으면,
((amount - taxfree_amount - cup_return_deposit) / 11) 계산식을 적용, 소수점 이하 반올림으로 자동 계산합니다.
cup_return_deposit   number   컵반환보증금
email_flag   string 1 (결제)메일 수신 여부 (Y: 사용, N: 미사용)
*기본 값은 "N: 미사용" 입니다.
email_addr   string 50 (결제)메일 수신 주소
*email_flag 'Y'인 경우에만 사용합니다.
custom_parameter   string 1000 고객사 전용 값을 의미하며, 암호화를 권장합니다.
*결제 요청 시 고객사에서 필요한 고객, 주문, 기타 등 정보를 전달하면, 그 값 그대로 고객사 return_url로 반환합니다.
mobile_no   string 11 사용자 휴대폰 번호
card_purpost_type 선택적 필수 number   카드 용도 유형 (1: 일반 신용카드, 2: 프로모션 일반 신용카드, 3: 비인증 신용카드, 4: 환금성 신용카드)
*기본값은 1
통합결제창(개인)전용
user_ci 필수 string 88 고객사 사용자 CI(Connecting information)
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
app_return_url 선택적 필수 string 100 일반 신용카드(ISP) 결제 이후 이동할 고객사 앱 스키마 정보
*모바일 앱의 일반 신용카드 결제 요청 시 필수 값 입니다.
app_cancel_url 선택적 필수 string 100 일반 신용카드(ISP) 결제 진행 중단 시 이동할 고객사 앱 스키마 정보
*모바일 앱의 일반 신용카드 결제 요청 시 필수 값 입니다.
return_url 필수 string 255 결제 인증 결과 수신 및 결제 승인 API를 호출하는 고객사 URL
cancel_url 필수 string 255 결제 취소 시 이동하는 고객사 URL
fail_url 필수 string 255 결제 실패 시 이동하는 고객사 URL
현금영수증(개인)전용
cash_rcpt_pub_type   number   현금 영수증 발행 유형 (1: 소득공제용, 2: 지출증빙용)
*해당 요청 파라미터와 현금 영수증 발행 번호 유형, 현금 영수증 발행 번호 파라미터들의 값이 있으면 전용페이 계좌/가상계좌 결제 승인 이후 해당 정보들로 현금영수증을 발행 처리합니다. 만약 해당 요청 값들이 없으면 자진 발급번호로 발행 처리합니다.
cash_rcpt_pub_no_type   number   현금 영수증 발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급 등 기타)
*해당 요청 파라미터와 현금 영수증 발행 유형, 현금 영수증 발행 번호 파라미터들의 값이 있으면 전용페이 계좌/가상계좌 결제 승인 이후 해당 정보들로 현금영수증을 발행 처리합니다. 만약 해당 요청 값들이 없으면 자진 발급번호로 발행 처리합니다.
cash_rcpt_pub_no   string 20 현금 영수증 발행 번호 (*발행 유형 "소득공제"는 휴대폰번호, “지출증빙"은 사업자 번호, 발행 유형 “자진 발급”은 국세청 지정 코드 "010-000-1234”을 발행 번호로 자체 발급 처리)
*해당 요청 파라미터와 현금 영수증 발행 유형, 현금 영수증 발행 번호 유형 파라미터들의 값이 있으면 전용페이 계좌/가상계좌 결제 승인 이후 해당 정보들로 현금영수증을 발행 처리합니다. 만약 해당 요청 값들이 없으면 자진 발급번호로 발행 처리합니다.
◎ 개인용 통합결제창 결제를 요청하는 경우
{
    "pgcode": "selpay",
    "client_id": "o2o",
    "user_id": "test_01",
    "user_name": "테스터01",
    "order_no": "202108311259590001",
    "pay_type”: 1,    // 단일 결제
    "device_type": 1,
    "amount": 11000,
    "product_name": "테스트 상품",
    "return_url": "https://o2odev.shinhan.com/partner/pay/approval",
    "cancel_url": "https://o2odev.shinhan.com/partner/pay/cancel",
    "fail_url": "https://o2odev.shinhan.com/partner/pay/fail",
    “param_ispt_hash”:”821b7bf742abfb49c8e535ee9a0801c4e6cefe4d49c9c8209b8c54d5077082f8"
    "taxfree_amount": 0,
    "tax_amount": 90,
    "email_flag": "Y",
    "email_addr": "bae1222@payletter.com",
    "pay_hash": "dfhuoi892ashiozxui123…”,
    "custom_parameter": "asdfoxuoy12uyisadouydfouayiouf…",
    "card_purpost_type": 1,                  // 일반 신용카드는 필수 설정
    "app_return_url": "scheme://path",    // 모바일 앱 환경의 일반 신용카드는 필수 설정
    "app_cancel_url": "scheme://path",    // 모바일 앱 환경의 일반 신용카드는 필수 설정
    “cup_return_deposit”: “100”,         // 컵반환 보증금
    “card_cpny_cd”: “S005”,               // 고객사 화면에서 카드사를 선택하여 결제요청하는 경우 필수 설정
}
                                
◎ 법인용 통합결제창 결제를 요청하는 경우
{
    "pgcode": "bizselpay",
    "client_id": "o2o",
    "user_id": "test_01",
    "user_name": "테스터01",
    "order_no": "202108311259590001",
    "pay_type”: 1,             // 단일 결제
    "device_type": 2,         // 법인은 PC전용
    "amount": 11000,
    "taxfree_amount": 0,
    "tax_amount": 1000,
    "product_name": "테스트 상품",
    “param_ispt_hash”:”821b7bf742abfb49c8e535ee9a0801c4e6cefe4d49c9c8209b8c54d5077082f8"
    "email_flag": "Y",
    "email_addr": "bae1222@payletter.com",
    "pay_hash": "dfhuoi892ashiozxui123…”,
    "custom_parameter": "asdfoxuoy12uyisadouydfouayiouf…",
    “cup_return_deposit”: “100” ,            // 컵반환 보증금,
    “buyr_bizr_no”:”1234567890”,
    “clnt_pay_clf_cd”:”20240208”,
    “req_amt”: 700000000,
    “chrg_amt”: 300000000,
    “tot_tx_amt”: 1000000000,
    “pay_amt”: 1000000000,
    “clnt_tx_clf_cd”:”IMPL”,
    “cncl_yn”:”N”,
    “clnt_tx_ymd”:”20240601”,
    “seller_name”:”테스트판매사”
}
                                

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
redirect_url string 1000 (결제용)웹 화면
*PG 웹 화면 접근 후 redirect_url token은 다시 사용할 수 없습니다.

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "redirect_url": "https://devpayapispg.shinhan.com/pgsvc/pay?token=2021083110239001duf.." // (결제 인증용)웹 화면
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

기업통합결제 결제창 호출

1.Html 내 script tag 추가
<script src="https://payspg.shinhan.com/businessPayment/unifiedPay/script"></script>

2.통합결제창 결제요청 응답값 (redirect_url) 으로 팝업 호출
ShinhanBizPay.openPopup(result.redirect_url, function(retCode, retMessage) {
    if(retCode == ShinhanBizPay.RES_SUCCESS) {
        console.log(“성공”);
    } else {
        console.log("실패”, retMessage);
    }
});
                                

결제 화면 출력 (고객사 호출)

결제 요청 API의 redirect_url 을 이용하여, 고객사 사용자에게 PG 웹 화면을 출력합니다.
일반결제/비인증결제/전용페이 일 경우와 가상계좌일 경우 응답 파라미터가 달라집니다.

화면 요청

Redirect URL HTTP 메서드
redirect_url GET

결제 인증 결과 (PG 호출)

고객사 사용자의 PG 통합결제 결제하기(인증) 완료 이후, 고객사의 return_url POST 데이터로 주문 및 승인 토큰 정보가 전달됩니다. return_url은 결제 요청 API에 전달한 파라미터 값을 의미합니다.

화면 이동

Redirect URL HTTP 메서드
return_url POST

POST 데이터

파라미터 자료형 크기 설명
order_no string 50 (일반결제) 고객사 주문번호
custom_parameter string 1000 (일반결제) 고객사 전용 값
confirm_token string 50 (일반결제) 승인 토큰
escr_yn Char 1 (일반결제/가상계좌) 에스크로여부
* 고객사가 에스크로 사용 가능하고 PG에서 에스크로여부를 선택 한 경우
tid String 50 (가상계좌) 거래번호
bank_nm String 100 (가상계좌) 입금은행
user_nm string 20 (가상계좌) 예금주명
vald_dt string 8 (가상계좌) 입금기한(YYYYMMDD)
gods_nm string 100 (가상계좌) 상품명
email string 20 (가상계좌) 이메일
user_tel_no string 20 (가상계좌) 사용자 전화번호
pay_amt number   (가상계좌) 결제금액
ret_code number   (가상계좌) 응답 코드
ret_msg string 100 (가상계좌) 응답 메시지
HTTP 1.1 200 OK
{
    "order_no": "202108310937510001",
    "custom_parameter": "auoh1238u123uy...",
    "confinm_token": "aaaaaa.bbbbbb.ccccc"
    “escr_yn”:”N”
    “tid”:”거래번호”
    "bank_nm": "입금은행",
    "user_nm": "예금주명",
    "vald_dt": "20240909"
    "gods_nm": "상품명"
    "email": "aaaaaa@ccc.com"
    "user_tel_no": "01012345678"
    "pay_amt": "46000"
    "ret_code": 0,
    "ret_msg": "OK"
}
                                

결제 승인

고객사 결제 승인 용 API 입니다. "결제 인증 결과 (UI)"로 이동 후 30분(토큰 만료) 안에 요청하여야 합니다.
전용페이 계좌이체는 전용페이 사용자 휴대폰 번호(본인인증 결과정보)로 현금영수증을 자동 발행합니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/payments/confirm POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
order_no 필수 string 50 고객사 주문번호
confirm_token 필수 string 50 (결제) 승인 토큰
ip_addr 필수 string 50 아이피 주소
(*사용자 아이피 주소 수집 시 결제 요청 이력 확인이 용이함)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
pay_type number   결제 유형 (1: 단일 결제, 2: 복합 일반, 3: 복합 전용)
order_no string 50 고객사 주문번호
product_name string 50 (결제)상품 명
user_id string 50 고객사 사용자(회원) 아이디
user_name string 20 고객사 사용자(회원) 명
amount number   (결제 요청)금액
discount_amount number   할인 금액(신용카드사 프로모션 할인 금액)
*신용카드, 계좌이체, 간편결제 해당
taxfree_amount number   비과세 금액
*신용카드, 계좌이체, 간편결제 해당
tax_amount number   부가세 금액
*신용카드, 계좌이체, 간편결제 해당
tid string 50 (결제)거래 번호
pay_ispt_hash string 1000 결제 인증 해시
*PG의 결제 승인 응답 파라미터 검증을 위한 sha256 hash 값을 의미하며, "sha256(user_id + amount + tid + payment API Key)" 조합으로 생성된다.
tx_date string 19 거래 일시(YYYY-MM-DD HH:MM:SS)
reserved1 string 200 가맹점 예약 필드
1.계좌 상품코드
신용카드(pay_info)
card_cpny_cd string 4 카드사 코드
card_name string 20 카드 종류
card_no string 18 카드 번호 (*전용페이 카드결제 시 전달되는 중간 6자리 마스킹 카드번호)
card_aprv_no string 50 카드 승인 번호
install_month string 2 할부 개월 수
card_pay_amt number   카드 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
zeropay_pay_amt number   제로페이 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
zeropay_tid string 50 제로페이 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
seoulpay_pay_amt number   서울페이 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
seoulpay_tid string 50 서울페이 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
locpay_pay_amt number   지역화폐 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
locpay_tid string 50 지역화폐 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
list JSON
Array
  -
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_cd string 20 상품권 코드
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_name string 50 상품권 명
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_amt number   상품권 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
계좌이체(pay_info)
bank_cd string 3 은행 코드
bank_name string 20 은행 명
bank_acct_no string 14 은행 계좌 번호 (*전용페이 계좌이체 시 전달되는 앞 3자리, 맨 뒤 3자리 외 마스킹 계좌번호)
bank_acct_pay_amt number   은행 계좌 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
zeropay_pay_amt number   제로페이 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
zeropay_tid string 50 제로페이 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
seoulpay_pay_amt number   서울페이 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
seoulpay_tid string 50 서울페이 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
locpay_pay_amt number   지역화폐 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
locpay_tid string 50 지역화폐 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
list JSON Array   -
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_cd string 20 상품권 코드
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_name string 50 상품권 명
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_amt number   상품권 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
cash_rcpt_ret_code number   현금 영수증 응답 코드
cash_rcpt_ret_msg string 100 현금 영수증 응답 메시지
cash_rcpt_pub_tid string 50 (PG 발행취소 · 재발행 요청용)현금 영수증 발행 거래번호
cash_rcpt_aprv_no string 50 현금 영수증 승인 번호
cash_rcpt_pub_type number   현금 영수증 발행 유형 (1: 소득공제용, 2: 지출증빙용)
cash_rcpt_pub_clf_type number   현금 영수증 발행 구분 유형(1: 구매자발급, 2: 자진발급)
cash_rcpt_pub_no_type number   현금 영수증 발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급)
cash_rcpt_pub_no string 20 현금 영수증 발행 번호 (소득공제용 휴대폰번호 또는 지출증빙용 사업자 번호 또는 자진 발급용 국세청 지정 코드 010-000-1234 등)
cash_rcpt_amt number   현금 영수증 발행 금액
선물쏨 금액이 있는 경우(pay_info)
cash_rcpt_ret_code number   현금 영수증 응답 코드
cash_rcpt_ret_msg string 100 현금 영수증 응답 메시지
cash_rcpt_pub_tid string 50 (PG 발행취소 · 재발행 요청용)현금 영수증 발행 거래번호
cash_rcpt_aprv_no string 50 현금 영수증 승인 번호
cash_rcpt_pub_type number   현금 영수증 발행 유형 (1: 소득공제용, 2: 지출증빙용)
cash_rcpt_pub_clf_type number   현금 영수증 발행 구분 유형(1: 구매자발급, 2: 자진발급)
cash_rcpt_pub_no_type number   현금 영수증 발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급)
cash_rcpt_pub_no string 20 현금 영수증 발행 번호 (소득공제용 휴대폰번호 또는 지출증빙용 사업자 번호 또는 자진 발급용 국세청 지정 코드 010-000-1234 등)
cash_rcpt_amt number   현금 영수증 발행 금액
지역화폐(서울페이) (pay_info)
list JSON Array   -
gfct_cd string 20 상품권 코드
gfct_name string 50 상품권 명
gfct_amt number   상품권 금액
간편결제 (pay_info)
primary_pymt_cd string 10 CARD : 카드, BANK : 계좌, MONEY : 머니
crcd_cpny_cd string 4 카드사 코드
*카드 결제인 경우
card_name string 20 카드 종류
*카드 결제인 경우
card_no string 18 카드 번호 (*마스킹 처리)
*카드 결제인 경우
card_aprv_no string 50 카드 승인 번호
*카드 결제인 경우
install_month string 2 할부 개월 수
*카드 결제인 경우
bank_cd string 3 은행 코드
*계좌 결제인 경우
bank_name string 20 은행 명
*계좌 결제인 경우
bank_acct_no string 14 은행 계좌 번호 (*마스킹 처리)
*계좌 결제인 경우
total_pay_amount number   간편결제 총 결제금액
구매자 결제금액+할인금액(discount_amount)
apply_pay_amount number   구매자 결제 금액
주 결제 수단 결제금액+포인트/머니 결제금액+기프트 카드 결제금액
primary_pay_amount number   주 결제 수단 결제금액
point_pay_amount number   포인트/머니 결제금액
gift_card_amount number   기프트 카드 결제금액
smp_discount_amount number   간편결제 할인금액
zeropay_pay_amt number   제로페이 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
zeropay_tid string 50 제로페이 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
seoulpay_pay_amt number   서울페이 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
seoulpay_tid string 50 서울페이 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
locpay_pay_amt number   지역화폐 결제 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
locpay_tid string 50 지역화폐 거래번호
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
list JSON Array   -
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_cd string 20 상품권 코드
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_name string 50 상품권 명
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
gfct_amt number   상품권 금액
*복합 결제용 응답 입니다. 단일 결제 응답 데이터에는 포함되지 않습니다.
cash_rcpt_ret_code number   현금 영수증 응답 코드
cash_rcpt_ret_msg string 100 현금 영수증 응답 메시지
cash_rcpt_pub_tid string 50 (PG 발행취소 · 재발행 요청용)현금 영수증 발행 거래번호
cash_rcpt_aprv_no string 50 현금 영수증 승인 번호
cash_rcpt_pub_type number   현금 영수증 발행 유형 (1: 소득공제용, 2: 지출증빙용)
cash_rcpt_pub_clf_type number   현금 영수증 발행 구분 유형(1: 구매자발급, 2: 자진발급)
cash_rcpt_pub_no_type number   현금 영수증 발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급)
cash_rcpt_pub_no string 20 현금 영수증 발행 번호 (소득공제용 휴대폰번호 또는 지출증빙용 사업자 번호 또는 자진 발급용 국세청 지정 코드 010-000-1234 등)
cash_rcpt_amt number   현금 영수증 발행 금액
npoint_cash_amount number   포인트/머니 결제 금액중 현금 영수증 발행 금액
*네이버 페이인 경우.
gift_card_cash_amount number   기프트카드 결제 금액중 현금 영수증 발행 금액
*네이버 페이인 경우.
primary_cash_amount number   현금성 주 결제 수단 결제 금액중 현금 영수증 발행 금액
*네이버 페이인 경우.

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    “pay_type": 2,     // 결제 유형 (2: 복합 일반)
    "order_no": "202108311259590001",
    "product_name": "테스트 상품",
    "user_id": "test01",
    "user_name": "test01",
    "amount": "1000",
    "discount_amount": "100",
    "taxfree_amount": "0",
    "tax_amount": "90",
    "tid": "202108311259590006",
    "install_month": "00",
    "pay_ispt_hash": "941365C04218FF129B790AB1244F8A012BA64E872C3CB8E0C9978A2F76C202F0",
    "tx_date": "2021-08-31 12:59:59",
    "pay_info": [
        {
            … …
    }]
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

결제 취소

고객사 결제 취소 용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/cancel POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
tid 필수 string 50 (결제)거래 번호
amount 필수 number   (취소)금액
cncl_rsn 필수 string 100 취소 사유
ip_addr 필수 string 50 (고객사 사용자)아이피 주소
bank_cd 선택 String 3 (가상계좌용)은행코드(가상계좌)
bank_acct_no 선택 String 14 (가상계좌용)은행 계좌 번호 (환불받을 계좌번호)
bank_name 선택 String 20 (가상계좌용)계좌주명

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
tid string 50 (결제)거래 번호
cid string 50 (취소)승인 번호
amount number   (취소)금액
tx_date string 19 (취소)거래 일시(YYYY-MM-DD HH:MM:SS)

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "tid" :"tpay_test202108311259590002",
    "cid":"123456",
    "amount":1000,
    "tx_date":"2021-08-31 15:01:07"
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

부분 취소

고객사 결제 부분 취소 용 API 입니다. PG사 프로모션 결제 건의 경우, 프로모션 기준 금액(예: 5천원 이상일 때 1천원 할인)보다 부분 취소 금액이 작으면 취소 가능 잔액이 전체 처리됩니다. 예로, 1천원 프로모션 할인 금액이 적용된 1만원 결제 건을, 5천원씩 2회 부분 취소 요청하면, 첫번째 부분 취소는 5천원 처리, 두번째 부분 취소는 4천원이 처리됩니다. (단, 컵반환보증금(cup_return_deposit) 포함된 결제인 경우에는 부분 취소 불가)

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/cancel/partial POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
tid 필수 string 50 (결제)거래 번호
amount 필수 number   (부분 취소)금액
taxfree_amount   number   비과세 금액
tax_amount   number   부가세 금액
*요청 파라미터 값이 없으면, ((amount - taxfree_amount) / 11) 계산식을 적용, 소수점 이하 반올림으로 자동 계산한다.
cncl_rsn 필수 string 100 취소 사유
ip_addr 필수 string 50 (고객사 사용자)아이피 주소

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
tid string 50 (결제)거래 번호
cid string 50 (취소)승인 번호
amount number   (취소)금액
tx_date string 19 (취소)거래 일시(YYYY-MM-DD HH:MM:SS)

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "tid" :"tpay_test202108311259590002",
    "cid":"123456",
    "amount":1000,
    "tx_date":"2021-08-31 15:01:07"
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

전용페이 관리화면 요청

고객사 사용자의 전용페이 관리화면(전용페이 결제수단 등록, 전용페이 결제 비밀번호 수정 · 생략 · 사용, 전용페이 결제수단 삭제, 머니 사용 전용페이 비밀번호 인증 등) 요청 용 API 입니다. HTTP POST 메서드는 전용페이 결제수단 등록, 머니 사용 전용페이 비밀번호 인증 화면을, PUT 메서드는 전용페이 결제 비밀번호 수정, 비밀번호 생략 화면을, DELETE 메서드는 전용페이 결제수단 삭제 화면을 redirect_url 로 응답합니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/o2opay/manage POST결제수단 등록 Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/modify POST비밀번호 수정 Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/pwd-skip POST비밀번호 생략 Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/pwd-use POST비밀번호 사용 Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/delete POST결제수단 삭제 Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/pwd-auth POST머니 사용
POST전용 페이
POST비밀번호 인증
Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/control POST결제수단 관리 Authorization: SPGKEY {API Key} payment
v1.0/payments/o2opay/manage/delete-user POST사용자 삭제 Authorization: SPGKEY {API Key} payment

전용페이 결제수단 등록 요청 데이터

파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_name 필수 string 20 고객사 사용자(회원) 명
user_ci 필수 string 88 고객사 사용자 CI(Connecting information)
*전용페이 최초 사용자를 위한 본인인증 시, 고객사에서 전달한 user_ci와 휴대폰 본인인증 결과가 다를 경우, 전용페이 회원 등록이 불가합니다.
device_type 필수 number   (결제 요청)기기 유형 (1: 모바일, 2: PC)
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
chnl_code   string 10 땡겨요앱을 호출하는 채널에 따른 코드 정의
param_ispt_hash 필수 string 1000 파라메터 검증 해시
*고객사 요청 파라미터 검증을 위한 sha256 hash 값을 의미하며, "sha256(client_id + user_id + user_ci + payment API Key)" 조합으로 생성된다.
return_url 필수 string 100 전용페이 결제수단 등록 이후 이동하는 고객사 URL
cancel_url 필수 string 100 전용페이 결제수단 등록 취소 시 이동하는 고객사 URL
fail_url 필수 string 100 전용페이 결제수단 등록 실패 시 이동하는 고객사 URL

전용페이 결제 비밀번호 수정 · 생략 및 머니 사용 비밀번호 인증 요청 데이터

전용페이 결제 비밀번호 수정, 결제 비밀번호 생략, 머니 사용 전용페이 비밀번호 인증 화면용 요청 데이터 정의 입니다.

파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용페이 사용자 번호(4.12.2. 등록 결과 POST 데이터의 전용 페이 사용자 번호)
device_type 필수 number   (결제 요청)기기 유형 (1: 모바일, 2: PC)
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
return_url 필수 string 100 요청 처리 이후 이동하는 고객사 URL
cancel_url 필수 string 100 요청 처리 취소 시 이동하는 고객사 URL
fail_url 필수 string 100 요청 처리 실패 시 이동하는 고객사 URL

전용페이 결제 비밀번호 사용 요청 데이터

비밀번호 사용은 웹 화면이 필요 없는 API 이므로, return_url, cancel_url, fail_url 파라미터가 생략됩니다.

파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용페이 사용자 번호(4.12.2. 등록 결과 POST 데이터의 전용 페이 사용자 번호)

전용페이 결제수단 삭제 요청 데이터

파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용페이 사용자 번호(4.12.2. 등록 결과 POST 데이터의 전용 페이 사용자 번호)
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
bill_key 필수 string 50 빌 키 (전용페이 결제수단 등록 시 발급되는 고유 식별 정보)
*"전용페이 결제수단 목록 조회 API"의 응답 중 "빌 키" 항목입니다. 예로, 2개의 신용카드, 1개의 은행계좌를 전용페이로 등록한 사용자는 총 3개의 빌 키를 응답 받습니다.
device_type 필수 number   (결제 요청)기기 유형 (1: 모바일, 2: PC)
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
return_url 필수 string 100 전용페이 결제수단 삭제 이후 이동하는 고객사 URL
cancel_url 필수 string 100 전용페이 결제수단 삭제 취소 시 이동하는 고객사 URL
fail_url 필수 string 100 전용페이 결제수단 삭제 실패 시 이동하는 고객사 URL

전용페이 결제수단 관리 요청 데이터

파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
user_ci 필수 string 88 고객사 사용자 CI(Connecting information)
*전용페이 최초 사용자를 위한 본인인증 시, 고객사에서 전달한 user_ci와 휴대폰 본인인증 결과가 다를 경우, 전용페이 회원 등록이 불가합니다.
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_name 필수 string 20 고객사 사용자(회원) 명
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
(전용페이 결제수단 : shpay)
device_type 필수 number   (결제 요청)기기 유형 (1: 모바일, 2: PC)
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
return_url 필수 string 100 전용페이 결제수단 관리 이후 이동하는 고객사 URL
cancel_url 필수 string 100 전용페이 결제수단 관리 취소 시 이동하는 고객사 URL
fail_url 필수 string 100 전용페이 결제수단 관리 실패 시 이동하는 고객사 URL

전용페이 사용자 삭제 요청 데이터

고객사 회원탈퇴 등의 경우, PG의 전용페이 사용자 삭제를 요청할 수 있는 API 입니다.

파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용페이 사용자 번호
device_type 필수 number   (결제 요청)기기 유형 (1: 모바일, 2: PC)
main_color   string 6 PG 결제 화면 메인 색상 코드
*기본값은 FFFFFF
point_color   string 6 PG 결제 화면 포인트 색상 코드
*기본값은 5379FF
return_url 필수 string 100 전용페이 결제수단 관리 이후 이동하는 고객사 URL
cancel_url 필수 string 100 전용페이 결제수단 관리 취소 시 이동하는 고객사 URL
fail_url 필수 string 100 전용페이 결제수단 관리 실패 시 이동하는 고객사 URL

응답 데이터

"전용페이 결제 비밀번호 사용" 처리 성공

파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지

이외 전용페이 관리화면 요청 처리 성공

파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
redirect_url string 1000 (전용페이 관리용)웹 화면
*PG 웹 화면 접근 후 redirect_url token은 다시 사용할 수 없습니다.

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "redirect_url": "https://devpayapispg.shinhan.com/pgsvc/o2opay...?token=202100235959.." // (전용페이 관리용)웹 화면
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

전용페이 관리화면 출력 (고객사 호출)

전용페이 관리화면 요청 API의 redirect_url 을 이용하여, 고객사 사용자에게 PG 웹 화면을 출력합니다.

화면 요청

Redirect URL HTTP 메서드
redirect_url GET

전용페이 관리화면 처리결과 (PG 호출)

고객사 사용자의 전용페이 관리화면 처리 이후, 고객사의 return_url POST 데이터로 결과 정보가 전달됩니다. return_url은 전용페이 관리화면 요청 API에 전달한 파라미터 값을 의미합니다.

화면 이동

Redirect URL HTTP 메서드
return_url POST

결제수단 등록 결과 POST 데이터

파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
pgcode string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
bill_key string 50 빌 키 (전용페이 결제수단 등록 시 발급되는 고유 식별 정보)
xclv_pay_user_no number   전용 페이 사용자 번호
{
    "ret_code": 0,
    "ret_msg": "OK",
    "pgcode": "shpaycard",
    "bill_key": "auoh1238u123uy...",
    “xclv_pay_user_no”: 1
}
                                

머니 사용 비밀번호 인증 결과 POST 데이터

파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
ispt_hash string 1000 인증 해시
*PG의 전용페이 비밀번호 인증 응답 파라미터 검증을 위한 sha256 hash 값을 의미하며, "sha256(client_id + xclv_pay_user_no + ret_code)" 조합으로 생성된다.
{
    "ret_code": 0,
    "ret_msg": "OK",
    "ispt_hash": "auoh1238u123uy..."
}
                                

이외 전용페이 관리 화면 처리 결과 POST 데이터

전용페이 결제 비밀번호 수정, 비밀번호 생략, 결제수단 삭제, 머니 사용 전용페이 비밀번호 인증 결과에 대한 POST 데이터를 전달합니다. 비밀번호 사용은 웹 화면이 필요 없는 API 이므로, 별도 POST 데이터가 전달되지 않습니다.

파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지

처리 성공

{
    "ret_code": 0,
    "ret_msg": "OK"
}
                                

처리 실패

{
    "ret_code": 999,
    "ret_msg": "user ci is missing or incorrect."
}
                                

전용페이 결제 비밀번호 사용 여부 조회

PG 전용페이 사용자의 결제 비밀번호 사용 여부 조회를 요청할 수 있는 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/o2opay/pwd-use GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용 페이 사용자 번호

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
pwd_use_yn char 1 비밀번호 사용 여부 (N: 사용 안 함, Y: 사용)

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "pwd_use_yn": "Y"
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

전용페이 결제수단 삭제

PG의 전용페이 결제수단 삭제를 요청할 수 있는 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/o2opay/payment-method POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용 페이 사용자 번호
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
bill_key 필수 string 50 빌 키 (전용페이 결제수단 등록 시 발급되는 고유 식별 정보)
*"전용페이 결제수단 목록 조회 API"의 응답 중 "빌 키" 항목입니다.
예로, 2개의 신용카드, 1개의 은행계좌를 전용페이로 등록한 사용자는 총 3개의 빌 키를 응답 받습니다.

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK"
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

전용페이 사용자 삭제

고객사 회원탈퇴 등의 경우, PG의 전용페이 사용자 삭제를 요청할 수 있는 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/o2opay/user/secession POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용 페이 사용자 번호

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK"
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

전용페이 결제수단 목록 조회

고객사 사용자의 전용페이 결제수단 목록 조회 용 API 입니다. 고객사 사용자의 최근 등록 순 전용페이 신용카드, 계좌 목록을 응답합니다. 즐겨찾기 결제수단은 등록 순과 관계없이 가장 먼저 조회됩니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/info/payment-method-list GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용 페이 사용자 번호

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
client_id string 10 고객사 아이디
user_id string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
pwd_use_yn char 1 비밀번호 사용 여부 (N: 사용 안 함, Y: 사용)
new_member_yn char 1 신규 회원 여부(N:기존회원, Y:신규 회원)
total_count number   (조회)총 수
list JSON Array   -
pgcode string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
bill_key string 50 전용페이 인증 · 등록 후 발급되는 PG의 고유 식별 정보
instt_name string 50 기관 명
*전용페이 카드사 명 또는 은행 명 입니다.
instt_pay_no string 50 기관 결제 번호
*마스킹 된 전용페이 카드 번호 또는 계좌 번호 입니다.
image_url string 100 전용페이 결제수단 별 이미지 URL
fav_yn char 1 즐겨찾기 여부(N:아니오, Y:예)
product_code string 6 상품 코드
*전용페이 신한카드 상품 코드 입니다.
bank_card_cd string 4 카드사 & 기관 코드
*6.1 카드사 코드, 6.2 기관 코드 참조
instt_service_stat_type number   기관 서비스 상태 타입(1: 정상, 2: 서비스불가)
* 해당 서비스 상태 코드가 정상이 아닌경우 선택불가 처리
instt_service_noti_msg string   기관 서비스 메시지
reserved1 string 200 가맹점 예약 필드
1.계좌 상품코드

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "client_id": "o2o",
    "user_id": "test_01",
    "pwd_use_yn": "Y",
    "total_count": 3,
    "list": [
        {
            "pgcode": "shpaycard",
            "bill_key": "aadhouzxx22389…”,
            "instt_name”: "신한카드",
            "instt_pay_no”: "123***9001",
            "image_url": "https://...",
            "fav_yn": “Y”,
            “product_code”: “BJBBE4”,
            “bank_card_cd”: “S005”,
            “instt_service_stat_type”: “1”,    //정상
            “instt_service_noti_msg”: “”
        },
        {
            "pgcode": "shpaybank",
            "bill_key": "8jkmn23oyufoeho17…”,
            "instt_name”: "신한은행",
            "instt_pay_no”: "123***9001",
            "image_url": "https://...",
            "fav_yn": “N”,
            “bank_card_cd”: “088” ,
            “instt_service_stat_type”: “2”,       //서비스불가
            “instt_service_noti_msg”: “신한은행 서비스 장애”
        }
    ]
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

환불용 전용페이 계좌 조회

머니 환불용 전용페이 계좌 조회 API 입니다. 고객사 사용자의 환불용 전용페이 계좌정보(단건)를 응답합니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/payments/o2opay/pybk-acct GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
xclv_pay_user_no 필수 number   전용 페이 사용자 번호
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
bill_key 필수 string 50 고객사 사용자가 선택한 환불용 계좌의 빌 키
(전용페이 인증 · 등록 후 발급되는 PG의 고유 식별 정보)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
instt_cd string 50 기관 코드 (6. 기관 코드 참조)
acct_no string 50 계좌 번호

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "instt_cd": "088",
    "acct_no": "123456789..."
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

현금영수증 발행(발행 취소)

고객사가 현금영수증 발급을 별도 요청(전용페이 계좌이체로 충전한 머니 사용 시 등)할 수 있는 API 입니다.

API 요청

{tid}는 현금영수증 발급을 요청하는 고객사의 고유한 거래번호(또는 주문번호 등)을 의미합니다.

URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/cashreceipt/issue/{tid} POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
pub_type 필수 number   발행 유형(1: 소득공제용, 2: 지출증빙용)
tx_type 필수 number   거래 유형 (1: 승인, 2: 취소)
pub_no_type 필수 number   발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급 등 기타)
pub_no   string 20 발행 번호
(*발행 유형 "소득공제"는 휴대폰번호, “지출증빙"은 사업자 번호, 발행 유형 “자진 발급”은 국세청 지정 코드 "010-000-1234”을 발행 번호로 자체 발급 처리)
tx_amount 필수 number   (현금영수증 발행 요청)거래 금액
tax_amount   number   부가세 금액 (미 입력 시 0 원)
fee_amount   number   수수료 금액 (미 입력 시 0 원)
org_pub_tid   string 50 (현금영수증 취소 또는 재 발행 요청 시)원 발행 거래번호
cncl_rsn 선택적 필수 string 100 취소 사유
*현금영수증 발행 취소 시에만 필수 값
cncl_cd 선택적 필수 number   취소 사유코드 (1: 승인취소, 2: 오류취소)
pub_req_date   string 10 현금영수증 발행요청일자(YYYY-MM-DD)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
pub_tid string 50 (PG 발행취소 · 재발행 요청용)발행 거래번호
aprv_no string 50 (현금영수증)승인 번호
pub_type number   발행 유형 (1: 소득공제용, 2: 지출증빙용)
pub_clf_type number   발행 구분 유형 (1: 구매자발급, 2: 자진발급)
pub_no string 20 발행 번호 (소득공제용 휴대폰번호 또는 지출증빙용 사업자 번호 또는 자진 발급용 국세청 지정 코드 010-000-1234 등)

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "pub_tid": "20210831duahuhwqyjdshlhfkljaajhflasdfuoiwueyo1uyde" // 발행 거래번호
    “aprv_no”; “13341477”
    “pub_type”: 1
    “pub_clf_type”: 1
    “pub_no”: “010-000-1234”
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

현금영수증 발행 확인

고객사 사용자의 PG 현금영수증 발행확인 용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/cashreceipt/issue-info GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
tid 필수 string 50 고객사의 고유한 거래번호(또는 주문번호 등)
tx_type 필수 number   거래 유형 (1: 승인, 2: 취소)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
pub_tid string 50 (PG 발행취소 · 재발행 요청용)발행 거래번호
pub_type number   발행 유형(1: 소득공제용, 2: 지출증빙용)
pub_clf_type number   발행 구분 유형 (1: 구매자발급, 2: 자진발급)
pub_no_type number   발행 번호 유형 (1: 휴대폰번호, 2: 사업자번호, 3: 자진발급 등 기타)
pub_no string 20 발행 번호
(*발행 유형 "소득공제"는 휴대폰번호, “지출증빙"은 사업자 번호, 발행 유형 “자진 발급”은 국세청 지정 코드 "010-000-1234”을 발행 번호로 자체 발급 처리)
tx_type number   거래 유형 (1: 승인, 2: 취소)
tx_amount number   (현금영수증 발행 요청)거래 금액
aprv_no string 50 (현금영수증)승인 번호
proc_stat number   처리상태 (1:발행요청, 2:요청실패, 3:처리완료, 4:처리실패)

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "pub_tid" : "o2o2023110914070153800023096",
    "pub_type": 1 ,
    "pub_clf_type": 1 ,
    "pub_no_type": 1,
    "pub_no": 01012345678,
    "tx_type": 1,
    "tx_amount": 2000,
    "aprv_no": "J20000036",
    "proc_stat": 1
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

거래 확인서 요청

고객사 사용자의 PG (결제)거래 확인서 화면 요청 용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 키 유형
v1.0/receipt/info/{tid} GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
amunt 필수 number   (결제)금액
tx_ymd 필수 string 10 거래 일자(YYYY-MM-DD)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
redirect_url string 1000 (거래 내역 확인용)웹 화면

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "redirect_url": "https://devpayapispg.shinhan.com/pgsvc/receipt/receipt_all.asp?id=..." //(거래내역확인용) PG 웹 화면
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

결제 거래정보 조회

고객사 결제 거래 정보 조회용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/payments/confirm-info GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
order_no 필수 string 50 고객사 주문번호

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
user_id string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
tid string 50 (결제)거래 번호
tx_amount number   (결제)거래 금액
tx_stat number   (결제)거래 상태 (1: 승인, 2: 취소, 3: 부분취소)
tx_date string 19 거래 일시(YYYY-MM-DD HH:MM:SS)
cncl_date string 19 취소 일시(YYYY-MM-DD HH:MM:SS)
*거래 상태 "2:취소"의 경우에만 응답하는 정보입니다.
cncl_rsn string 100 취소 사유
*거래 상태 "2:취소"의 경우에만 응답하는 정보입니다.

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "user_id": "test_01",
    "tid": "202108311259590006",
    "tax_amount": "10,00",
    "tx_stat": 2,
    "tx_date": "2021-12-22 12:59:59",
    "cncl_date": "2021-12-22 13:05:59",
    "cncl_rsn”: “고객 요청”
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

카드사 목록 조회

PG에서 일반결제로 사용할 수 있는 카드사 목록 조회용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/payments/info/card-list GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
list JSON Array    
card_cpny_cd string 10 카드사 코드
* 6.1 카드사 코드 참조
card_cpny_name string 20 카드사 명
* 6.1 카드사 코드 참조
image_url string 100 카드사 이미지 URL
sort_no number   순서
istl_psbl_amt number   할부 가능 금액
istl_start_mnts string 2 할부 시작월
istl_finish_mnts string 2 할부 종료월
nintr_istl_start_mnts string 2 무이자 시작월
*무이자 가능인 경우
nintr_istl_finish_mnts string 2 무이자 종료월
*무이자 가능인 경우
mult_part_nintr_istl_mnts number   복수 부분 무이자 할부 개월(,구분자로 복수개 등록)
0 : 사용안함
*무이자 가능인 경우
nintr_yn string 1 무이자 가능여부(Y, N)
point_use_yn string 1 카드사 포인트 사용가능여부(Y, N)
notice_list JSON Array   공지 리스트
notice_type number   공지 유형 코드(1:공지, 2:장애, 3:작업)
notice_msg string   공지 메시지
prmt_list JSON Array   프로모션 리스트
prmt_name string 30 프로모션 명
prmt_ctnt string   프로모션 내용
prmt_cndi_amt number   프로모션 조건 기준 금액
prmt_amt number   프로모션 금액
id_max_aply_yn string 1 ID별 최대 적용 여부(Y, N)
max_cnt_aply_type number   최대 횟수 적용 기간 유형 코드
1:일, 2:주, 3:월, 4:총
max_cnt number   최대 횟수

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    “list”: {
        "card_cpny_cd": "S001",
        "card_cpny_name": "BC카드",
        "image_url": "/srs/htdocs/publish/images/icon_card_bc.png"
    }
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

간편결제 앱카드 목록 조회(핏콜라보용)

핏콜라보에 등록한 카드 목록 조회용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/payments/info/payment-card-list GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
xclv_pay_user_no 필수 number   전용 페이 사용자 번호
user_ci 필수 string 88 고객사 사용자 CI(Connecting information)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
oneclick string 10 가맹점 회원 기준 원클릭 설정
ui_type string 10 결제 UI 구분
* 원클릭 설정 상태 : “Y”, 원클릭 미설정 상태 : “N”
list_count number   간편결제 계정 개수
list JSON Array    
card_name string 100 간편결제 명
card_no string 20 카드번호(마스킹)
acnt_id string 30 간편결제 계정 ID
card_cpny_cd string 4 카드사 코드
card_cpny_name string 12 카드사 명
user_no string 11 간편결제 회원번호
install_ment_yn string 1 할부가능 여부
is_oneclick string 1 원클릭 결제 설정 여부
* Y: 설정, N: 해지
image_url string   카드 이미지 URL

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    “oneclick”: "ON",
    “ui_type”: “Y”,
    "list_count": 1,
    list": [{
        "card_brand_name":"현대카드M2",
        "card_num_mask":"4***********101*",
        "acnt_id": "TVPAY2021011111111100000017273",
        "card_code":"2077",
        "card_name":"현대카드",
        "user_no":"M0000000040",
        "install_ment_yn":"Y",
        "is_oneclick":"Y"
    }]
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

PG약관 조회

PG약관 조회용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/payments/info/terms-info-list GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
list JSON Array    
terms_no number   약관번호
terms_nm string 100 약관명
terms_ctnt string   약관내용(HTML)

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    list": [{
    "terms_no": 1,
    "terms_nm":"전자금융거래 이용약관",
    "terms_ctnt": “<header class=”pgHeader”><h3 class=”title”>약관 및 동의</h3>….</div>"
    }]
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

정기결제 신청(전용페이)

전용페이 정기결제 신청 API입니다. 정기결제 승인요청 전에 신청이 필요 합니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/rpay/xclv-pay-req POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
shpaycard 고정.
* bill_key 있으면 바로 신청처리.
* bill_key 없으면 결제수단 선택 화면 호출
client_id 필수 string 10 고객사 아이디
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_name 필수 string 20 고객사 사용자(회원) 명
product_id 필수 string 10 (결제)상품 아이디
product_name 필수 string 50 (결제)상품 명
amount 필수 number   (결제 상품)금액
taxfree_amount   number   비과세 금액
*(결제 요청)금액이 모두 비과세액인 경우, amount, taxfree_amount 모두 동일한 값을 설정하여야 합니다.
예) (결제 요청)금액 1,000원 모두 비과세 금액인 경우
→ amount, taxfree_amount 모두 1,000원 설정
*(결제 요청)금액 중 일부가 비과세 금액인 경우, 해당 금액만 taxfree_amount에 설정하여야 합니다.
예) (결제 요청)금액 1,000원중 비과세 금액이 100원인 경우
→ amount 1,000원, taxfree_amount 100원 설정
tax_amount   number   부가세 금액
*요청 파라미터 값이 없으면, ((amount - taxfree_amount - cup_return_deposit) / 11) 계산식을 적용, 소수점 이하 반올림으로 자동 계산합니다.
mphn_no   string 15 휴대폰번호
email_addr   string 50 메일 주소
return_url 필수 string 100 정기결제 등록 이후 이동하는 고객사 URL
cancel_url 필수 string 200 정기결제 등록 취소 시 이동하는 고객사 URL
fail_url 필수 string 200 정기결제 등록 실패 시 이동하는 고객사 URL
param_ispt_hash 필수 string 1000 파라메터 검증 해시
*고객사 요청 파라미터 검증을 위한 sha256 hash 값을 의미하며, "sha256(client_id + user_id + product_id + payment API Key)" 조합으로 생성된다.
bill_key   string 50 빌 키 (전용페이 결제수단 등록 시 발급되는 고유 식별 정보)
* bill_key 있으면 바로 신청처리.
* bill_key 없으면 결제수단 선택 화면 호출.
user_ci 선택적 필수 string 88 고객사 사용자 CI(Connecting information)
* bill_key가 없을때 필수.

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
redirect_url string 1000 (결제용)웹 화면
*PG 웹 화면 접근 후 redirect_url token은 다시 사용할 수 없습니다.

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "redirect_url": "https://devpayapispg.shinhan.com/pgsvc/pay?token=2021083110239001duf.." // (결제 인증용)웹 화면
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

정기결제 신청 화면 출력 (전용페이-고객사 호출)

결제수단을 shpay 로 요청했을 경우 결제 요청 API의 redirect_url 을 이용하여, 고객사 사용자에게 PG 웹 화면을 출력합니다.

화면 요청

Redirect URL HTTP 메서드
redirect_url GET

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
user_id string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
rpay_billkey string 50 정기결제빌키
card_billkey string 50 카드빌키

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
[땡겨요전용] “정기결제 카드등록에 실패하였습니다. 카드 등록 전환이 필요합니다.” 8002 에러 메시지 응답시..
4.34 전용페이 카드등록 전환을 위한 등록카드 삭제 요청 API 처리 필요.
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "user_id": "test_01",
    "rpay_billkey": "auoh1238u123uy...",
    "card_billkey": "hkjf1238u123uy...",
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "token is missing or incorrect."
}
                                

간편결제 앱카드사 목록 조회(핏콜라보)

PG에서 일반결제로 사용할 수 있는 카드사 목록 조회용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/smpayments/info/appcard-list GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
list JSON Array    
card_cpny_cd string 4 카드사 코드
smp_card_cpny_cd string 10 간편결제 카드사 코드
card_cpny_name string 20 카드사 명

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    “list”: {
        "card_cpny_cd": "S001",
        "card_cpny_name": "BC카드"
    }
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

간편결제 앱카드 목록 조회(핏콜라보용)

핏콜라보에 등록한 카드 목록 조회용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/smpayments/info/payment-appcard-list GET Authorization: SPGKEY {API Key} search

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_ci 필수 string 88 고객사 사용자 CI(Connecting information)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
oneclick_on_off string 10 가맹점 회원 기준 원클릭 설정 상태(ON, OFF)
ui_type string 10 결제 UI 구분
* 원클릭 설정 상태 : “Y”, 원클릭 미설정 상태 : “N”
list_count number   간편결제 계정 개수
list JSON Array    
card_name string 100 간편결제 명
card_no string 20 카드번호(마스킹)
acnt_id string 30 간편결제 계정 ID
card_cpny_cd string 4 카드사 코드
smp_card_cpny_cd string 10 간편결제 카드사 코드
card_cpny_name string 12 카드사 명
user_no string 11 간편결제 회원번호
install_ment_yn string 1 할부가능 여부
is_oneclick string 1 원클릭 결제 설정 여부
* Y: 설정, N: 해지
image_url string   카드 이미지 URL

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK",
    "list_count": 1,
    “oneclick_on_off”: "ON",
    list": [{
        "card_brand_name":"현대카드M2",
        "card_num_mask":"4***********101*",
        "acnt_id": "TVPAY2021011111111100000017273",
        "card_code":"2077",
        "card_name":"현대카드",
        "user_no":"M0000000040",
        "install_ment_yn":"Y",
        "is_oneclick":"Y"
    }]
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

간편결제 앱카드 삭제(핏콜라보용)

핏콜라보에 등록한 카드 삭제용 API 입니다.

API 요청

API 요청
URL HTTP 메서드 HTTP 헤더 토큰 유형
v1.0/smpayments/o2opay/payment-appcard-del POST Authorization: SPGKEY {API Key} payment

요청 데이터

요청 데이터
파라미터 필수 여부 자료형 크기 설명
client_id 필수 string 10 고객사 아이디
pgcode 필수 string 10 결제수단 코드(5. 결제수단 & 오류코드 참조)
user_id 필수 string 50 고객사 사용자(회원) 아이디(이메일, 영문 및 숫자 가능)
user_ci 필수 string 88 고객사 사용자 CI(Connecting information)
acnt_id 필수 string 30 간편결제 계정 ID
(4.30. 간편결제 앱카드 목록 조회(핏콜라보) API 응답 값)
smp_card_cpny_cd 필수 string 4 카드사 코드
(4.30. 간편결제 앱카드 목록 조회(핏콜라보) API 응답 값)
user_no 필수 string 11 간편결제 회원번호
(4.30. 간편결제 앱카드 목록 조회(핏콜라보) API 응답 값)

응답 데이터

처리 성공

처리 성공
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지

처리 실패

처리 실패
파라미터 자료형 크기 설명
ret_code number   응답 코드
ret_msg string 100 응답 메시지
HTTP 1.1 200 OK
{
    "ret_code": 0,
    "ret_msg": "OK"
}
                                
HTTP 1.1 401 Unauthorized
{
    "ret_code": 998,
    "ret_msg": "there is no data."
}
                                

결제수단 & 오류코드

결제수단

결제수단 코드 결제수단 코드 설명
selpay 통합결제창(간편결제, 신용카드, 신용카드(카드번호입력), 가상계좌 선택 UI 호출)
bizselpay 법인통합결제창(신용카드(카드번호입력), 가상계좌, 연계대출 선택 UI 호출)
shpaycard 전용페이 신용/체크카드
shpaybank 전용페이 계좌이체
shpay 전용페이 (결제수단 선택 UI 호출)
kakaopay 카카오페이 간편결제
naverpay 네이버페이 간편결제
fitcollabo 핏콜라보 앱카드 간편결제