결제

엑심베이 API 엔드포인트(Endpoint)와 객체 정보, 파라미터, 요청 및 응답 예제를 살펴보세요.
엑심베이 API를 이용하면 다양한 결제 수단의 결제 연동・승인・취소・조회・인증을 구현할 수 있습니다.
API를 사용하기 위해 필요한 키 정보와 인증 방식, 보안에 대한 정보는 결제창 연동 준비에서 자세히 알아보세요.

결제 준비

POST/v1/payments/ready

FGKey는 결제의 위변조 방지를 위해 가맹점과 엑심베이 사이에 요청, 응답되는 파라미터의 유효성을 검증할 때 사용하고 있습니다.
결제 준비 API를 사용해 결제창 호출에 필요한 FGKey를 생성해보세요.

결제 준비 API로 생성한 fgkey는 JavaScript SDK로 결제창을 호출할 때 반드시 필요합니다.
생성한 fgkey를 그대로 넣어서 결제창을 호출해주세요. 자세한 내용은 javascript SDK 에서 확인할 수 있습니다.

요청 파라미터

payment object

transaction_type string

필수
연동하려는 결제창 타입 구분을 위해 필요합니다. PAYMENT PAYER_AUTH AUTHORIZE REBILL중 하나입니다.
자세한 내용은 준비하기를 참고하세요.
PAYMENT

: 결제창이 호출되고 인증, 결제 승인 그리고 매입까지 자동으로 처리되는 모델입니다.

PAYER_AUTH

: 결제창이 호출되면 인증만 처리되며, 승인과 매입이 자동으로 처리되는 API 또는, 승인만 이루어지는
  승인 API 호출이 독립적으로 필요한 모델입니다.

AUTHORIZE

: 결제창이 호출되면 인증과 승인까지 자동으로 처리되며, 매입(정산)은 가맹점에서 수동 매입 API를
  호출해 요청해야 합니다

* 수동 매입 API를 사용하려면 별도의 계약이 필요합니다.

REBILL

: 결제창이 호출되면 Token Creation 을 통해 발급받은 token_id 를 통해
추가적인 카드 정보 입력 없이 간편하게 인증, 결제 승인 그리고 매입까지 자동으로 처리되는 모델입니다.

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

lang string

필수
결제창에서 사용할 수 있는 언어 코드입니다. 결제창 지원 언어 코드를 참고하세요.

payment_method string

결제수단 코드입니다. 결제수단 코드를 참고하세요. 결제수단 코드가 지정된 경우, 해당 결제 수단 페이지로 바로 이동합니다.

multi_payment_method string

여러 결제 수단을 지정할 때 보내야 합니다. 구분자 - 를 사용해 지정할 수 있습니다. (e.g. P000-P185-P186)

merchant object

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

shop string

상점명입니다. 가맹점명과 다를 경우 사용해주세요.

partner_code string

파트너 코드입니다.

url object

return_url string

필수
구매자가 결제 결과를 확인화면에서 결제창을 종료할 경우 이동하는 가맹점 페이지의 url 정보입니다.
return_url은 고객 브라우저 기반으로 동작하므로, 브라우저 강제 종료 시, 호출되지 않을 수 있습니다.

status_url string

필수
결제 처리가 끝나면 Backend로 호출되는 가맹점 페이지로 return_url과 파라미터가 동일합니다.
브라우저에서 호출되지 않으므로, 스크립트, 쿠키, 세션은 사용할 수 없습니다.

* DB 작업 및 결제 프로세스 처리는 status_url에서 해야 합니다.
* 고객이 결제창을 강제 종료하면 return_url이 호출되지 않을 수 있습니다.
* 중복 호출이 가능하므로, 결제가 중복 처리되지 않게 주의가 필요합니다.

buyer object

name string

필수
구매자명입니다

phone_number string

구매자 전화번호입니다.

email string

필수
구매자 이메일 주소입니다. (결제완료 메일 발송을 위해 필요합니다.)

tax object*국내 결제 시 사용할 수 있는 파라미터입니다.

receipt_status string

현금영수증 발급 여부를 Y, N 중 선택할 수 있습니다. 실시간 계좌이체를 사용하는 경우 현금영수증 발급을 위해서 반드시 Y로 요청해야 현금영수증 발급이 가능합니다.

amount_tax_free string

전체 결제 금액 중 면세 금액입니다.

amount_taxable string

전체 결제 금액 중 과세 금액입니다.

amount_vat string

전체 결제 금액 중 부가세 금액입니다.

amount_service_fee string

전체 결제 금액 중 봉사료입니다.

Note. 1 - 네이버페이 포인트로 결제를 진행하는 경우 tax 객체 내 파라미터 모두를 필수로 보내야 합니다.
Note. 2 - 국내/해외 결제 따라 SDK 호출 후 받는 응답 값이 달라질 수 있습니다.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

product array * 배열의 길이는 최대 3입니다.

name string

필수
주문한 상품의 상품명입니다.

quantity string

필수
주문한 상품의 수량입니다.

unit_price string

필수
주문한 상품의 상품별 단가입니다.

link string

필수
주문한 상품의 판매 링크입니다. 오픈마켓에서 발생한 주문의 경우 필수로 보내야 합니다.

surcharge array * 배열의 길이는 최대 3입니다.

name string

추가 금액의 항목명입니다. (e.g. 쿠폰할인, 배송비)

quantity string

추가된 항목의 수량입니다. 0보다 큰 숫자를 보내야 합니다.

unit_price string

추가된 항목의 단가입니다. , 는 포함할 수 없으며, 음수로 보낼 수 있습니다. (e.g. -100.50, 9.15)

ship_to object

city string

배송지 도시 정보입니다.

country string

배송지 국가 정보입니다. ISO 3166 두 자리 국가 코드 형식입니다.

first_name string

배송받는 사람의 이름입니다.

last_name string

배송받는 사람의 성입니다.

phone_number string

배송받는 사람의 연락처입니다. 국가번호가 포함될 수 있습니다.

postal_code string

배송지 우편번호입니다.

state string

배송지 주 정보입니다. 배송지가 미국(US) 또는 캐나다(CA)인 경우 사용할 수 있습니다. 지역 코드를 참고하세요.

street1 string

배송지 상세주소입니다.

bill_to object

city string

청구지 도시 정보입니다.

country string

배송지 국가 정보입니다. ISO 3166 두 자리 국가 코드 형식입니다.

first_name string

청구 카드 명의자 이름입니다.

last_name string

