Skip to content
Help

The order lifecycle

Every status an order passes through, who can move it, and what each move triggers.

Orders & service4 min read

#Statuses

StatusMeaning
pendingPlaced, not yet accepted. Online payments sit here until the provider confirms
confirmedAccepted by the restaurant. Stock is deducted at this point
preparingThe kitchen has started
readyReady for pickup or hand-off to a driver
deliveringWith a driver
completedDone
cancelledStopped. Stock is returned

The kitchen display enforces a strict path — pendingconfirmedpreparingreadycompleted — so a cook cannot skip a step by accident. The dashboard is deliberately more permissive, because a manager sometimes needs to correct reality.

An order placed for a future slot starts at pending like any other, but is held back from the kitchen display until its lead time. See scheduled orders.

#Payment status is separate

An order carries its own payment status: unpaid, pending, paid, failed, refunded. The two axes are independent on purpose. A dine-in table is completed and paid; a cash-on-delivery order is delivering and unpaid.

When an online payment provider confirms a payment, Restro marks the order paid and, if it was still pending, promotes it to confirmed in the same move.

#What each transition triggers

  • Confirmed — deducts recipe ingredients from branch stock, and counts any discount redemption.
  • Ready — surfaces on the pickup and driver views.
  • Completed — sends the review request if the Reviews extension is on.
  • Cancelled — returns deducted stock and releases the discount redemption.

Each of these also fires an outbound webhook if you have an endpoint subscribed.

#Editing an order

Orders can be edited while they are pending, confirmed, or preparing. You can change lines, quantities, the type, the branch, notes, and the discount. Restro reprices the whole order from the current menu and adjusts stock to match the new lines.

Once an order is ready the kitchen has already committed, and editing is closed.

#Void, comp and refund are three different things

Staff use the words interchangeably. The accounting does not, and collapsing them makes food-cost reporting meaningless.

RevenueFood costCash
VoidNoneNone — it was never madeUntouched
CompNoneReal — it was made and given awayUntouched
RefundReversesAlready spentLeaves the drawer

Pick by what actually happened in the kitchen, not by what is quickest to tap.

#Voiding

Void removes something before money changes hands. It requires the orders:void permission and refuses to run on:

  • An order that is already cancelled
  • An order that is completed
  • An order that has been paid — refund it instead

You can void a whole order or a single line. Voiding returns stock and records the reason.

If the line had already been sent to the kitchen, a void slip prints at the station that got it, so nobody plates an item that is no longer being paid for.

#Comping

Comp is for an item that was made and then given away — a dish that came out late, a gesture from a manager. It uses the same orders:void permission and the same reason list, and it works on a line or on the whole order.

A comp takes the revenue to zero but leaves the ingredients spent, so the cost still lands in profitability reporting. Voiding a plate that was actually cooked hides that cost; comping it does not.

#Refunding

Refund requires orders:refund and works on paid orders. You can refund the whole order or pick the lines going back.

  • The amount is computed from the lines you pick, so a partial refund can never exceed what was paid for those items.
  • A full refund sets the payment status to refunded. A partial refund leaves it paid and records the amount refunded so far.
  • Refunds go back to the method the customer paid with: cash out of the drawer, or a reversal through the card handler. Refunding a card sale in cash is a known fraud path, so it takes a manager's PIN and a reason.
  • A cash refund needs an open drawer. It reduces the expected cash in the session and shows on the X and Z report.
  • Restock returns the ingredients — for the exact lines you refunded, or the whole order on a full refund.
  • Tips refund separately and are tracked on their own, so tip reports stay honest.

#Approval

If the person signed in does not hold orders:void or orders:refund, the terminal asks for a manager's PIN instead of refusing outright.

A branch can also set an approval threshold under Branches → Voids, comps and refunds. Above that amount even staff who hold the permission need a manager's PIN. Leave it empty and the permission alone is enough.

Either way the action goes through under the cashier's name with the manager recorded as the approver — the activity log names both, so an approval never obscures who rang it up.

#Reasons

Every void, comp and refund takes a reason. Restro ships a sensible list; a branch can replace it with its own under Branches → Voids, comps and refunds, with a separate list for each of the three actions.

#On a terminal

Open Orders on the point of sale and search by order number, table, customer, or the last four digits of the card. Tap an order to see its lines, its totals, and its full history — who rang it, who took payment, who voided or comped what, from which terminal and when.

From there you can reprint the receipt. A reprint always prints marked as a duplicate; an unmarked reprint is a refund-fraud tool.

Voids, comps and refunds appear separately on the shift summary and on the X and Z report. A shift with many comps is a signal worth looking at.

Did this page miss something? Tell us.

Back to top