Table Service (Dine-in)
Overview
Table service is the full-service-restaurant (FSR) mode of the POS. Instead of ringing up a sale and paying straight away, your floor staff attach each order to a physical table, fire food to the kitchen in batches, and settle the bill at the end of the meal.
This page covers the dine-in flow on the POS tablet — reading the table map, sending items to the kitchen, moving orders between tables, and paying out. The tables and sections themselves are set up in the admin console under Tables, and dine-in behaviour is controlled in Outlet Settings.
When you see this mode
Table service appears when the register is set to a full-service operation type. The POS uses a blue theme in FSR mode (retail registers use pink/red). If your selling screen shows a product grid and not a table map, you're on a retail register.
What it looks like
The selling screen opens on the table map — a visual plan of your floor, grouped into the sections you created in the admin console. Section tabs run along the top, and each section has a Print all option for printing every table's bill at once.
Each table is coloured by its current status:
| Colour | Status | Meaning |
|---|---|---|
| Green | Has an unpaid order | An order is open and owes money. |
| Orange | Occupied | Seated, order in progress. |
| Yellow | Need clean-up | Paid and finished, waiting to be cleared. The table is dimmed. |
| Gray | Empty | Available — tap to start a new order. |
| Split colour | Partially paid | Part of the bill has been settled (a split-colour gradient). |
Tables that are locked — being edited by another device (lockedBy) — and tables not assigned to you are dimmed and can't be tapped.
Assigned tables only
If your staff role limits a waiter to certain tables, only those tables are tappable; the rest stay dimmed. This assigned tables restriction is set per user in the admin console — see Tables.
Map or list
Tick Display as list in the header to swap the visual map for a plain list of tables — handy on smaller screens or for very large floors.
Rearranging the floor
Tick Table edit to enter edit mode. You can then drag tables to rearrange the layout to match your real floor plan. The new layout is saved automatically, so you only need to do this once.
Starting a table
- Tap an empty (gray) table to select it for the basket. Tapping a table that already has an order loads that order instead.
- Build the order exactly as you would at the counter — add products, pick variants and modifiers, attach a member if the guest is a member.
- The basket groups items into an Unconfirmed section (items not yet sent to the kitchen) and one Order n section per batch already fired.
Each table carries a Pax (guest count) and a table QR code. Open the table info modal to see the Order ID, Total, the table QR (which you can print), and an editable Pax Number field.
Number of pax prompt
If your register is set to print the pax count, confirming a brand-new table order shows a Number of pax prompt first, so the guest count lands on the kitchen chit. This is the printPaxNumber setting on the outlet register.
Confirming and firing to the kitchen
Dine-in orders are fired in batches. Items you add sit in the basket as unconfirmed until you send them to the kitchen — they show with a red corner marker and gather under a red Unconfirmed section.
The FSR basket action bar has Discount, Voucher, an order-detail (reorder) icon, Confirm, and Pay, with Confirm (no printing) on a second page.
| Action | What it does |
|---|---|
| Confirm | Sends the unconfirmed items to the order and prints the last batch to the kitchen chit. The button turns green whenever there are unconfirmed items waiting. |
| Confirm (no printing) | Same, but doesn't print a chit — useful when you've taken the order verbally. |
| Reject | Discards the unconfirmed items without firing them. |
Confirming a new table creates the order and fires the first kitchen chit. Each later confirm adds its items as a fresh batch, labelled Order 2, Order 3, and so on, so the kitchen sees only the new round each time.
Confirm before you discount
Discount and Voucher both require confirming the items first — you'll see "Please first confirm the order" if you try them on unconfirmed items. Vouchers and discounts apply directly to the live order.
A confirm is blocked by unfulfilled mandatory modifiers (the offending line turns red) and by a closed shift. After a successful confirm the order mode resets to Dine in, and if the register has pin-lock-after-confirm enabled, the lock screen appears.
Editing a confirmed line
Tap a confirmed table line to open its popover: Dine In / Takeaway, Tag, Edit, Keep (bottle keep), Reprint, Rush (reprints the line marked Rush), and Delete. Deleting a line that's already on the order opens a Deleted Reason prompt — a reason is required, and you must remove any linked voucher first.
Moving an order
You can move work between tables when guests change seats or you've started on the wrong table.
| Move | What happens |
|---|---|
| Transfer order | Moves the whole order from one table to another. |
| Transfer item | Moves selected items only. |
Both are done by drag-and-drop on the map, or from the table info modal. You'll see "Transferred successfully" on success, or "Source table has no order/items to transfer" / "Transfer failed" if the move can't be made.
Paying a table
- Select the table and tap Pay. The POS routes to the payment screen with the live order loaded.
- Take payment as usual — see Payments for tenders, partial payments, and change.
Empty tables can't be paid
"All items have zero quantity" blocks paying a table with nothing on it.
Splitting the bill
For groups paying separately, use Split bill to divide the table's order into several sub-bills — by item, by member, or into equal amounts. Each split is paid on its own and prints its own receipt. See Split Bill for the full flow.
Printing the bill
Print a table's bill from the basket header at any time — before payment it prints as a PRE-SETTLEMENT BILL, and once paid it prints as a TAX RECEIPT. The Print all option on a section prints the bill for every table in that section.
Clearing down
After payment the table becomes Need clean-up (yellow) or Available, depending on your dine-in settings. Mark a finished table as cleared with Table cleaned — it returns to gray and is ready for the next guests.
After-payment behaviour
Whether a table goes to need clean-up or straight to available after payment is the Default table status after paid setting on the outlet's Order tab — see Tables and Outlet Settings.
Related
- Tables — create sections and tables, and assign waiters.
- Outlet Settings — dine-in settings on the Order tab.
- Payments — tenders, partial payments, and change.
- Split Bill — dividing one table's bill across guests.
- Selling — building the basket, variants, and modifiers.
- Order Management — finding and reopening orders on the device.