청구 카드 명의자 이름입니다.

phone_number string

청구 카드 명의자 연락처입니다. 국가번호가 포함될 수 있습니다.

postal_code string

청구지 우편번호입니다.

state string

청구지 주 정보입니다. 청구지가 미국(US) 또는 캐나다(CA)인 경우 사용할 수 있습니다. 지역 코드를 참고하세요.

street1 string

청구지 상세주소입니다.

settings object

display_type string

브라우저에서 결제창이 열리는 방법을 정할 수 있습니다. P , R 중 하나입니다. 보내지 않으면 P 가 기본으로 보내집니다.
P

: 팝업 형태로 결제창 생성

R

: 가맹점 화면에서 결제창 화면으로 이동

autoclose string

결제가 완료됐을 때 브라우저에서 결제창이 닫히는 방식을 정할 수 있습니다.
Y, N

중 하나입니다. 보내지 않으면 N 이 기본으로 보내집니다.

Y

: 가맹점 화면으로 이동

N

: 결제창의 완료 화면으로 이동(기본)

site_foreign_currency string

결제창에 고객이 가맹점 사이트에서 설정한 통화로 금액을 보여주기 위해 필요합니다.

* payment_method 파라미터를 사용한 경우 P000(신용카드)만 보낼 수 있습니다.

* 가맹점에서 DCC를 사용할 경우, DCC 지원통화만 결제창에서 보여줄 수 있습니다. DCC 지원 통화는 DCC 통화 코드에서 확인할 수 있습니다.

* 금액은 엑심베이 DCC Provider를 통해 조회한 실시간 환율이 적용된 금액입니다. 카드정보가 최종 입력된 후에는 카드발급 국가의 통화로 변경될 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

call_from_app string

클라이언트 환경 구분을 위해 사용됩니다. Y , N 중 하나입니다. 보내지 않으면 N이 기본으로 보내집니다.
  1. Y

    :앱(iOS, AOS) 환경에서 호출

  2. N

    : 웹 브라우저 환경에서 호출

  3. *

    앱 환경에서 결제창을 호출할 경우 웹뷰에서 외부 앱 열기의 연동 방법을 확인해주세요.

call_from_scheme string

외부 앱에서 가맹점 앱으로 돌아오기 위해 필요한 앱 스킴(App URL Scheme)입니다.
  1. *

    앱 환경에서 결제창을 호출할 경우 웹뷰에서 외부 앱 열기의 연동 방법을 확인해주세요.

issuer_country string

해외 결제를 사용하는 가맹점에서 국내 결제를 사용하고 싶을 때 필요한 파라미터입니다. 파라미터에 KR을 추가하면 국내 결제창이 열립니다.

ostype string

결제창이 열리는 클라이언트 환경입니다. P , M 중 하나입니다. 보내지 않으면 P가 기본으로 보내집니다.
P

: PC 환경

M

: 모바일 환경

virtualaccount_expiry_datestring

국내 가상계좌 결제의 입금만료기한을 설정할 수 있습니다. YYYYMMDDHH24로 원하는 입금만료기한을 설정할 수 있습니다.

tokenbilling object

token_creation string

해외발급카드의 간편 결제를 위해 토큰 생성 요청 여부를 알 수 있습니다.
Y

: 토큰 생성 요청

* transaction_type 파라미터가 PAYMENT인 경우만 사용할 수 있습니다.

unique_token_id string

유일한 결제정보(card)로 토큰생성 여부를 알 수 있습니다.
Y

: 유일한 결제정보(card)로 토큰 생성만 가능, 기 동일한 결제정보(card)로 등록된 token_id 존재 시 거절됩니다.

N

: 결제정보(card)로 복수의 토큰 생성이 가능

* transaction_type 파라미터가 PAYMENT인 경우만 사용할 수 있습니다.

token_id string

토큰 생성 요청에 의해 발급되었던 토큰 ID입니다.

* transaction_type 파라미터가 REBILL인 경우만 사용할 수 있습니다.

Note. 1 - 토큰 결제를 사용하려면 별도의 계약이 필요합니다.

recurring object * 자동결제 등록에 사용되는 파라미터입니다.

recurring_amount string

필수
자동결제 총 금액입니다.
전체 자릿수는 10이고, 소수 자릿수는 2. (예시 - 10.50, 9.15)
금액 3자리 구분 ,는 사용하지 않습니다.

recurring_start_date string

필수
자동결제 시작일입니다. 최대 길이는 8자입니다. (YYYYMMDD)
자동 결제 시작일(다음 결제일)은 현재 일자 이후 이어야 하며, 이후로는 1달 후 자동 결제됩니다.

recurring_interval string

필수
자동결제 반복 주기(월) 입니다.
최대 반복 주기는 10(월)입니다. (예시 - 3달 주기 결제의 경우 3)

recurring_noti_url string

자동결제 후 호출되는 가맹점 페이지입니다.
최대 길이는 255자입니다.

remind_email_interval string

자동결제 전 사전 알림 이메일 발송 시점입니다. (디폴트 값 : 3)
최대 길이는 2자입니다. (예시 - '7'인 경우, 결제 7일전에 결제자에게 알림메일 발송)

fast_payment object

user_id string

필수
회원 아이디입니다.

user_ci string

필수
회원 Ci 입니다.

* 가맹점에서 본인 인증 진행 후 받은 userCi를 파라미터로 세팅해 주시기 바랍니다.

* 가맹점에서 본인 인증을 진행하지 않는 경우 엑심베이와 사전 협의를 진행해야 하며, userCi 값은 공백으로 보내주시기 바랍니다.

phone_number string

필수
핸드폰 번호입니다.

* 가맹점에서 본인 인증을 진행하지 않는 경우 공백으로 보내주시기 바랍니다.

birthday string

필수
생년월일입니다. (YYYYMMDD)

* 가맹점에서 본인 인증을 진행하지 않는 경우 공백으로 보내주시기 바랍니다.

gender string

필수
성별입니다.
M

: 남성

F

: 여성

* 가맹점에서 본인 인증을 진행하지 않는 경우 공백으로 보내주시기 바랍니다.

foreigner string

필수
외국인 여부를 나타냅니다.
T

: 외국인

F

: 내국인

* 가맹점에서 본인 인증을 진행하지 않는 경우 공백으로 보내주시기 바랍니다.

Note. 1 - 빠른 결제를 사용하려면 별도의 계약이 필요합니다.

