Set up future payments with Kakao Pay
Learn how to save Kakao Pay to charge your customers later.
Save Kakao Pay payment details using Checkout, our fully hosted checkout page.
Learn how to set up a subscription with Kakao Pay to create recurring payments after saving a payment method in Checkout.
Set up StripeServer-side
First, you need a Stripe account. Register now.
Use our official libraries for access to the Stripe API from your application:
Get permission to save Kakao Pay as a payment methodServer-side
You need permission to save your customer’s payment method for future use. Creating an agreement (sometimes called a mandate) up front allows you to save your customer’s payment details and charge them when they’re not actively using your website or app.
Add terms to your website or app that state how you plan to save your customer’s payment method details, and let them opt in. If you plan to charge your customer when they’re offline, make sure that your terms also include the following:
- The customer’s permission for you to initiate a payment or a series of payments on their behalf for specified transactions
- The anticipated frequency (one-time or recurring) and timing of payments
- How you determine the payment amount
- Your cancellation policy (if you’re setting up the payment method for a subscription service)
Make sure that you keep a record of your customer’s written agreement to these terms, and only submit charges in accordance with the agreed terms.
Create or retrieve a CustomerServer-side
To reuse a Kakao Pay payment method for future payments, attach it to a Customer.
Create a Customer object when your customer creates an account with your business, and associate the ID of the Customer object with your own internal representation of that customer. Alternatively, you can create a new Customer before saving a payment method for future payments.
Create a new Customer or retrieve an existing Customer to associate with this payment. Include the following code on your server to create a new Customer:
Create a Checkout SessionServer-side
Your customer must authorize you to use their NicePay account for future payments through Stripe Checkout. This allows you to accept Kakao Pay payments. Add a checkout button to your website that calls a server-side endpoint to create a Checkout Session.
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
Create a Checkout Session in setup
mode to collect the required information. After creating the Checkout Session, redirect your customer to the URL that the response returns.
Test your integration
When testing your Checkout integration, select Kakao Pay and click Pay. You will be redirected to a Stripe-hosted page where you can choose to authorize or fail the payment. See more details here for how to test redirect based payment methods.