Skip to main content
Cancels an order for the authenticated customer. Fire spark updates order and fulfillment statuses, stops a running fulfillment workflow if one is in progress, and notifies connected integrations so the POS can void the ticket. The order row stays in place with status: VOIDED (nothing charged) or status: REVERSED (something was charged, even if a device already gave it back). Its tenders end CANCELLED. It is not deleted.
Requires a Storefront API access token from Token exchange.
In @fire-spark/storefront, call order.cancel(). It reads the order, decides VOID or REVERSE, voids the device charges and calls this endpoint once with the results. A delivered order throws: use order.refund(). order.cancelOrder() still calls this endpoint without a body.
Cancel is rejected once the order is fulfilled. Use Refund order within 24 hours of fulfillment instead.

Path parameters

Request body

Optional. Without a body the call works as before. Each field is checked only when sent. An order already VOIDED or REVERSED answers 200 and only takes the reported tenders, so a device that voids a charge later can report it with the same call.

Request

Response

Returns 200 with the voided or reversed order.
If the order was already sent to the POS via order.status.changed, your integration should also receive an order.voided or order.reversed webhook so the kitchen ticket can be voided.

Error responses