요청
                                                        
            curl --request POST 'https://api-test.eximbay.com/v1/payments/ready' \
            --header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
            --header 'Content-Type: application/json' \
            --data '{
                "payment" : {
                    "transaction_type" : "PAYMENT",
                    "order_id" : "20220819105102",
                    "currency" : "USD",
                    "amount" : "1",
                    "lang" : "EN"
                },
                "merchant" : {
                    "mid" : "1849705C64"
                },
                "buyer" : {
                    "name" : "eximbay",
                    "email" : "test@eximbay.com"
                },
                "url" : {
                    "return_url" : "eximbay.com",
                    "status_url" : "eximbay.com"
                },
                "tokenbilling" : {
                    "token_creation" : "Y",
                    "unique_token_id" : "Y"
                },
                "recurring" : {
                    "recurring_amount" : "1.15",
                    "recurring_start_date" : "20250210",
                    "recurring_interval" : "1",
                    "recurring_noti_url" : "https://가맹점url",
                    "remind_email_interval" : "5"
                }
            }'
                                                        
                                                    
응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

fgkey string

필수
생성된 FGKey입니다. SDK로 결제창을 호출 할 때 함께 보내줘야 합니다. 자세한 내용은 결제 준비하기를 참고하세요.
응답
                                                        
    {
        "rescode": "0000",
        "resmsg": "Success",
        "fgkey": "0E9BE04BA239A519E68171F26B68604ADA0A85C8350DBF5C8C0FCCF98461DB09"
    }
                                                        
                                                    

결제 승인

POST/v1/payments/confirm

인증 결제창으로 결제 인증 후 결제 승인 API를 호출해 결제를 마무리하세요.
요청 파라미터

transaction_type string

필수
인증 결제창으로 인증 후 결제 승인 방법을 선택할 수 있습니다. PAYMENT_PA AUTHORIZE_PA 중 하나입니다.
자세한 내용은 준비하기 를 참고하세요.
PAYMENT_PA

: 결제 승인과 함께 매입까지 자동으로 처리되는 모델입니다.

AUTHORIZE_PA

: 결제 승인만 처리되는 모델입니다. 매입 처리를 위해서 수동 매입 API를 별도로 사용해야 합니다.

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드 를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

payer_auth_id string

필수
인증 결제창 PAYER_AUTH 로 결제창을 호출하고 응답으로 받은 거래 아이디입니다.

lang string

필수
결제창에서 사용할 수 있는 언어 코드입니다. 결제창 지원 언어 코드를 참고하세요.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
요청
                                                        
    curl --request POST 'https://api-test.eximbay.com/v1/payments/confirm' \
    --header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
    --header 'Content-Type: application/json' \
    --data '{
        "transaction_type" : "PAYMENT_PA",
        "mid" : "1849705C64",
        "payment" : {
            "order_id" : "20220902101716",
            "currency" : "USD",
            "amount" : "1",
            "payer_auth_id" : "20220902101716",
            "lang" : "EN"
        }
    }'

                                                        
                                                    
응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

email string

필수
구매자 이메일 주소입니다. (결제완료 메일 발송을 위해 필요합니다.)

transaction_id string

필수
엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

auth_code string

승인번호입니다.

* 간편결제로 결제된 거래의 경우 승인번호가 존재하지 않습니다.

transaction_date string

필수
승인 일시입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.

access_country string

고객이 결제를 진행한 국가입니다. ISO 3166 두 자리 국가 코드 형식입니다.

payment_method string

결제수단 코드입니다. 결제수단코드를 참고하세요. 결제 수단이 지정된 경우, 해당 결제 수단 페이지로 바로 이동합니다.

pay_to string

청구할 가맹점명입니다.

payment_url string

일본 편의점 결제를 선택했을 때, '접수' 단계에서 고객에게 결제 방법 안내을 안내하는 url 정보입니다.

status string

결제 수단이 가상계좌 또는 일본 편의점 결제(eContext)일 때 결제처리 상태입니다.
Registered

: 접수 반드시 Sale을 수신한 경우에만 주문완료 처리를 해야합니다.

Sale

: 입금 완료 시 statusurl로만 전송됩니다.

base_currency string

승인된 통화 단위입니다.

* 일반적으로 currency 파라미터와 동일 값이 돌아오며, 자국통화기준 MCP의 경우 원화(KRW) 또는 달러(USD) 로 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

base_amount string

승인된 금액입니다.

* 일반적으로 amount 파라미터와 동일 값이 돌아오며, 자국통화기준 MCP의 경우 원화(KRW) 또는 달러(USD) 로 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

base_rate string

승인통화에 적용된 환율정보입니다.

* currency대비 base_currency에 대한 환율로, 동일한 경우 1 이 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

dcc_rate string

DCC 적용 환율 정보입니다.

* base_currency대비 foreign_currency에 대한 환율로, 동일한 경우 1 이 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

terminal_id string

VAN 단말기 아이디입니다.

card_number string

결제한 카드의 카드번호입니다.

expiry_date string

카드 유효기간입니다.

store_number string

매입사 가맹점 번호입니다.

foreign object

foreign_currency string

고객에게 청구될 통화 단위입니다.

* DCC의 경우 고객이 선택한 통화 단위가 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

foreign_amount string

고객에게 청구할 금액입니다.

* DCC의 경우 고객이 선택한 통화 단위가 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

foreign_rate string

고객에게 청구한 금액에 적용된 환율정보입니다.

* currency 대비 foreign_currency 에 대한 환율로 동일한 경우 1 이 들어옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

card_info object

card_holder string

카드 명의자 이름입니다.

card_number1 string

조회한 거래에 사용된 카드의 앞 4자리 번호입니다.

card_number4 string

조회한 거래에 사용된 카드의 마지막 4자리 번호입니다.

cash_receipt object

use_flag string

현금 영수증 사용 여부를 확인할 수 있습니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

cash_receipt_type string

현금 영수증 용도입니다. 소득공제, 지출증빙 중 하나입니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

customer_information_type string

현금 영수증 발급 시 입력한 발급수단번호의 종류입니다. 휴대폰 번호, 주민등록번호, 카드번호가 될 수 있습니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

customer_information string

현금 영수증 발급 시 입력한 발급수단번호입니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

ship_to object

city string

배송지 도시 정보입니다.

country string

배송지 국가 정보입니다. ISO 3166 두 자리 국가 코드 형식입니다.

first_name string

배송받는 사람의 이름입니다.

last_name string

배송받는 사람의 성입니다.

phone_number string

배송받는 사람의 연락처입니다. 국가번호가 포함될 수 있습니다.

