order
EVENT order
order.placed, order.updated, order.status_changed, order.cancelled, order.completed, order.refunded
Trigger
data is the order exactly as GET /orders/{id} returns it. order.cancelled
adds reason. Every delivery carries webhook-id, webhook-timestamp and,
when a signing secret is set, webhook-signature (Standard Webhooks) and
X-NextRestaurant-Signature. Answer 2xx within 5 seconds; anything else is
retried after 1m, 5m, 30m, 2h, 6h, 12h and 24h, with the same webhook-id.
Answer 410 to stop deliveries to this URL for that event.
Payload
{
"id": "msg_7c1e0f3a9b2d4c6e8f0a1b2c3d4e5f60",
"type": "order.placed",
"event": "string",
"data": {
"id": 1,
"order_number": "ORD-000591",
"location_id": 1,
"customer_id": 1,
"table_id": 1,
"channel": "web",
"source": "string",
"status": "placed",
"fulfillment_status": "in_kitchen",
"guest_count": 1,
"subtotal": 1.5,
"discount_total": 1.5,
"tax_total": 1.5,
"service_charge": 1.5,
"tip_total": 1.5,
"delivery_fee": 1.5,
"grand_total": 1.5,
"currency": "string",
"notes": "string",
"scheduled_for": "string",
"placed_at": "string",
"completed_at": "string",
"cancelled_at": "string",
"cancel_reason": "string",
"created_at": "string",
"updated_at": "string",
"items": [
{
"id": 1,
"item_id": 1,
"variation_id": 1,
"name_snapshot": "Margherita Pizza (Large)",
"qty": 1.5,
"unit_price": 1.5,
"modifiers_total": 1.5,
"discount_amount": 1.5,
"line_total": 1.5,
"status": "pending",
"seat_number": 1,
"notes": "string"
}
],
"payments": [
{
"id": 1,
"order_id": 1,
"location_id": 1,
"method": "cash",
"amount": 1.5,
"tip_amount": 1.5,
"refunded_total": 1.5,
"currency": "string",
"status": "captured",
"reference": "string",
"paid_at": "string",
"created_at": "string",
"updated_at": "string"
}
]
},
"timestamp": "2026-01-01T12:00:00Z"
}
See also
- Webhook events — envelope, signing and delivery