API-Referenz-Navigation
Storefront Orders
StorefrontStorefront Orders groups 1 operation on the storefront tier.
Storefront tier. Reachable anonymously; a public vnstss_ token may be sent to identify the storefront.
/api/{version}/orders/{id}
The placed order. 404 when the id is unknown, the hash does not match, or the id names a cart that was never submitted. All three answer the same way on purpose: a differentiated response would turn this into an order-id oracle.
vnstss_ token may be sent to identify the storefront.Pfad-Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| id erforderlich | string (uuid) |
Query-Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| hash optional | string |
Antworten
- 200StorefrontOrderResponseOK
- 404ApiErrorResponseNot Found
curl -X GET \
'https://<your-shop-domain>/api/2026-04-01/orders/<id>' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer vnstss_<token>'{
"order": {
"id": "00000000-0000-0000-0000-000000000000",
"number": "string",
"status": "string",
"date": "2026-04-01T12:00:00Z",
"currency": "string",
"price_includes_tax": true,
"line_items": [
{
"id": "00000000-0000-0000-0000-000000000000",
"variant_id": "00000000-0000-0000-0000-000000000000",
"product_id": "00000000-0000-0000-0000-000000000000",
"title": "string",
"sku": "string",
"description": "string",
"quantity": 1,
"unit_price": 1,
"unit_price_with_tax": 1,
"line_total": 1
}
],
"subtotal": 1,
"discount": 1,
"discount_code": "string",
"shipping_amount": 1,
"shipping_method_name": "string",
"total": 1,
"comments": "string",
"payment_type": "string",
"tracking_url": "string",
"shipping_address": {
"id": "00000000-0000-0000-0000-000000000000",
"first_name": "string",
"last_name": "string",
"company": "string",
"department": "string",
"vat_number": "string",
"street": "string",
"po_box": "string",
"zip_code": "string",
"location": "string",
"email": "string",
"phone_number": "string",
"mobile_number": "string",
"country_code": "string",
"country_name": "string"
},
"billing_address": {
"id": "00000000-0000-0000-0000-000000000000",
"first_name": "string",
"last_name": "string",
"company": "string",
"department": "string",
"vat_number": "string",
"street": "string",
"po_box": "string",
"zip_code": "string",
"location": "string",
"email": "string",
"phone_number": "string",
"mobile_number": "string",
"country_code": "string",
"country_name": "string"
}
}
}Schemas
ApiErrorResponse
The error envelope every non-2xx response from this API uses. Documentation shape: actions build it as an anonymous object, so this type exists to give the OpenAPI document a schema to point at.
errorsstringnullableHuman-readable description of what went wrong, e.g.
Not Found,Invalid page_info.codestringnullableMachine-readable error code. Only a few endpoints (checkout) emit one; omitted everywhere else.
StorefrontCheckoutAddressDto
idstring (uuid)nullablefirst_namestringnullablelast_namestringnullablecompanystringnullabledepartmentstringnullablevat_numberstringnullableCompany VAT / UID number, when the tenant collects one at checkout.
streetstringnullablepo_boxstringnullablezip_codestringnullablelocationstringnullableemailstringnullablephone_numberstringnullablemobile_numberstringnullablecountry_codestringnullablecountry_namestringnullable
StorefrontOrderDto
Versioned (2026-04-01) storefront representation of a placed order — the receipt.
Everything here is the order as charged: line prices are the ones the buyer paid, not the
catalog's current ones, so a later price change never rewrites a past receipt. Money is decimal in
currency; price_includes_tax says whether the figures are gross.
idstring (uuid)numberstringnullableThe shop's own order number. Null only for an order placed before one was assigned.
statusstringnullableFulfilment status, e.g.
Open. Same vocabulary asGET /customers/me/orders.datestring (date-time)currencystringnullableprice_includes_taxbooleanWhen true, the line and total figures below are tax-inclusive.
subtotalnumber (double)Sum of the lines before the order-level discount.
discountnumber (double)discount_codestringnullableThe coupon applied at checkout, or
null.shipping_amountnumber (double)shipping_method_namestringnullabletotalnumber (double)Payable total, rounded the way the shop rounds this currency.
commentsstringnullablepayment_typestringnullableThe payment method the buyer chose, e.g.
Invoice. Null when none was recorded.tracking_urlstringnullableCarrier tracking URL, once the shop has entered one. Null until the order ships — poll this read, there is no webhook for it.
shipping_addressStorefrontCheckoutAddressDtobilling_addressStorefrontCheckoutAddressDto
StorefrontOrderLineDto
One line of a placed order. id addresses the line itself; product_id and
variant_id point back into the catalog, and either may be null for a line whose product has
since been deleted — a receipt outlives the catalog entry it was cut from.
idstring (uuid)variant_idstring (uuid)nullableThe variant (article) ordered — the id
POST /cart/itemstakes, for a re-order.product_idstring (uuid)nullableThe product the variant belongs to.
titlestringnullableskustringnullabledescriptionstringnullablequantitynumber (double)unit_pricenumber (double)Net unit price as charged.
unit_price_with_taxnumber (double)Gross unit price as charged.
line_totalnumber (double)Line total, following the order's
price_includes_taxbasis.
StorefrontOrderResponse
Envelope returned by GET /orders/{id} and GET /customers/me/orders/{id} — the same
order shape whichever door the caller came in through.
orderStorefrontOrderDto
