Last verified: 2026-05-19
Manage orders
View, filter, and update customer orders—including status changes, cancellations, refunds, and special queue/schedule handling.
Who can do this
| Role | Access |
|---|---|
| Admin | Full |
| Staff | Same UI when order/POS permissions granted — use /staff/orders instead of /admin/orders |
Staff without order access: see Understand staff permissions.
Dashboard paths
| Role | Route |
|---|---|
| Admin list | /admin/orders |
| Admin detail | /admin/orders/[id] |
| Staff list | /staff/orders |
| Staff detail | /staff/orders/[id] |
Page title uses industry terminology (e.g. Orders, Bookings for hotel). Hotel tenants may use the hotel bookings client instead of the standard orders table.
Order statuses
| Status | Typical meaning |
|---|---|
| Pending | Received, not yet confirmed |
| Confirmed | Accepted for fulfillment |
| Preparing | In production/kitchen |
| Ready | Ready for pickup/handoff |
| Served | Delivered to table/guest (F&B) |
| Completed | Closed successfully |
| Cancelled | Stopped; requires reason |
Payment statuses (list/detail badges)
Pending · Paid · Failed · Refunded
Filters (list view)
- Status: All Status, Pending, Confirmed, Preparing, Ready, Served, Completed, Cancelled
- Order type: all, delivery, pickup, dine_in
- Search by order number or customer
Steps — update order status
- Open orders for your role (
/admin/ordersor/staff/orders). - Locate the order (search or filters).
- Click the row action (view/edit) to open the order detail modal. Title: {Orders} Details (e.g. Orders Details or Bookings Details for hotels).
- Under Update Status, choose Select new status.
- If Cancelled, select Cancellation Reason (required): Customer Request, Payment Failed, Out of Stock, Store Closed, Delivery Delay, Wrong Order, Technical Issue, Other. Add optional Notes.
- Click Update Status. Success toast:
Order status updated to {status}(staff may see Order status updated successfully).
Staff success toast may read: Order status updated successfully.
Refunds and disputes
From order detail, use Process Refund when canProcessRefund allows. Refund lifecycle: pending, processing, succeeded, failed, cancelled. Escalate to admin if button is disabled.
Queued and scheduled orders
Detail banners:
- Queued Order — queue message and position number
- Scheduled Order — Scheduled for: date/time
Treat like standard orders for status updates once processing window starts.
Verify it worked
- Status badge updates on list and detail.
- Customer sees updated status when applicable.
- Refund reflects on payment status when processed.
Vertical notes
- Hotel: Bookings UI; same status model in most cases.
- Restaurant / delivery: Kitchen/dispatch uses statuses above.
Common issues
| Symptom | Likely cause | What to do |
|---|---|---|
| Cannot cancel | Missing cancellation reason | Select reason |
| No refund button | Not paid or no permission | Check payment status / role |
| Order missing (staff) | Location scope | Switch sub-org context |