postal_code string

배송지 우편번호입니다.

state string

배송지 주 정보입니다. 배송지가 미국(US) 또는 캐나다(CA)인 경우 사용할 수 있습니다. 지역 코드를 참고하세요.

street1 string

배송지 상세주소입니다.

dm object

dm_decision string

DM Process의 상태입니다. 아래와 같은 상태 코드를 확인할 수 있습니다.
ACCEPT

: DM Process 위험 검토 후 거래 승인

REJECT

: DM Process 위험 검토 후 거래 실패

REVIEW

: DM Process 위험 검토 후 승인될 수 있으나, 위험 거래여부 확인이 필요한 상태

ERROR

: DM Process 실패

dm_reject string

REJECT Rule 코드입니다. Rule 코드는 I 로 구분되며, 별도로 제공됩니다.

dm_review string

REJECT Rule 코드입니다. Rule 코드는 I 로 구분되며, 별도로 제공됩니다.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
응답
    
    {
        "rescode": "0000",
        "resmsg": "Success",
        "mid": "1849705C64",
    }

    
                                                                
                                                                                

결제 검증

POST/v1/payments/verify

SDK로 결제창을 열고 받은 응답에 포함되어 있는 FGKey의 유효성 검증을 위해 필요합니다.
결제 검증 API를 사용해 결제를 마무리하세요. 아래 주의사항을 꼭 참고해주세요.

엑심베이 서버에서 가맹점 status_url로 나간 응답 파라미터는 쿼리스트링 형식입니다.
쿼리스트링으로 응답받은 파라미터를 빠짐없이 결제 검증 API 요청 파라미터로 전송해주세요.
자세한 내용은 결제 준비에서 확인할 수 있습니다.

Note. 1 - SDK로 결제창을 열 때 선택한 transaction_type과 사용한 요청 파라미터에 따라 status_url로 받은 응답 값이 달라집니다.
Note. 2 - 국내/해외 결제 따라 SDK 호출 후 받는 응답 값이 달라질 수 있습니다.

요청 파라미터

version string

필수
SDK로 호출한 결제창의 버전 정보입니다.

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

transaction_type string

필수
SDK로 결제창을 호출할 때 사용한 결제창 타입과 같습니다. 선택한 결제창 타입에 따라 엑심베이 서버에서 받은 응답 파라미터가 달라집니다.

fgkey string

필수
결제창을 호출할 때 사용한 fgkey 정보입니다.

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다.

email string

필수
구매자 이메일 주소입니다. (결제완료 메일 발송을 위해 필요합니다.)

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param3 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다.

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

transaction_id string

엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

auth_code string

승인번호입니다.

* 간편결제로 결제된 거래의 경우 승인번호가 존재하지 않습니다.

payer_auth_id string

인증 결제창 PAYER_AUTH 로 결제창을 호출하고 응답으로 받은 거래 아이디입니다.

transaction_date string

승인 일시입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.

access_country string

고객이 결제를 진행한 국가입니다. ISO 3166 두 자리 국가 코드 형식입니다.

payment_method string

결제수단 코드입니다. 결제수단 코드를 참고하세요. 결제 수단이 지정된 경우, 해당 결제 수단 페이지로 바로 이동합니다.

payment_type string

결제수단으로 국내 간편결제를 선택했을 때 가맹점에 설정된 정보입니다.

*국내 간편결제를 사용했을 경우 필요한 파라미터입니다.

pay_to string

청구할 가맹점명입니다.

card_holder string

카드 명의자 이름입니다.

card_number1 string

거래에 사용된 카드의 앞 4자리 번호입니다.

card_number4 string

거래에 사용된 카드의 마지막 4자리 번호입니다.

installment_months string

선택한 할부 개월 수 입니다.

*국내 결제일 경우 사용할 수 있습니다.

status string

필수
결제창으로 진행한 결제의 상태입니다. 아래와 같은 상태 코드를 확인할 수 있습니다.
SALE

: 정상매출 (매출 확정)

AUTH

: 승인거래 (매출 미확정, 수동 매입시 매출 확정)

REGISTERED

: 주문등록 (매출 미확정, 입금통지시 매출 확정)

NONE

: 거래 없음

ship_to_city string

배송지 도시 정보입니다.

ship_to_country string

배송지 국가 정보입니다. ISO 3166 두 자리 국가 코드 형식입니다.

ship_to_first_name string

배송받는 사람의 이름입니다.

ship_to_last_name string

배송받는 사람의 성입니다.

ship_to_phone_number string

배송받는 사람의 연락처입니다. 국가번호가 포함될 수 있습니다.

ship_to_postal_code string

배송지 우편번호입니다.

ship_to_state string

배송지 주 정보입니다. 배송지가 미국(US) 또는 캐나다(CA)인 경우 사용할 수 있습니다. 지역 코드를 참고하세요.

ship_to_street1 string

배송지 상세주소입니다.

useFlag string

현금 영수증 사용 여부를 확인할 수 있습니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

cash_receipt_type string

현금 영수증 용도입니다. 소득공제(deduction), 지출증빙(evidence) 중 하나입니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

cash_receipt_deduction_detail string

현금 영수증 발급 시 입력한 발급수단번호의 종류입니다. 휴대폰 번호(phoneno), 주민등록번호(userID), 카드번호(cardno)가 될 수 있습니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

cash_receipt_user_info string

현금 영수증 발급 시 입력한 발급수단번호입니다.

*가상계좌, 네이버페이 포인트 결제 시 필요한 파라미터입니다.

virtual_account_number string

가상계좌 번호입니다. 결제수단으로 가상계좌를 선택했을 때 필요합니다.

virtual_account_bank_name string

가상계좌 은행명입니다.

virtual_account_depositor string

입금자 명입니다.

virtual_account_due_date string

가상계좌로 입금할 수 있는 입금 유효기한입니다.

Note. 1 - 고객이 결제수단으로 가상계좌 또는 일본 편의점 결제를 선택했을 때 필요한 객체입니다.
Note. 2 - 가상계좌 또는 일본 편의점 결제의 경우 아래 두 단계로 결과가 전송됩니다.
• 주문등록: returnurl, statusurl   • 입금통지: statusurl
Note. 3 - statusurl로 주문등록 결과를 받을지 여부는 선택할 수 있습니다.

payment_url string

일본 편의점 결제를 선택했을 때, '접수' 단계에서 고객에게 결제 방법 안내을 안내하는 url 정보입니다.

dm_decision string

