Skip to main content
POST
Create Order

Authorizations

Authorization
string
header
required

Bearer token authentication

Query Parameters

cart_token
string
required

Token of the cart to create order from

Body

application/json
expected_total
string

The cart total the client showed the operator, as a decimal string in the cart currency's major unit ("141.74"). Requires expected_currency. When the cart's total differs at the charge boundary the response is 409 with meta.code = cart_total_changed and nothing is charged.

Not nullable, unlike its siblings here: half a pair is a 422, so an explicit null for either field has no meaning. Omit both to leave the total unpinned. Matches checkout-v2026-04 and public-v2025-06.

Pattern: ^\d{1,12}(\.\d{1,5})?$
Example:

"141.74"

expected_currency
string

ISO 4217 code of the currency shown. Requires expected_total. Not nullable, for the reason given there.

Example:

"USD"

accepted_agreement_ids
integer[] | null

Ids of the agreements the shopper accepted, from the cart's agreements array. Required in practice for a company with REQUIRED_AGREEMENT_CONSENT_ENFORCEMENT enabled: checkout refuses with 422 and errors.agreements when any agreement the cart marks required is missing from this list. Omit it for any other company and nothing changes.

Example:
order
object | null

Response

object | null

Order created

order
object | null
meta
object | null