개요
어떤경우에 서비스 이용이 필요한가
•
PG사에서 발생하는 모든 결제/취소 발생 거래와 그에따른 대금 입/출금 데이터 수집이 필요할 경우
•
PG사 가맹점 관리자 내의 정산데이터를 자동으로 다운로드 하여, 가맹점 자체 ERP시스템과 연계하고자 할때
정산조회(대사) 관련하여 반드시 이해해야하는 용어 및 개념
•
온라인 전자결제에서의 구매자 결제 및 가맹점 정산 흐름
◦
구매자는 가맹점에서 결제를 하고, 원천지불사(카드사,은행등)는 구매자에게 대금을 청구합니다
◦
PG사는 가맹점에 PG수수료를 제외한 결제대금을 지급합니다.
지불수단별로 프로세스는 상이하나, 아래는 신용카드 결제시의 흐름을 예시로 들었습니다.
하나의 거래는 최초 구매자의 거래 (결제,취소) 로 시작해서 가맹점의 대금 지급을 끝으로 완료됩니다.
•
주요용어 설명
◦
거래일 : 결제 또는 취소가 발생한 일자를 의미합니다. 정산조회 API 에서는 결제일을 approvedAt 로 표기합니다.
◦
정산일 : 가맹점 대급지급의 기준이 되는 일자를 의미합니다. 정산조회 API에서는 soldDate 로 표기합니다.
▪
일반거래 : 신용카드,계좌이체,가상계좌는 거래일과 동일합니다
휴대폰결제,상품권은 계약내용에 따라 달라지게 됩니다.
▪
에스크로 거래 : 구매확정일 (승인) 및 구매거절승인일(취소) 를 의미합니다.
cf) 승인, 취소거래에 대한 정산조회 API에서의 날짜 표기
승인거래 :
approvedAt = 결제일
soldDate = 승인정산일
신용카드, 계좌이체, 가상계좌는 approvedAt 와 동일날짜입니다 .
휴대폰결제와 상품권은 계약에 따라 달라집니다.
취소거래 :
approvedAt = 최초결제일
soldDate = 취소정산일
신용카드 계좌이체 가상계좌는 취소일자와 동일날짜입니다.
휴대폰결제와 상품권은 계약에 따라 달라집니다.
◦
정산지급일 : 가맹점의 계좌로 결제대금을 지급(취소거래는 차감) 하는 일자를 의미합니다. 정산조회API에서는 paidOutDate 로 표기합니다.
◦
정산대금 : 결제대금에서 수수료를 차감한, 가맹점에서 PG사로부터 지급받는 금액을 의미합니다. 정산조회API에서는 paidOutAmount 로 표기합니다
◦
정산주기 : 정산일을 기준으로 가맹점에게 대금을 지급(또는 차감)하는 시점을 의미합니다.
정산주기는 가맹점계약시 설정되며 가맹점별/지불수단별로 상이합니다.
•
통상적으로 “정산일 + 정산주기(영업일기준)” 으로 계약이 됩니다
•
paidOutDate (정산지급일)은 soldDate (정산일) 과 정산주기에 따라 결정이 됩니다
ex) 신용카드의 정산주기가 정산일 (D) + 3 (영업일 기준)이라고 했을때,
만일 어떤 신용카드 거래의 soldDate(정산일) 이 2022-07-30 (토) 이면,
paidOutDate(지급일)은 2022-08-03(수) 이 됩니다. (비영업일인 07-31은 제외)
◦
수수료 : 결제금액에서 PG서비스 사용대가로 차감한 금액을 의미합니다. 정산조회 API에서는 fees 객체 - fee 로 표기합니다
▪
수수료는 보통 결제금액의 몇% 와 같은 비율로 차감되며, PG계약시 지불수단별로 비율을 결정하게 됩니다. 일부 지불수단은 몇%(정률) 가 아닌 . 결제건당 XX원(정액) 과 같이 계약이 될수도 있습니다. API에서 정산비율 정보를 리턴하지는 않습니다.
거래상태에 따른 예시를 들면 아래와 같습니다.
주문번호 123456 : 승인상태로, 가맹점에서는 지급일에 26700원을 지급받습니다
(결제금액에 수수료와 부가세 차감)
주문번호 234567 : 동일한 날에 결제와 취소가 함께 발생한 거래로, 승인상태 : 17800원 지급,
취소상태 : 17800원 차감으로, 결과적으로 지급받을 금액은 0원 입니다.
주문번호 456789 : 8/1 에 결제되었으나, 8/2에 취소된 주문으로, 승인상태에 대한 지급은 위
표에는 없지만 8/4 에 지급받았습니다. 8/5에는 취소상태에 대한 차감만
받습니다
위 네건을 총 합산하면, 가맹점은 8/5에 총 17800원의 대금을 지급받습니다.
▪
수수료의 종류 : 거래건별로 차감되는 수수료의 종류로, 정산조회 API 에서는 fees-type 으로 반환됩니다
•
신용카드수수료 : 신용카드 결제에 대해 거래금액별, 거래건별로 공통적으로 부과되는 수수료입니다 .API 에서는 BASE 로 반환됩니다
•
무이자할부수수료 : 신용카드 거래 중 무이자할부 거래에서 발생하는 항목으로, 이는 다시 상점부담 무이자수수료와 카드사부담 무이자수수료로 나뉩니다
◦
상점부담무이자 : 고객은 무이자로 결제하고, 할부수수료는 가맹점에서 부담하는 결제입니다. 별도의 특약을 맺어야 발생되는 거래로서, API에서는 INSTALLMENT 로 반환됩니다.
◦
카드사부담무이자 : 고객은 무이자로 결제하고, 할부수수료는 카드사 또는 토스페이먼츠에서 부담하는 거래입니다. 별도의 계약이 없어도 적용이 되고 있습니다. API에서는 INSTALLMENT_DISCOUNT 로 반환됩니다.
•
카드사포인트적립 수수료 : 신용카드 거래중 카드+포인트 복합결제, 그 중 포인트 적립결제에서만 반환됩니다. 별도의 특약을 맺어야 발생되는 거래로서, API에서는 POINT_SAVING으로 반환됩니다
•
기타수수료 : 신용카드 이외의 지불수단에 부과되는 기본수수료를 의미합니다. API에서는 ETC로 반환됩니다
▪
수수료의 부가세 (VAT) :
•
PG사에서 청구 및 차감하는 PG수수료는 부가세가 포함되어 청구됩니다.
•
정산조회 API에서 공급가는 supplyAmount 로 표기하며 부가세는 vat 로 표기합니다
•
수수료 계산식
공급가액 = 건별 거래금액 X 수수료율(vat별도) _ 원단위 미만 첫째자리에서 내림
부가세액 = 공급가액 X 10% _ 원단위 미만 첫째자리에서 반올림
ex) 신용카드 결제금액이 10000원이고, 수수료가 4.0% 일때
공급가액 = 10000 * 0.04 = 400원 (결제금액 * 수수료율이 공급가가 됨)
부가세액 = 400원 * 0.1 = 40원
총 수수료 = 440원
▪
취소거래의 수수료 처리
•
신용카드, 휴대폰결제, 상품권과 같은 비현금성 결제는 승인당시 차감된 수수료가 그대로 반환됩니다
◦
부분취소의 경우 일정 비율 및 산식에 따라 반환됩니다.
•
계좌이체, 가상계좌와 같은 현금성 결제는 거래를 취소하더라도 승인당시 차감된 수수료가 반환되지 않습니다.
▪
부분취소 거래의 수수료처리
부분취소 계산식
•
부분취소금액 ÷원 거래금액 = 부분취소비율(a)
•
(원거래금액 X 수수료율) X 부분취소비율(a) = 부분취소 수수료(b)_전단위 절사
ex) 승인 : 100원, 2% → 수수료 2원 / 부분취소 : -50원, 부분취소율 50%(50/100), 2X50% = 1원
→ 부분취소율을 구한 후에, 부분취소금액에 부분취소율로 수수료율 산출
※ 위 계산로직으로 실제 확정된 수수료(공급가액, 부가세)와 정산 건별내역 생성시의 수수료(공급가액, 부가세)가 상이할 경우 거래금액이 큰 순서로 1원씩 보정
ex) 최초 결제금액이 10000원, 5% 부가세 별도계약시
승인시의 차감수수료 : 10000원 X 5% → 500원 (공급가) + 50원(vat) = 550원
1회차 부분취소 -1000원 진행시:
•
부분취소비율(a) = 1000/10000 = 0.1
•
1회차 부분취소 수수료 = 10000 X 0.05 X 0.1 = -50 (공급가) + (-)5 (vat) = -55원
2회차 부분취소 -2000원 진행시 :
•
부분취소비율(a) = 2000/10000 = 0.2
•
1회차 부분취소 수수료 = 10000 X 0.05 X 0.2 = -100 (공급가) + (-)10 (vat) = -110원
마지막회차 부분취소 -7000원 진행시 :
•
부분취소비율(a) = 7000/10000 = 0.7
•
1회차 부분취소 수수료 = 10000 X 0.05 X 0.7 = -350 (공급가) + (-)35 (vat) = -385원
거래조회(대사) 와 연계하여 함께 이해해야하는 용어 및 개념
아래 용어를 거래조회 가이드에서 확인해 주시기 바랍니다.
: 지급금액 정산 기준일로, 결제일 및 취소일을 의미합니다.
케이스별로 보는 정산조회 API 응답결과 예시
(아래 예시는 API 버전 2022-06-08 이상 기준입니다.)
◦
신용카드
▪
승인, 전체취소
승인거래 (신용카드 수수료 5%로 가정시)
{
"mId":"testtest",
"paymentKey":"jgN60L1adJYyZqmkKeP8gqOZ4dEGpVbQRxB9lG5DnzWE7pM4",
"transactionKey":"CF84E4E442142BD6848007F6AD87A7B2",
"orderId":"51607701",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":3290
}
],
"approvedAt":"2022-07-01T12:34:37+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":59837,
"interestFee":0,
"fee":3290,
"supplyAmount":2991,
"vat":299,
"payOutAmount":56547
}
결제금액(amount) : 59837 (구매자 결제금액)
수수료(fee) : 3290 (차감)
공급가(supplyAmount) : 2991 (59837*5% = 2991.85 = 2991) 소숫점이하 버림
부가세(vat) : 299 (공급가 * 10% = 299.1 = 299) 소숫점 이하 반올림
지급금액 : 56547 (59837- 3290) (가맹점 지급금액)
취소거래 (신용카드 수수료 5%로 가정시)
{
"mId":"testtest",
"paymentKey":"aZDBYqJLQ1GKNbdOvk5rkxyYznWm48n07xlzmj6R9e4oPpEX",
"transactionKey":"2EDDF0B8BECC77A3F0C8F903F08CF206",
"orderId":"51547437",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":-1074
}
],
"approvedAt":"2022-06-30T01:15:11+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":-19530,
"interestFee":0,
"fee":-1074,
"supplyAmount":-976,
"vat":-98,
"payOutAmount":-18456
}
취소금액(amount) : -19530 (구매자 취소금액)
수수료(fee) : - 1074 (환급)
공급가(supplyAmount) : -976(-19530*5% = -976.5 = -976) 소숫점이하 버림
부가세(vat) : -98 (공급가 * 10% = -97.6 = -98) 소숫점 이하 반올림
지급금액 : -18456 (-19530 - (-1074)) (가맹점 차감금액)
JSON
복사
▪
부분취소
승인거래 (신용카드 수수료 5%로 가정시)
{
"mId":"testtest",
"paymentKey":"R9o5gEq4k6YZ1aOwX7K8mLgAXk490ryQxzvNPGenpDAlBdbM",
"transactionKey":"3945287C53A8F49A8A1AA44C10D52CAA",
"orderId":"51564768",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":1353
}
],
"approvedAt":"2022-06-30T14:25:53+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":24607,
"interestFee":0,
"fee":1353,
"supplyAmount":1230,
"vat":123,
"payOutAmount":23254
}
결제금액(amount) : 24607 (구매자 결제금액)
수수료(fee) : 1353 (차감)
공급가(supplyAmount) : 1230 (24607*5% = 1230.35 = 1230) 소숫점이하 버림
부가세(vat) : 123 (공급가 * 10% = 123) 소숫점 이하 반올림
지급금액 : 23254 (24607- 1353) (가맹점 지급금액)
부분취소거래 1회차
{
"mId":"testtest",
"paymentKey":"R9o5gEq4k6YZ1aOwX7K8mLgAXk490ryQxzvNPGenpDAlBdbM",
"transactionKey":"D5292B56A83792D86BCEC255797D3D93",
"orderId":"51564768",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":-68
}
],
"approvedAt":"2022-06-30T14:25:53+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":-1259,
"interestFee":0,
"fee":-68,
"supplyAmount":-62,
"vat":-6,
"payOutAmount":-1191
}
취소금액(amount) : -1259 (구매자 취소금액)
수수료(fee) : - 68 (환급)
공급가(supplyAmount) : -62 (-1259*5% = -62.95= -62) 소숫점이하 버림
부가세(vat) : -6 (공급가 * 10% = -6.2 = -6) 소숫점 이하 반올림
지급금액 : -1191 (-1259- (-68)) (가맹점 차감금액)
부분취소거래 2회차
{
"mId":"testtest",
"paymentKey":"R9o5gEq4k6YZ1aOwX7K8mLgAXk490ryQxzvNPGenpDAlBdbM",
"transactionKey":"D5292B56A83792D86BCEC255797D3D93",
"orderId":"51564768",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":-275
}
],
"approvedAt":"2022-06-30T14:25:53+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":-5000,
"interestFee":0,
"fee":-275,
"supplyAmount":-250,
"vat":-25,
"payOutAmount":-4725
}
취소금액(amount) : -5000 (구매자 취소금액)
수수료(fee) : - 275 (환급)
공급가(supplyAmount) : -250(-5000*5% = -250) 소숫점이하 버림
부가세(vat) : -25 (공급가 * 10% = -250 = -25) 소숫점 이하 반올림
지급금액 : -4725 (-5000-(-275)) (가맹점 차감금액)
JSON
복사
◦
계좌이체
▪
승인, 전체취소 (승인일과 같은날 전체취소)
승인
{
"mId":"testtest",
"paymentKey":"q2Dv9ZPM7zXLkKEypNArW7xXjjzYQrlmeaxYG5R4Jo6bnOwB",
"transactionKey":"E7E659FBCB37A044E5C323E0C9533DC9",
"orderId":"51629915",
"currency":"KRW",
"method":"계좌이체",
"fees":[
{
"type":"ETC",
"fee":70
}
],
"approvedAt":"2022-07-01T23:18:47+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":16000,
"interestFee":0,
"fee":70,
"supplyAmount":64,
"vat":6,
"payOutAmount":15930
}
승인일과 같은날 전체취소
{
"mId":"testtest",
"paymentKey":"q2Dv9ZPM7zXLkKEypNArW7xXjjzYQrlmeaxYG5R4Jo6bnOwB",
"transactionKey":"DA921E2C710912BC0F63977D081F5CDA",
"orderId":"51629915",
"currency":"KRW",
"method":"계좌이체",
"fees":[
{
"type":"ETC",
"fee":-70
}
],
"approvedAt":"2022-07-01T23:18:47+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":-16000,
"interestFee":0,
"fee":-70,
"supplyAmount":-64,
"vat":-6,
"payOutAmount":-15930
}
계좌이체 거래는 승인일과 같은날 전체취소시 수수료가 환급됩니다.
JSON
복사
▪
승인, 전체취소 (승인일과 다른날 전체취소)
승인
{
"mId":"testtest",
"paymentKey":"9WjDM1PvGzZ0RnYX2w532ng2ODgBN3NeyqApQEJmKBaOo47l",
"transactionKey":"33266E41BA72D574B9079D72A2AD9749",
"orderId":"51630703",
"currency":"KRW",
"method":"계좌이체",
"fees":[
{
"type":"ETC",
"fee":205
}
],
"approvedAt":"2022-07-01T23:41:49+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":46770,
"interestFee":0,
"fee":205,
"supplyAmount":186,
"vat":19,
"payOutAmount":46565
}
승인일과 다른날 전체취소
{
"mId":"testtest",
"paymentKey":"9WjDM1PvGzZ0RnYX2w532ng2ODgBN3NeyqApQEJmKBaOo47l",
"transactionKey":"DC59321228DCC8D788BD62676729F344",
"orderId":"51630703",
"currency":"KRW",
"method":"계좌이체",
"fees":[
{
"type":"ETC",
"fee":0
}
],
"approvedAt":"2022-07-01T23:41:49+09:00",
"soldDate":"2022-07-03",
"paidOutDate":"2022-07-05",
"amount":-46770,
"interestFee":0,
"fee":0,
"supplyAmount":0,
"vat":0,
"payOutAmount":-46770
}
계좌이체 거래는 승인일 이후 취소시 별도 수수료 환급이 없습니다.
JSON
복사
▪
승인, 부분취소
승인
{
"mId":"testtest",
"paymentKey":"EAK6k75XwlOyL0qZ4G1VO4GbKpn4vroWb2MQYgmBDPdR9pxz",
"transactionKey":"B5E88DE803EE615A323D6EA852EE6402",
"orderId":"51629899",
"currency":"KRW",
"method":"계좌이체",
"fees":[
{
"type":"ETC",
"fee":185
}
],
"approvedAt":"2022-07-01T23:19:53+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":42220,
"interestFee":0,
"fee":185,
"supplyAmount":168,
"vat":17,
"payOutAmount":42035
}
부분취소
{
"mId":"testtest",
"paymentKey":"EAK6k75XwlOyL0qZ4G1VO4GbKpn4vroWb2MQYgmBDPdR9pxz",
"transactionKey":"4EAA2E8475AB8E46AA3FD42EE1999DB3",
"orderId":"51629899",
"currency":"KRW",
"method":"계좌이체",
"fees":[
{
"type":"ETC",
"fee":0
}
],
"approvedAt":"2022-07-01T23:19:53+09:00",
"soldDate":"2022-07-05",
"paidOutDate":"2022-07-07",
"amount":-20180,
"interestFee":0,
"fee":0,
"supplyAmount":0,
"vat":0,
"payOutAmount":-20180
}
계좌이체 거래는 부분취소거래에 대해 별도 수수료 환급이 없습니다.
JSON
복사
◦
가상계좌
▪
입금, 전체환불
입금
{
"mId":"testtest",
"paymentKey":"Ae75jWNka9lpP2YxJ4K8746kdgza93RGZwXLObgyB0vMDm1d",
"transactionKey":"01F037F47E52136383F8985A18C62F79",
"orderId":"1656983058598",
"currency":"KRW",
"method":"가상계좌",
"fees":[
{
"type":"ETC",
"fee":209
}
],
"approvedAt":"2022-07-05T10:05:08+09:00",
"soldDate":"2022-07-05",
"paidOutDate":"2022-07-08",
"amount":1801100,
"interestFee":0,
"fee":209,
"supplyAmount":190,
"vat":19,
"payOutAmount":1800891
}
가상계좌의 수수료는 대부분 거래금액의 일정비율이 아닌, 거래건별 일정금액이 청구됩니다. 위 거래는 190원 (vat) 가 수수료로 청구되었습니다.
환불
{
"mId":"testtest",
"paymentKey":"Ae75jWNka9lpP2YxJ4K8746kdgza93RGZwXLObgyB0vMDm1d",
"transactionKey":"5D5F1ABE570BEB407626DD75CD7D8C8F",
"orderId":"1656983058598",
"currency":"KRW",
"method":"가상계좌",
"fees":[
],
"approvedAt":"2022-07-05T10:05:08+09:00",
"soldDate":"2022-07-06",
"paidOutDate":"2022-07-11",
"amount":-1801100,
"interestFee":0,
"fee":0,
"supplyAmount":0,
"vat":0,
"payOutAmount":-1801100
}
* 가상계좌는 취소거래에 대해 별도 수수료 환급이 없습니다.
* 계좌이체와 달리 가상계좌는 취소일 당일 환불이 되지 않으며 모두 취소일 + 1일 후 환불이 됩니다.
JSON
복사
•
입금, 부분환불
입금
{
"mId":"testtest",
"paymentKey":"EAK6k75XwlOyL0qZ4G1VO4GbKpn4vroWb2MQYgmBDPdR9pxz",
"transactionKey":"B5E88DE803EE615A323D6EA852EE6402",
"orderId":"51629899",
"currency":"KRW",
"method":"가상계좌",
"fees":[
{
"type":"ETC",
"fee":185
}
],
"approvedAt":"2022-07-01T23:19:53+09:00",
"soldDate":"2022-07-01",
"paidOutDate":"2022-07-05",
"amount":42220,
"interestFee":0,
"fee":185,
"supplyAmount":168,
"vat":17,
"payOutAmount":42035
}
부분환불
{
"mId":"testtest",
"paymentKey":"EAK6k75XwlOyL0qZ4G1VO4GbKpn4vroWb2MQYgmBDPdR9pxz",
"transactionKey":"4EAA2E8475AB8E46AA3FD42EE1999DB3",
"orderId":"51629899",
"currency":"KRW",
"method":"가상계좌",
"fees":[
{
"type":"ETC",
"fee":0
}
],
"approvedAt":"2022-07-01T23:19:53+09:00",
"soldDate":"2022-07-05",
"paidOutDate":"2022-07-07",
"amount":-20180,
"interestFee":0,
"fee":0,
"supplyAmount":0,
"vat":0,
"payOutAmount":-20180
}
가상계좌 거래도 부분취소거래에 대해 별도 수수료 환급이 없습니다.
JSON
복사
◦
휴대폰결제
승인
{
"mId":"testtest",
"paymentKey":"qjvX2KBP9QADpexMgkW36RZan65n43GbR5ozO06yLYlaEJ7d",
"transactionKey":"48F9A41E62711945311E6B13AA951849",
"orderId":"O1d468b70c05603a61733418417ffd6f184520cevfv",
"currency":"KRW",
"method":"휴대폰",
"fees":[
{
"type":"ETC",
"fee":30
}
],
"approvedAt":"2022-04-07T19:11:48+09:00",
"soldDate":"2022-06-30",
"paidOutDate":"2022-07-05",
"amount":1000,
"interestFee":0,
"fee":30,
"supplyAmount":27,
"vat":3,
"payOutAmount":970
}
취소
{
"mId":"testtest",
"paymentKey":"qjvX2KBP9QADpexMgkW36RZan65n43GbR5ozO06yLYlaEJ7d",
"transactionKey":"48F9A41E62711945311E6B13AA951849",
"orderId":"202205012358460002",
"currency":"KRW",
"method":"휴대폰",
"fees":[
{
"type":"ETC",
"fee":-497
}
],
"approvedAt":"2022-05-01T23:59:14+09:00",
"soldDate":"2022-06-30",
"paidOutDate":"2022-07-24",
"amount":-21833,
"interestFee":0,
"fee":-497,
"supplyAmount":-452,
"vat":-45,
"payOutAmount":-21336
}
휴대폰결제는 신용카드와 동일하며, 취소시 수수료를 환급합니다.
부분취소는 기본적으로 지원하지 않으나, 별도청약을 통해 일부 통신사 결제에 한해 지원됩니다.
JSON
복사
◦
상품권(문화상품권,게임상품권등)
승인
{
"mId":"testtest",
"paymentKey":"EAK6k75XwlOyL0qZ4G1VO4GbKpn4vroWb2MQYgmBDPdR9pxz",
"transactionKey":"4EAA2E8475AB8E46AA3FD42EE1999DB3",
"orderId":"725405",
"currency":"KRW",
"method":"문화상품권",
"fees":[
{
"type":"ETC",
"fee":9900
}
],
"approvedAt":"2022-06-07T18:07:41+09:00",
"soldDate":"2022-07-16",
"paidOutDate":"2022-07-25",
"amount":100000,
"interestFee":0,
"fee":9900,
"supplyAmount":9000,
"vat":900,
"payOutAmount":90100
}
취소
{
"mId":"testtest",
"paymentKey":"EAK6k75XwlOyL0qZ4G1VO4GbKpn4vroWb2MQYgmBDPdR9pxz",
"transactionKey":"4EAA2E8475AB8E46AA3FD42EE1999DB3",
"orderId":"2022053065664006",
"currency":"KRW",
"method":"도서문화상품권",
"fees":[
{
"type":"ETC",
"fee":-9900
}
],
"approvedAt":"2022-06-07T18:07:41+09:00",
"soldDate":"2022-07-16",
"paidOutDate":"2022-07-25",
"amount":-9900,
"interestFee":0,
"fee":-900,
"supplyAmount":-9000,
"vat":-900,
"payOutAmount":-90100
}
상품권은 신용카드와 동일하며, 취소시 수수료를 환급합니다. 부분취소는 지원하지 않습니다.
JSON
복사
◦
수수료 종류에 따른 응답결과
▪
BASE
▪
INSTALLMENT_DISCOUNT
▪
INSTALLMENT
승인
{
"mId":"testtest",
"paymentKey":"WmvbBAMKdpoeqRGgYO1r5OOmkxKEa3QnN2Eyazx0596wLj4D",
"transactionKey":"76E02778C9913665ADFDB5D40EFFF1DC",
"orderId":"2022081012435474",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":3182
},
{
"type":"INSTALLMENT_DISCOUNT",
"fee":-798
},
{
"type":"INSTALLMENT",
"fee":1260
}
],
"approvedAt":"2022-08-10T10:28:17+09:00",
"soldDate":"2022-08-10",
"paidOutDate":"2022-08-17",
"amount":63640,
"interestFee":0,
"fee":4008,
"supplyAmount":3644,
"vat":364,
"payOutAmount":59632
},
위 주문은 카드사와 가맹점이 카드무이자 할부를 일정비율 분담하는 무이자할부로 결제가 되었습니다.
"type":"BASE","fee":3182 : 카드결제 수수료 (5%로 가정) 에 대한 수수료입니다.vat제외입니다.
"type":"INSTALLMENT","fee":1260 : 상점에서 무이자할부수수료를 100% 부담했을때 차감되는 수수료입니다.vat제외입니다
"type":"INSTALLMENT_DISCOUNT","fee":-798 : 카드사에서 일정비율을 부담하여 가맹점에 환급하는 수수료입니다.vat제외입니다.
이 세가지를 합산한 금액은 "supplyAmount":3644 가 되며 (vat제외) 에기에 vat를 합산한 금액이 최종적으로 차감되는 수수료 (fee = 4008) 가 됩니다.
가맹점은 결제금액 63640 에서 수수료 4008을 제외한 payOutAmount 59632원을 지급받습니다.
취소
{
"mId":"testtest",
"paymentKey":"vG45eDbZnodP9BRQmyarYQEpvqlQvrJ07KzLNkE6AOMwXYWl",
"transactionKey":"A5EC261A692E66D19C0CA45F1D92F2F0",
"orderId":"2022080812256610",
"currency":"KRW",
"method":"카드",
"fees":[
{
"type":"BASE",
"fee":-1881
},
{
"type":"INSTALLMENT_DISCOUNT",
"fee":1072
},
{
"type":"INSTALLMENT",
"fee":-1693
}
],
"approvedAt":"2022-08-08T20:13:18+09:00",
"soldDate":"2022-08-10",
"paidOutDate":"2022-08-17",
"amount":-85550,
"interestFee":0,
"fee":-2502,
"supplyAmount":-2275,
"vat":-227,
"payOutAmount":-83048
},
위 주문도 카드사와 가맹점이 카드무이자 할부를 일정비율 분담하는 무이자할부로 결제가 되었습니다. 이에대한 취소시 수수료 구성 및 계산은 카드승인시와 동일합니다.
JSON
복사
정산조회 API 사용시 유의점
◦
거래시작일 (startDate) 및 거래종료일 (endDate)
▪
API에 설정한 거래시작일과 거래종료일을 입력받으면, 거래조회 API에서는
startDate ≤ 거래일 AND endDate ≥ 거래일 의 조건으로 거래내역을 검색합니다. AND 조건이기 때문에 두 조건이 모두 만족해야 합니다. (따라서, 당연히 startDate 는 endDate 보다 과거일시이거나 같아야합니다.
또한 startDate 와 endDate 파라미터의 형식은 YYYY-MM-DD 입니다.
예를 들어 2022년 1월 1일 하루 동안의 기록 전체를 조회하려면
startDate를 2022-01-01 로, endDate를 2022-01-01로 설정합니다.
특정기간 사이의 정산내역 전체를 조회하려면
(ex: 2022년 1월 1일 ~2022년 1월 10까지의 정산내역)
startDate를 2022-01-01로, endDate를 2022-01-10 설정합니다.
•
page 파라미터 , size 파라미터
API를 통해 데이터를 조회했을때, size 는 한번의 호출시 출력하는 데이터 갯수를 의미합니다.
size의 기본값은 100이고, 최대값은 10000입니다.
또한, 조회일을 기준으로 출력되는 전체 데이터 갯수를 n 개라고 할때, 전체 데이터 n은
페이지당 size 수 만큼 분할하여 출력할수가 있습니다. 이렇게 분할된 각각의 항목을 page
라고 합니다.
page와 size를 적절히 조합하여 api를 호출하면, 대량의 데이터도 끊김없이 안정적으로 다
운로드 받을수 있습니다
ex) 총 10만개정도 예상되는 정산데이터를 정산 API를 통해 다운로드 하고자 할때
size = 1000 이라고 설정할때, 하나의 page에는 1000개까지 데이터 다운로드가 되기 때문에 총 100 page가 필요합니다. 따라서
size = 1000 , page = 1
size = 1000 , page = 2
중략
size = 1000, page = 100
과 같이, page의 카운트를 하나씩 늘려 호출하면 됩니다.
정산조회 API로 데이터 다운로드가 가능한 시점
•
결제/취소거래의 정산이 확정된 직후부터 조회가 가능합니다. 결제/취소거래의 정산은 거래발생 다음날 09시 이후 확정됩니다. 따라서 API를 통한 정산내역 조회는 거래가 발생한 날을 기준으로 다음날부터 조회가 가능합니다
결제수수료에 영향을 미치는 옵션
•
계약당시 책정한 지불수단별 수수료비율에 더해 추가로 수수료가 부가되는 경우가 있습니다. 결제옵션등에 따라 추가될수 있으며, 이로 인해 같은 지불수단,같은 결제금액임에도 정산되는 수수료금액이 다를수 있습니다
◦
할부결제관련
▪
같은금액,같은카드사로 할부결제를 하더라도 어떠한 할부조건을 탔느냐에 따라 수수료가 달라집니다.
•
카드사부담 무이자냐 상점부담 무이자냐에 따라 가맹점에 부담하는수수료가 달라질 수 있습니다.
◦
에스크로 거래의 경우 지불수단별 기본 수수료 이외에 에스크로 수수료가 별도 부과될수 있습니다.
◦
포인트복합결제
신용카드 포인트 복합결제는 별도 청약을 통해 이용가능합니다. 구매자가 신용카드결제와 동시에 카드사 포인트적립을 진행시, 청약내용에 따라 별도수수료가 청구될수 있습니다.