DM Process의 상태입니다. 아래와 같은 상태 코드를 확인할 수 있습니다.
ACCEPT

: DM Process 위험 검토 후 거래 승인

REJECT

: DM Process 위험 검토 후 거래 실패

REVIEW

: DM Process 위험 검토 후 승인될 수 있으나, 위험 거래여부 확인이 필요한 상태

ERROR

: DM Process 실패

dm_reject string

REJECT Rule 코드입니다. Rule 코드는 I 로 구분되며, 별도로 제공됩니다.

dm_review string

REJECT Rule 코드입니다. Rule 코드는 I 로 구분되며, 별도로 제공됩니다.

base_currency string

승인된 통화 단위입니다.

* 일반적으로 currency 파라미터와 동일 값이 돌아오며, 자국통화기준 MCP의 경우 원화(KRW) 또는 달러(USD) 로 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

base_amount string

승인된 금액입니다.

* 일반적으로 amount 파라미터와 동일 값이 돌아오며, 자국통화기준 MCP의 경우 원화(KRW) 또는 달러(USD) 로 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

base_rate string

승인통화에 적용된 환율정보입니다.

currency 대비 base_currency 에 대한 환율로, 동일한 경우 1 이 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

foreign_currency string

고객에게 청구될 통화 단위입니다.

* DCC의 경우 고객이 선택한 통화 단위가 돌아옵니다.

*해외 결제 연동시 사용할 수 있습니다.

foreign_amount string

고객에게 청구할 금액입니다.

* DCC의 경우 고객이 선택한 통화에 맞는 금액이 돌아옵니다.

*해외 결제 연동시 사용할 수 있습니다.

foreign_rate string

고객에게 청구한 금액에 적용된 환율정보입니다.

*currency 대비 foreign_currency 에 대한 환율로 동일한 경우 1 이 돌아옵니다.

*해외 결제 연동시 사용할 수 있습니다.

dcc_rate string

DCC 적용 환율 정보입니다.

base_currency 대비 foreign_currency 에 대한 환율로, 동일한 경우 1 이 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

terminal_id string

VAN 단말기 아이디입니다.

card_number string

결제한 카드의 카드번호입니다.

expiry_date string

카드 유효기간입니다.

store_number string

매입사 가맹점 번호입니다.

cavv string

인증결과에 대한 cavv 정보입니다.

xid string

인증결과에 대한 xid입니다.

eci string

인증결과에 대한 eci 정보입니다.

token_id string

토큰 생성 요청에 의해 생성된 토큰 ID 입니다.

* 토큰결제 연동시 사용할 수 있습니다.

token_creation string

해외발급카드의 간편 결제를 위해 토큰 생성 요청 여부를 알 수 있습니다.

* 토큰 생성 요청시 전달된 파라미터를 리턴합니다.

recurring_payment string

자동결제 등록 여부를 알 수 있습니다.
최대 길이는 1자입니다.
Y

: 자동결제 등록

recurring_id string

자동결제 등록 시, 부여되는 자동결제 ID 입니다. 자동결제 해지 및 변경 요청 시 사용됩니다.
최대 길이는 20자입니다.

recurring_next_date string

다음 자동결제 예정일입니다.
최대 길이는 8자입니다. (YYYYMMDD)
요청
                                                        
    curl --request POST 'https://api-test.eximbay.com/v1/payments/verify' \
    --header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
    --header 'Content-Type: application/json' \
    --data '{
        "data" : "currency=USD&card_number1=4111&transaction_date=20220927152250&card_number4=1111&mid=1849705C64&amount=100&access_country=KR&order_id=20220927152140&payment_method=P101&email=test@eximbay.com&ver=230&transaction_id=1849705C6420220927000016&param3=TEST&resmsg=Success.&card_holder=TESTP&rescode=0000&auth_code=309812&fgkey=2AE38D785E05E6AF57977328908C7CD84A273B3FE6C042D537A800B0CBC783EA&transaction_type=PAYMENT&pay_to=EXIMBAY.COM"
    	    }'
                                                        
                                                    
응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.
응답
    
    {
        "rescode": "0000",
        "resmsg": "Success",
    }
    
    

결제 조회

POST/v1/payments/retrieve

승인 또는 취소된 결제를 조회할 수 있습니다.

결제 조회 API는 반드시 Server to Server로 구현하시기 바랍니다.

요청 파라미터

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

key_field string

필수
결제 조회 방법을 선택할 수 있습니다. order_id , transaction_id 중 하나입니다. 보내지 않으면 transaction_id 가 기본으로 보내집니다.
order_id

: 승인 또는 환불된 최종 거래를 조회할 수 있습니다.

transaction_id

: 지정된 거래를 조회할 때 사용합니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

lang string

필수
결제창에서 사용할 수 있는 언어 코드입니다. 결제창 언어 코드를 참고하세요.

transaction_id string

엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
요청
                                                        
    curl --request POST 'https://api-test.eximbay.com/v1/payments/retrieve' \
    --header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
    --header 'Content-Type: application/json' \
    --data '{
        "mid" : "1849705C64",
        "key_field" : "order_id", 
        "payment" : {
            "order_id" : "20220902101716",
            "currency" : "USD",
            "amount" : "1",
            "transaction_id" : "20220902101716",
            "lang" : "EN"
        }
    }'
                                                        
                                                    
응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

status string

필수
조회한 결제의 상태입니다. 아래와 같은 상태 코드를 확인할 수 있습니다.
SALE

: 정상매출 (매출 확정)

AUTH

: 승인거래 (매출 미확정, 수동 매입시 매출 확정)

REGISTERED

: 주문등록 (매출 미확정, 입금통지시 매출 확정)

NONE

: 거래 없음

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

transaction_id string

필수
엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

auth_code string

승인번호입니다.

* 간편결제로 결제된 거래의 경우 승인번호가 존재하지 않습니다.

transaction_date string

필수
조회한 거래의 승인 일시입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.

balance string

취소 가능 금액입니다. (승인 금액 - 환불 금액)

payment_method string

결제수단 코드입니다. 를 참고하세요. 결제 수단이 지정된 경우, 해당 결제 수단 페이지로 바로 이동합니다.

card_info object

card_number1 string

조회한 거래에 사용된 카드의 앞 4자리 번호입니다.

card_number4 string

