Order modes
Orders operate in one of three modes:Order states
1
Idle
Order created but no items added.
2
Editing
Items being added or modified by the user.
3
Checkout
Order is locked for payment processing.
4
Paid
Payment received, waiting for finalization.
5
Finalized
Order synced to Odoo, invoice created, NCF reserved.
Kitchen status
Kitchen status tracks the order’s progression through the kitchen:Editing an order after it has been sent to the kitchen flips the status from
sent to changed, signaling the kitchen that there are updates.Idempotent creation
Order creation is idempotent — sending the samepos_reference returns the existing order rather than creating a duplicate. This is critical for reliability during network issues and sync retries.
Void flow
Voiding follows different paths depending on whether items have been sent to the kitchen:- Pre-send items — Removed directly, no void record needed
- Post-send items — Full void flow: reason selection → optional manager override → void record created with audit trail