Converts a cart into an order and initiates payment.
The response includes provider-specific payment data depending on payment_method:
payment object with client_secret and payment_intent_id for Stripe.jstoss_payment object with order info for TossPayments SDKAPI Key. Example: sk_live_xxxxx or pk_live_xxxxx
Resource ID
Buyer email. Required for Guest Checkout (no customer_id). For logged-in customers, the customer email is used if omitted.
Payment provider to use.
manual — No online payment. Admin records payment later via dashboard.stripe — Creates a Stripe PaymentIntent. Returns payment.client_secret for client-side Stripe.js confirmation.tosspayments — Returns toss_payment object for client-side TossPayments SDK. After client approval, call POST /storefront/payments/confirm.manual, stripe, tosspayments Optional note from the buyer
Custom key-value data
Created
Order object with additional payment initialization data. Extends the standard Order schema with provider-specific fields.
draft, pending, confirmed, processing, completed, cancelled unpaid, awaiting_payment, partially_paid, paid, partially_refunded, refunded unfulfilled, partially_fulfilled, fulfilled, returned Stripe payment data. Only present when payment_method is stripe.
TossPayments payment data. Only present when payment_method is tosspayments.