Skip to main content
Checkout sessions are one buyer attempt to pay or start a subscription through Ionic checkout. Create them from your backend, send the buyer to hosted checkout or continue an embedded checkout flow, then retrieve the session to check the result. The exact request and response payloads live on the generated endpoint pages.

Endpoints

Notes

  • line_items is required when creating a session.
  • mode: payment accepts either catalog-backed items with price_id or inline items with name, amount, and currency.
  • mode: subscription requires recurring catalog prices. Recurring items must share one currency and billing cadence.
  • Hosted checkout confirms payment or activates the subscription for you. Do not call the merchant confirm endpoint from a hosted integration.
  • POST /v1/checkout/sessions/{id}/confirm takes no JSON body and does not support subscription-mode sessions.
  • Quantity and optional-item mutations only apply while a session is open and before the payment intent is attached.
  • Hosted checkout URLs are buyer-facing capability URLs. Merchant API keys should stay on your server.
  • Treat redirects as user-experience signals. Verify server-side state before fulfillment.