Skip to main content
POST
Create Checkout

Headers

X-Site-ID
string
required
X-Stella-Token
string | null

Body

application/json

Schema for creating checkout.

cart_id
string<uuid>
required
email
string<email>
required
shipping_address
AddressSchema · object
required

Schema for address. Fields are optional to support simpler address formats from AI widget.

billing_address
AddressSchema · object | null

Schema for address. Fields are optional to support simpler address formats from AI widget.

shipping_rate_id
string<uuid> | null

Response

Successful Response

Returned ONLY from POST /api/storefront/checkout.

Layers access_token (the freshly-minted chk_… Bearer for the checkout-web SPA) on top of the standard CheckoutResponse. The plaintext is shown EXACTLY ONCE; subsequent reads via GET /api/storefront/checkout/{id} use the Authorization header and never echo the token back.

id
string<uuid>
required
cart_id
string<uuid>
required
email
string
required
shipping_address
AddressSchema · object
required

Schema for address. Fields are optional to support simpler address formats from AI widget.

billing_address
AddressSchema · object
required

Schema for address. Fields are optional to support simpler address formats from AI widget.

items
CartItemResponse · object[]
required
subtotal
string
required
Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
tax_amount
string
required
Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
shipping_amount
string
required
Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
total
string
required
Pattern: ^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$
currency
string
required
status
string
required
created_at
string<date-time>
required
updated_at
string<date-time>
required
access_token
string
required
access_token_expires_at
string<date-time>
required
payment_intent_id
string | null
order_id
string<uuid> | null
completed_at
string<date-time> | null