Kakao Pay
Kakao Pay simple payment integration guide
1. Configure Kakao Pay simple payment PG settings
Refer to the Kakao Pay settings page to configure the PG settings.
2. Request payment
To open the payment window, call JavaScript SDK IMP.request_pay(param, callback).
In PC browsers, callback is invoked after calling IMP.request_pay(param, callback)
.
In mobile browsers, the page is redirected to m_redirect_url.
Javascript SDKIMP.request_pay( { pg: "kakaopay", pay_method: "card", // Can be omitted merchant_uid: "{Merchant created Order ID}", //Example: order_no_0001 name: "Order name: Test payment", amount: 14000, buyer_email: "iamport@siot.do", buyer_name: "Customer name", buyer_tel: "010-1234-5678", buyer_addr: "Samseong-dong, Gangnam-gu, Seoul", buyer_postcode: "123-456", m_redirect_url: "{URL to redirect to after payment approval}", //Example: http://yourservice.com/payments/complete }, function (rsp) { // callback logic //* ...Omitted... *// }, );
Key parameter description
pg
* string
PG code
- If not specified and this is the only PG setting that exists,
default PG
is automatically set. - If there are multiple PG settings, set to
kakaopay
.
pay_method
string
Payment method code
Can be omitted
(Overwritten by the option(credit card or Kakao money) selected in Kakao Pay app)
merchant_uid
* string
Order ID
Must be unique for each request.
amount
* integer
Payment amount
Must be an integer (not string)
Kakao Pay payment window example
To open subscription payment window, specify the customer_uid parameter.
amount
- If requesting both billing key and initial payment, specify the payment amount.
- If only requesting for billing key, set to 0.
Javascript SDKIMP.request_pay( { pg: "kakaopay", merchant_uid: "{Merchant created Order ID}", // Example: issue_billingkey_monthly_0001 name: "Order name: Billing key request test", amount: 0, // For display purpose only (set actual amount to also request payment approval). customer_uid: "{Unique ID for the card (billing key)}", // Required (Example: gildong_0001_1234) buyer_email: "johndoe@gmail.com", buyer_name: "John Doe", buyer_tel: "02-1234-1234", m_redirect_url: "{Mobile only - URL to redirect to after payment approval}", // Example: https://www.my-service.com/payments/complete/mobile }, function (rsp) { if (rsp.success) { alert("Success"); } else { alert("Failed"); } }, );
Key parameter description
pg
* string
PG code
- If not specified and this is the only PG setting that exists,
default PG
is automatically set. - If there are multiple PG settings, set to
kakaopay
.
customer_uid
* string
Credit card billing key
Billing key to be mapped 1:1 with the user-entered credit card information.
amount
* Integer
Payment amount
0: only billing key, > 0: billing key + initial payment\
Request payment with billing key (customer_uid)
After successfully getting the billing key, the billing key is stored on the iโmport server
mapped 1:1 with the specified customer_uid
.
For security reasons, the server cannot directly access the billing key.
Subsequent payments can be requested by calling
the non-authenticated payment request REST API
with the customer_uid
as follows:
sever-sidecurl -H "Content-Type: application/json" \ -X POST -d '{"customer_uid":"your-customer-unique-id", "merchant_uid":"order_id_8237352", "amount":3000}' \ https://api.iamport.kr/subscribe/payments/again
Kakao Pay simple payment is processed in mobile Kakao App.