조회한 거래에 사용된 카드의 마지막 4자리 번호입니다.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
응답
                                                        
    {
        "rescode": "0000",
        "resmsg": "Success.",
        "mid": "1849705C64",
        "payment": {
            "order_id": "20220902101716",
            "currency": "USD",
            "amount": "1",
            "transaction_id": "1849705C6420220902000010",
            "status": "AUTH",
            "auth_code": "485760",
            "transaction_date": "20220902101749",
            "balance": "1.00"
        },
        "card_info": {
            "cardno1": "4111",
            "cardno4": "1111"
        }
    }
                                                        
                                                    

결제 취소

POST/v1/payments/{transaction_id}/cancel

승인된 결제를 transaction_id 로 취소합니다.

결제 취소 API는 반드시 Server to Server로 구현하시기 바랍니다.

요청 파라미터

mid string

필수

엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

refund object

refund_type string

필수
결제 취소에 대한 타입정보입니다. FP 중 하나입니다.
F

: 전체 취소

P

: 부분 취소

refund_amount string

필수

요청한 취소 금액입니다. 원승인 거래 금액을 초과해 요청할 수 없습니다. refund_typeF 일 때 금액을 보내지 않으면 원승인 거래 전체 금액이 취소됩니다.

refund_id string

필수

취소하려는 거래를 구분하기 위해 가맹점에서 생성하는 고유한 취소 번호입니다. 취소 번호는 유일한 값을 가져야 합니다.

reason string

필수

결제를 취소한 이유입니다.

payment object

order_id string

필수

취소하려는 거래의 주문번호(odrer_id)입니다. 동일한 주문번호를 넣어야 취소가 정상적으로 처리됩니다.

currency string

필수

결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수

총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

balance string

필수

취소 가능 금액입니다. (승인 금액 - 환불 금액)

lang string

필수

결제창에 지원되는 언어 코드입니다. 를 참고하세요.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

refund_account object*가상계좌 거래를 취소할 때 필요한 파라미터입니다.

user_name string

고객이 입력할 환불계좌 정보의 예금주명입니다.

bank_code string

고객이 입력할 환불계좌의 은행코드입니다.

account_number string

고객이 입력할 환불계좌의 계좌번호입니다.

tax object*가상계좌 또는 네이버페이로 결제한 거래를 취소할 때 필요한 파라미터입니다.

receipt_status string

현금영수증 발급 여부를 Y, N 중 선택할 수 있습니다. 실시간 계좌이체를 사용하는 경우 현금영수증 발급을 위해서 반드시 Y로 요청해야 현금영수증 발급이 가능합니다.

amount_tax_free string

환불 요청 금액 중 면세 금액입니다.

amount_taxable string

환불 요청 금액 중 과세 금액입니다.

amount_vat string

환불 요청 금액 중 부가세 금액입니다.

amount_service_fee string

환불 요청 금액 중 봉사료입니다.
요청
                                                    
    curl --request POST 'https://api-test.eximbay.com/v1/payments/{transaction_id}/cancel' \
    --header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
    --header 'Content-Type: application/json' \
    --data '{
    "mid" : "1849705C64",
    "refund" : {
        "refund_type" : "F",
        "refund_amount" : "1",
        "refund_id" : "1849705C64",
        "reason" : "단순변심"
    },
    "payment" : {
        "order_id" : "20220829170258",
        "currency" : "USD",
        "amount" : "1",
        "balance" : "1",
        "lang" : "EN"
    }
    }'
                                                    
                                                    
                                                
응답 파라미터

rescode string

필수

응답 코드입니다.

resmsg string

필수

응답 코드에 대한 설명입니다.

mid string

필수

엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

refund object

refund_amount string

필수

요청한 취소 금액입니다. 원승인 거래 금액을 초과해 요청할 수 없습니다. refund_typeF 일 때 금액을 보내지 않으면 원승인 거래 전체 금액이 취소됩니다.

refund_id string

필수

취소하려는 거래를 구분하기 위해 가맹점에서 생성하는 고유한 취소 번호입니다. 취소 번호는 유일한 값을 가져야 합니다.

refund_date string

필수

결제가 취소된 일시입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.

refund_transaction_id string

필수

엑심베이에서 취소된 거래를 구분하기 위해 발급한 고유한 아이디입니다.

payment object

order_id string

필수

취소하려는 거래의 주문번호(odrer_id)입니다. 동일한 주문번호를 넣어야 취소가 정상적으로 처리됩니다.

currency string

필수

결제에 사용한 통화 단위입니다. 자세한 내용은 통화 코드를 참고하세요.

amount string

필수

총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

transaction_id string

필수

엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

balance string

필수

취소 가능 금액입니다. (승인 금액 - 환불 금액)

auth_code string

승인번호입니다.

* 간편결제로 결제된 거래의 경우 승인번호가 존재하지 않습니다.

base_amount string

승인된 금액입니다.

* 일반적으로 amount 파라미터와 동일 값이 돌아오며, 자국통화기준 MCP의 경우 원화(KRW) 또는 달러(USD) 로 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

base_rate string

승인통화에 적용된 환율정보입니다.

currency 대비 base_currency 에 대한 환율로, 동일한 경우 1 이 돌아옵니다.

* 직가맹점은 매입데이터로 사용할 수 있습니다.

* 해외 결제 연동시 사용할 수 있습니다.

dcc_rate string

DCC 적용 환율 정보입니다.

base_currency 대비 foreign_currency 에 대한 환율로, 동일한 경우 1 이 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

foreign objcet

foreign_currency string

고객에게 청구될 통화 단위입니다.

* DCC의 경우 고객이 선택한 통화 단위가 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

foreign_amount string

고객에게 청구할 금액입니다.

* DCC의 경우 고객이 선택한 통화에 맞는 금액이 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

foreign_rate string

고객에게 청구한 금액에 적용된 환율정보입니다.

* currency 대비 foreign_currency 에 대한 환율로 동일한 경우 1 이 돌아옵니다.

* 해외 결제 연동시 사용할 수 있습니다.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
응답
                                                
    {
        "rescode": "0000",
        "resmsg": "Success.",
        "mid": "1849705C64",
        "refund": {
            "refund_amount": "1.00",
            "refund_id": "1849705C64",
            "refund_date": "20220922113927",
            "refund_transaction_id": "1849705C6420220922000014"
        },
        "payment": {
            "order_id": "20220922113330",
            "currency": "USD",
            "amount": "1.00",
            "transaction_id": "1849705C6420220922000013",
            "balance": "0.00",
            "base_amount": "1.00",
            "base_rate": "1.000000",
            "dcc_rate": "1.000000",
            "payment_method" : "P101"
        },
        "foreign": {
            "foregin_currency": "USD",
            "foregin_amount": "1.00",
            "foregin_rate": "0"
        }
    }
                                                    
                                                    

