Skip to content

Order Detail

Returns the complete order-view payload for a single order — the data behind the admin Sales → Orders → View screen.

Endpoint

EndpointMethod
/api/admin/orders/{id}GET

What's embedded

Unlike the listing, the detail embeds every relation inline — one request returns the whole screen:

  • Flat order fields + totals (grand / sub / tax / discount / shipping, invoiced and refunded variants, total due, with formatted* strings) plus paymentMethod / paymentTitle.
  • customer (with group), billingAddress, shippingAddress (each address includes vatId).
  • items — each with type (simple, configurable, bundle, downloadable, grouped, virtual) and type-specific data in additional, child, children, downloadableLinks. Switch on type to render.
  • invoices, shipments, refunds — the order's documents.
  • comments — the order's comment thread, newest first, each with comment, customerNotified, createdAt. (Add a comment with POST /api/admin/orders/{id}/comments.)

Eager-loading everything for one order is bounded (~constant query count, measured ~20 ms), so no sub-resource round trips are needed.

Product-type-aware items

The frontend reads item.type and renders accordingly:

typeType-specific data
simple, virtual
configurablechild — the chosen variant; additional.super_attribute
bundlechildren — bundle selections; additional.bundle_options
groupedchildren — grouped sub-items
downloadabledownloadableLinks — purchased links

Every /api/admin/* request requires an admin Bearer token.

Released under the MIT License.