Skip to content

Buy Now, Pay Later Fresh

Buy now, pay later (BNPL) methods let customers pay in installments over time. You're paid immediately and in full — your customers pay nothing or a portion at purchase time.

Use cases

  • Retail — high-value items (luxury goods, travel) to increase conversion
  • Low-value retail — increase average cart size and reach customers without credit cards
  • B2B — businesses spreading invoice payments

Get started

You don't need to integrate BNPL methods individually. Enable dynamic payment methods and manage them in Dashboard → Settings → Payment Methods. Stripe displays the most relevant methods for each customer automatically.

BNPL customer flow

  1. Customer selects a BNPL option at checkout (e.g., Klarna, Affirm)
  2. Customer creates or logs into an account with the BNPL provider
  3. Customer accepts or declines repayment terms
  4. Customer returns to your site — you receive full payment immediately

All BNPL methods require a redirect — the customer leaves your page briefly to authenticate with the provider.

Supported BNPL methods

MethodAPI enumRecurringManual capture
AffirmaffirmLimitedYes
Afterpay / Clearpayafterpay_clearpayNoYes
AlmaalmaNoYes
KlarnaklarnaLimitedYes
ZipzipNoYes

Accept BNPL payments

javascript
// BNPL methods appear automatically via dynamic payment methods
const session = await stripe.checkout.sessions.create({
  line_items: [{ price: 'price_1234', quantity: 1 }],
  mode: 'payment',
  success_url: 'https://example.com/success',
  cancel_url: 'https://example.com/cancel',
});

Via Payment Intents

javascript
const paymentIntent = await stripe.paymentIntents.create({
  amount: 5000,
  currency: 'usd',
  payment_method_types: ['klarna'],
});

Refunds

BNPL refunds work the same as card refunds via the API:

bash
curl https://api.stripe.com/v1/refunds \
  -u "sk_test_YOUR_KEY:" \
  -d payment_intent=pi_123

Note: Refund timing and behavior may differ from card payments. Disputes and chargebacks are handled differently per provider.

Subscriptions

BNPL support for recurring payments is limited:

  • Klarna and Affirm support subscriptions with send_invoice collection method
  • Afterpay/Clearpay doesn't support subscriptions

Verify subscription support before offering BNPL for recurring products.

Stripe API Reference - Self-contained docs reference, refreshed 2026-05-18