수동 매입

POST/v1/payments/{transaction_id}/capture

정산받고 싶은 결제를 transaction_id 로 엑심베이에 요청하세요.
요청 파라미터

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

lang string

필수
결제창에 지원되는 언어 코드입니다. 를 참고하세요.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
요청
                                                    
curl --request POST 'https://api-test.eximbay.com/v1/payments/{transaction_id}/capture' \
--header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
--header 'Content-Type: application/json' \
--data '{
    "mid" : "1849705C64",
    "payment" : {
        "order_id" : "20220902101716",
        "currency" : "USD",
        "amount" : "1",
        "lang" : "EN"
    }
}'
                                                    
                                                
응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

transaction_id string

필수
엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

lang string

필수
결제창에 지원되는 언어 코드입니다. 를 참고하세요.

captured_date string

필수
수동매입 요청에 대한 응답시간입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.

partially_cancelable string

부분취소 가능 여부입니다. Y , N 중 하나입니다. 보내지 않으면 N 이 기본으로 보내집니다.
Y

: 부분취소가 가능합니다.

N

: 부분취소가 불가능합니다.

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.
응답
                                                    
{
    "rescode": "0000",
    "resmsg": "Success.",
    "mid": "1849705C64",
    "payment": {
        "order_id": "20220922114007",
        "currency": "USD",
        "amount": "1",
        "transaction_id": "1849705C6420220922000016",
        "captured_date": "20220922114212",
        "allowed_pvoid": "Y"
    }
}
                                                    
                                                  

토큰 관리

토큰 결제

POST/v1/payments/tokenbilling/{token_id}/rebill

요청 파라미터

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

lang string

필수
결제창에 지원되는 언어 코드입니다. 를 참고하세요.

merchant object

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

shop string

상점명입니다. 가맹점명과 다를 경우 사용해주세요.

buyer object

name string

필수
구매자명입니다

phone_number string

구매자 전화번호입니다.

email string

필수
구매자 이메일 주소입니다. (결제완료 메일 발송을 위해 필요합니다.)

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

product array * 배열의 길이는 최대 3입니다.

name string

필수
주문한 상품의 상품명입니다.

quantity string

필수
주문한 상품의 수량입니다.

unit_price string

필수
주문한 상품의 상품별 단가입니다.

link string

필수
주문한 상품의 판매 링크입니다. 오픈마켓에서 발생한 주문의 경우 필수로 보내야 합니다.

surcharge array * 배열의 길이는 최대 3입니다.

name string

추가 금액의 항목명입니다. (e.g. 쿠폰할인, 배송비)

quantity string

추가된 항목의 수량입니다. 0보다 큰 숫자를 보내야 합니다.

unit_price string

추가된 항목의 단가입니다. , 는 포함할 수 없으며, 음수로 보낼 수 있습니다. (e.g. -100.50, 9.15)

ship_to object

city string

배송지 도시 정보입니다.

country string

배송지 국가 정보입니다. ISO 3166 두 자리 국가 코드 형식입니다.

first_name string

배송받는 사람의 이름입니다.

last_name string

배송받는 사람의 성입니다.

phone_number string

배송받는 사람의 연락처입니다. 국가번호가 포함될 수 있습니다.

postal_code string

배송지 우편번호입니다.

state string

배송지 주 정보입니다. 배송지가 미국(US) 또는 캐나다(CA)인 경우 사용할 수 있습니다. 지역 코드를 참고하세요.

street1 string

배송지 상세주소입니다.

bill_to object

city string

청구지 도시 정보입니다.

country string

배송지 국가 정보입니다. ISO 3166 두 자리 국가 코드 형식입니다.

first_name string

청구 카드 명의자 이름입니다.

last_name string

청구 카드 명의자 이름입니다.

phone_number string

청구 카드 명의자 연락처입니다. 국가번호가 포함될 수 있습니다.

postal_code string

청구지 우편번호입니다.

state string

청구지 주 정보입니다. 청구지가 미국(US) 또는 캐나다(CA)인 경우 사용할 수 있습니다. 지역 코드를 참고하세요.

street1 string

청구지 상세주소입니다.
요청

curl --request POST 'https://api-test.eximbay.com/v1/payments/tokenbilling/{token_id}/rebill' \
--header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
--header 'Content-Type: application/json' \
--data '{
    "payment" : {
        "order_id" : "20220902101716",
        "currency" : "USD",
        "amount" : "1"
    },
    "merchant" : {
        "mid" : "1849705C64"
    },
    "product" : [
        {
        "name" : "",
        "quantity" : "",
        "unit_price" : ""
        }
    ]
}

응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

errcode string

필수
에러 발생시 에러코드 입니다.

tokenbilling object

token_id string

필수
엑심베이에서 토큰 생성 요청에 의해 기 발급된 토큰 ID 입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

lang string

필수
결제창에 지원되는 언어 코드입니다. 를 참고하세요.

transaction_id string

필수
엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

auth_code string

필수
승인번호입니다.

transaction_date string

승인 일시입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.

payment_method string

결제수단 코드입니다. 결제수단 코드를 참고하세요. 결제 수단이 지정된 경우, 해당 결제 수단 페이지로 바로 이동합니다.

payment_method_name string

결제수단 명입니다.

access_country string

고객이 결제를 진행한 국가입니다. ISO 3166 두 자리 국가 코드 형식입니다.

pay_to string

청구할 가맹점명입니다.

merchant object

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

shop string

상점명입니다. 가맹점명과 다를 경우 사용해주세요.

buyer object

name string

필수
구매자명입니다

phone_number string

구매자 전화번호입니다.

email string

필수
구매자 이메일 주소입니다. (결제완료 메일 발송을 위해 필요합니다.)

other_param object

param1 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

param2 string

가맹점이 필요한 경우 사용할 수 있는 예비 파라미터입니다. 최대 길이는 255자입니다.

product array * 배열의 길이는 최대 3입니다.

name string

필수
주문한 상품의 상품명입니다. 여러 상품을 주문할 경우 첫 상품명이 사용됩니다.

card_info object

card_holder string

카드 명의자 이름입니다.

card_number1 string

조회한 거래에 사용된 카드의 앞 4자리 번호입니다.

card_number4 string

조회한 거래에 사용된 카드의 마지막 4자리 번호입니다.

dm object

dm_decision string

