Order webhook events
The data you receive when an order is created, transitions states, or is cancelled.
1 min read Updated 5/28/2026developer
order.created
Fired immediately after POST /api/public/[tenantId]/orders succeeds.
JSON
{
"id": "evt_2025_05_28_001",
"type": "order.created",
"createdAt": "2026-05-28T14:32:11Z",
"tenantId": "luigi-pizza",
"data": {
"orderId": "ord_abc123",
"orderNumber": "0042",
"type": "delivery",
"status": "pending",
"paymentStatus": "pending",
"total": 28.75,
"customerEmail": "alex@example.com",
"items": [
{ "productId": "p_marg", "productName": "Margherita", "quantity": 2, "price": 12.5 }
]
}
}order.status_changed
Fired on every status transition: pending → accepted → preparing → ready → delivered. Includes both the new and previous status.
JSON
{
"type": "order.status_changed",
"data": {
"orderId": "ord_abc123",
"previousStatus": "preparing",
"status": "ready",
"transitionedAt": "2026-05-28T14:47:02Z",
"actor": "restaurant"
}
}order.canceled
Fired when the customer self-cancels (during the grace period) or the restaurant rejects/cancels the order. Includes the refund amount + reason.