# Accept a payment using Kakao Pay in South Korea

Learn how to accept payments from Kakao Pay users.

# Checkout


Integrating with [Kakao Pay](https://www.kakaopay.com/) enables South Korea-based customers to pay using this popular local payment method.

When a customer makes a payment, we redirect them to our local processor partner to authenticate and authorize the payment. After the customer authorizes the payment, Stripe redirects them back to your site.

> Kakao Pay isn’t available in Singapore.

## Determine compatibility

**Supported business locations**: AT, BE, CY, DE, DK, EE, ES, FI, FR, GB, GR, HK, HR, HU, IE, IT, JP, LT, LU, LV, MT, NL, PT, SE, SI, SK, US

**Supported currencies**: `krw`

**Presentment currencies**: `krw`

**Payment mode**: Yes

**Setup mode**: Yes

**Subscription mode**: Yes

[A Checkout Session](https://docs.stripe.com/payments/checkout/how-checkout-works.md) must satisfy all of the following conditions to support South Korean payment methods:

- *Prices* (Prices define how much and how often to charge for products. This includes how much the product costs, what currency to use, and the interval if the price is for subscriptions) for all line items must be expressed in Korean won (currency code `krw`).
- The minimum amount accepted is 100 KRW. There is no maximum limit for card passthrough transactions, while the maximum amount that a customer can top up to their Kakao Pay account as stored value is 2,000,000 KRW.

## Accept a Kakao Pay payment

Enable Kakao Pay by making the following updates to your integration.

When creating a [Checkout Session](https://docs.stripe.com/api/checkout/sessions.md), you must do the following:

- [Enable Kakao Pay](https://dashboard.stripe.com/settings/payment_methods) in your Dashboard. Stripe automatically displays Kakao Pay to eligible customers using [dynamic payment methods](https://docs.stripe.com/payments/payment-methods/dynamic-payment-methods.md). If you currently specify `payment_method_types`, see the [migration guide](https://docs.stripe.com/payments/dashboard-payment-methods.md).
- Make sure all `line_items` use the `krw` currency.
- Provide the customer’s email address.

#### Stripe-hosted page

```curl
curl https://api.stripe.com/v1/checkout/sessions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "line_items[0][price_data][currency]=krw" \
  -d "line_items[0][price_data][product_data][name]=T-shirt" \
  -d "line_items[0][price_data][unit_amount]=2000" \
  -d "line_items[0][quantity]=1" \
  -d mode=payment \
  --data-urlencode "success_url=https://example.com/success"
```

#### Full embedded page

```curl
curl https://api.stripe.com/v1/checkout/sessions \
  -u "<<YOUR_SECRET_KEY>>:" \
  -d "line_items[0][price_data][currency]=krw" \
  -d "line_items[0][price_data][product_data][name]=T-shirt" \
  -d "line_items[0][price_data][unit_amount]=2000" \
  -d "line_items[0][quantity]=1" \
  -d mode=payment \
  --data-urlencode "return_url=https://example.com/return" \
  -d ui_mode=embedded_page
```

## Test your integration with Kakao Pay

While testing your Checkout integration, select **Kakao Pay** and click **Pay**. This redirects you to a Stripe-hosted page where you have the choice to authorize or fail the payment. If you authorize the payment, the PaymentIntent switches from `requires_action` to `succeeded`. Failing the test payment makes the PaymentIntent switch from `requires_action` to `requires_payment_method`. Learn more about how to [test](https://docs.stripe.com/testing.md#redirects) redirect-based payment methods.