DM Process의 상태입니다. 아래와 같은 상태 코드를 확인할 수 있습니다.
ACCEPT

: DM Process 위험 검토 후 거래 승인

REJECT

: DM Process 위험 검토 후 거래 실패

REVIEW

: DM Process 위험 검토 후 승인될 수 있으나, 위험 거래여부 확인이 필요한 상태

ERROR

: DM Process 실패

dm_reject string

REJECT Rule 코드입니다. Rule 코드는 I 로 구분되며, 별도로 제공됩니다.

dm_review string

REJECT Rule 코드입니다. Rule 코드는 I 로 구분되며, 별도로 제공됩니다.

token_id string

토큰 생성 요청에 의해 생성된 토큰 ID 입니다.

* 토큰결제 연동시 사용할 수 있습니다.

token_creation string

해외발급카드의 간편 결제를 위해 토큰 생성 요청 여부를 알 수 있습니다.

* 토큰 생성 요청시 전달된 파라미터를 리턴합니다.

응답

{
    "rescode" : "0000",
    "resmsg" : "Success.",
    "payment" : {
        "order_id" : "20220902101716",
        "currency" : "USD",
        "amount" : "1",
        "transaction_id" : "EN",
        "auth_code" : "EN",
        "transaction_date" : "EN",
        "access_country" : "EN",
        "payment_method" : "EN",
        "pay_to" : "EN",
        "lang" : "EN",
        "payment_method_name" : "EN"
    },
    "card_info" : {
        "card_holder" : "HONG GIL DONG",
        "card_number1" : "4111",
        "card_number4" : "1111"
    }
}

토큰 삭제

POST/v1/payments/tokenbilling/{token_id}/delete

생성된 토큰을 token_id 로 삭제합니다.
응답 파라미터

rescode string

필수
응답 코드입니다. 최대 길이는 4자입니다.

resmsg string

필수
응답 코드에 대한 설명입니다. 최대 길이는 700자입니다.
응답

{
    "rescode": "0000",
    "resmsg": "Success."
}

토큰 카드 식별값 조회

GET/v1/payments/tokenbilling/{token_id}

생성된 토큰의 카드 식별값을 조회합니다.
요청 파라미터
요청

curl --request GET 'https://api-test.eximbay.com/v1/payments/tokenbilling/{token_id}' \
--header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
--header 'Content-Type: application/json; charset=UTF-8' \
--data '{
}'


응답 파라미터

rescode string

필수
응답 코드입니다. 최대 길이는 4자입니다.

resmsg string

필수
응답 코드에 대한 설명입니다. 최대 길이는 700자입니다.

token_id string

필수
토큰 생성 요청에 의해 생성된 토큰 ID 입니다. 최대 길이는 20자입니다.

card_identifier string

필수
토큰 생성을 위해 결제에 사용한 카드 정보를 식별할 수 있는 식별값입니다. 최대 길이는 64자입니다.
응답

{
    "rescode": "0000",
    "resmsg": "Success.",
    "token_id": "",
    "card_identifier": ""
}

자동 결제

자동 결제 해지

POST/v1/payments/recurring/{recurring_id}/delete

등록된 자동결제를 recurring_id로 해지합니다.
응답 파라미터

rescode string

필수
응답 코드입니다. 최대 길이는 4자입니다.

resmsg string

필수
응답 코드에 대한 설명입니다. 최대 길이는 700자입니다.
응답

{
    "rescode" : "0000",
    "resmsg" : "Success."
}

자동 결제 정보 변경

POST/v1/payments/recurring/{recurring_id}/adjust

등록된 자동결제를 recurring_id로 정보 변경합니다.
요청 파라미터

adjust_amount string

필수
자동결제 총 금액입니다.
전체 자릿수는 10이고, 소수 자릿수는 2. (예시 - 10.50, 9.15)
금액 3자리 구분 ,는 사용하지 않습니다.
요청

curl --request POST 'https://api-test.eximbay.com/v1/payments/recurring/{recurring_id}/adjust' \
--header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
--header 'Content-Type: application/json; charset=UTF-8' \
--data '{
    "adjust_amount" : "10.50"
}'

응답 파라미터

rescode string

필수
응답 코드입니다. 최대 길이는 4자입니다.

resmsg string

필수
응답 코드에 대한 설명입니다. 최대 길이는 700자입니다.
응답

{
    "rescode" : "0000",
    "resmsg" : "Success."
}

정산 확정

POST/v1/payments/{transaction_id}/settle

정산 확정하고 싶은 결제를 transaction_id 로 엑심베이에 요청하세요.

Note. 1 - 거래기준으로 정산확정 되는 일반적인 구조와 달리, 가맹점에서 올려주는 settle 기준으로 정산 확정하는 기능입니다.
Note. 2 - 별도의 가맹점 설정이 필요합니다.

요청 파라미터

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.
요청

curl --request POST 'https://api-test.eximbay.com/v1/payments/{transaction_id}/settle' \
--header 'Authorization: Basic dGVzdF8xODQ5NzA1QzY0MkMyMTdFMEIyRDo=' \
--header 'Content-Type: application/json' \
--data '{
    "mid" : "1849705C64",
    "payment" : {
        "order_id" : "20220902101716",
        "currency" : "USD",
        "amount" : "1"
    }
}'

응답 파라미터

rescode string

필수
응답 코드입니다.

resmsg string

필수
응답 코드에 대한 설명입니다.

mid string

필수
엑심베이에서 가맹점을 구분하기 위해 발급한 고유 가맹점 ID입니다.

payment object

order_id string

필수
가맹점에서 주문 건을 구분하기 위해 발급한 유일한 값입니다. 실패한 주문에 같은 값을 사용할 수 없습니다.

transaction_id string

필수
엑심베이에서 결제 내역을 구분하기 위해 발급한 고유 ID입니다.

currency string

필수
결제에 사용한 통화 단위입니다 . 자세한 내용은 통화 코드를 참고하세요.

amount string

필수
총 결제 금액입니다. , 는 사용할 수 없으며, 0보다 큰 숫자만 보낼 수 있습니다.

settled_date string

필수
정산 확정 일시 입니다. YYYYMMDDHHMMSS 형식으로 돌아옵니다.
응답

{
    "rescode": "0000",
    "resmsg": "Success.",
    "mid": "1849705C64",
    "payment": {
        "order_id": "20220922114007",
        "currency": "USD",
        "amount": "1",
        "transaction_id": "1849705C6420220922000016",
        "settled_date": "20220922114212"
    }
}