lines and totals. Use this before checkout so the channel can show per-line problems (price changes, unavailable products, closed menu, and similar) without trusting client-side money.
Requires a Storefront API access token from Token
exchange. Send the current draft
(scope + lines + totals), not only a persisted order id — unsynced client
edits are validated too.
@fire-spark/storefront, call order.validateOrder(). On failure it throws
OrderValidationError with the same issues and lines payload described
below.
Request body
Request
Success response
Returns200 when every check passes.
Validation failure (422)
When at least one check fails, the API returns 422 with:
expected / actual are decimal strings when present.
Order-level issue codes (details.issues)
Redeem issue codes
These come indetails.issues for order redeems (field is redeem.N.…) and in details.lines[uid] for line redeems.
Line-level issue codes (details.lines[uid])
Other error responses
Related
Get menus
Fresh menu for the same scope
Update order
Sync lines after the customer fixes the cart
Placing orders
Full checkout journey