Skip to main content
POST
Create an order

Authorizations

x-api-key
string
header
required

Your Store API key (pk_live_...). Create it in Developers › API keys.

x-store-hash
string
header
required

The ID of the store the request is for. Shown in Developers › API keys.

Headers

Idempotency-Key
string

Unique key (for example a UUID) that makes retries safe. The first response is stored for 24 hours and replayed for retries with the same key and body.

Maximum string length: 255

Body

application/json
customer_email
string<email>
required

Buyer email. Receives the invoice email and the delivery.

Example:

"buyer@example.com"

items
object[]
required

1–50 lines. Prices come from your catalogue; you cannot set them.

Required array length: 1 - 50 elements
delivery_email
string<email>

Send the delivery to a different address.

coupon_code
string

Applied if valid for these products. An invalid coupon is ignored.

Example:

"SUMMER10"

currency
string

Must match the products' currency. Defaults to it.

Example:

"USD"

expected_total_cents
integer

Optional safety check. If the server total differs by more than 1 cent, the call fails with TOTAL_MISMATCH.

custom_fields
object

Answers to your checkout fields, keyed by field key.

shipping_address
object
shipping_rate_id
integer

Rate from POST /shipping/quote. Without it the cheapest rate is used.

customer_ip
string

Buyer's IP address. Enables your fraud, VPN and blocklist rules for this order.

Example:

"203.0.113.10"

affiliate_code
string

Partner link code to credit (affiliate programme).

Example:

"alex"

send_email
boolean
default:true

Send the invoice email to the customer.

metadata
object

Up to 20 keys (≤40 chars) with string values (≤500 chars). Returned on the order and in webhooks of your systems.

Example:

Response

Order created

success
boolean
required
Example:

true

invoice
object