Handheld Mode
Handheld mode turns an iPhone into a tableside tool for waiters. Instead of walking back to the iPad to ring in orders, servers carry the iPhone in their apron and take orders, fire to the kitchen, and charge the table — all at the guest’s side.
It’s not a smaller version of the iPad POS — it’s a deliberately limited experience, built around the three jobs a waiter actually does in motion: add items, fire to the kitchen, charge the bill.
Handheld is set per device in the Dashboard — Settings → Devices → set the device mode to Handheld. As soon as the iPhone syncs the setting, the whole POS app swaps into the handheld layout. Nothing else on the phone changes; log in with your PIN as usual. If you want the iPhone back in regular POS mode, flip the setting back in the Dashboard.
The four tabs
Handheld has a four-tab bottom bar that stays on every screen:
| Tab | What it’s for |
|---|---|
| Log Out | Clocks out the current staff and returns to the PIN lock screen. The icon is red — it’s a destructive action. |
| Restaurant | The list of open tables in each room. Home base. |
| Order | The menu grid / tab view for the currently active table. Disabled until you’ve tapped a table. Greys out otherwise. |
| Settings | Staff info, sync status, print jobs, card reader management. |
The iPhone is free to rotate — portrait or landscape, whichever’s easier in your hand. (The iPad POS is locked to landscape; the iPhone isn’t.)
Restaurant (home) — the table list
Your starting screen. Lists only tables with an active session (a party is actually seated) — empty tables don’t show up because in handheld mode, servers don’t open empty tables directly. Seating still happens on an iPad running Reception or Restaurant view.
Layout
- Header: “Tables” title, plus “X open tables” underneath
- Room tabs (horizontal scroll, only if your venue has more than one room): tap to filter to that room
- Table grid: every open table in the selected room as a card showing:
- Table label (e.g. T12)
- Guest count (people icon)
- How long they’ve been seated (e.g. 1h 15m) — updates every 30 seconds
- Item count — total items on the table across all tickets
- Enter Table FAB at the bottom — a floating
# Enter Tablebutton for typing a table number directly
Opening a table (that’s already seated)
Tap a table card. A modal slides up with two big buttons:
- Add items to [T12] (blue) — go straight to Order Taking for that table
- Charge [T12] (grey) — skip ordering and go straight to the charge screen
Whichever you pick, the bottom tab bar now lights up the Order tab so you can jump back and forth.
”Enter Table” — by number
Tap the # Enter Table FAB. A numpad appears; type the table number and confirm.
- Table is occupied → the Add items / Charge modal appears (same as tapping the card)
- Table is empty → a guest count picker slides in
Guest count picker (opening an empty table)
Only relevant if Reception isn’t gating seating in your venue. The picker has buttons 1–14 plus Custom for larger parties. Pick the number and tap Open table — X guests. The session starts and you go straight to Order Taking.
When an iPad is running Reception mode, only that iPad can seat guests. Tapping Enter Table for an empty table on the handheld still shows the guest count picker, but the open-table request will be rejected if Reception hasn’t seated the party first. Let the host seat the table from Reception, then come back here.
Order Taking — the tableside menu
Once a table is active, the Order screen opens. The layout is phone-first: one screen, two views you flip between with a Tab pill at the top right.
The header (top of screen)
- Back arrow — returns to the home screen (or to the items grid if you were looking at the tab)
- Title — the table name (e.g. T12) or T12 — Order when you’re on the Tab view
- Menu selector (centre, if your venue has multiple menus) — dropdown chip with the current menu name; tap to switch
- Ticket count (receipt icon + number) — only shows if there are tickets already fired; tap to open the full Tickets view
- Guest count (people icon + number)
- Tab pill (right) — Tab plus a blue badge with the current draft’s item count. Tap to flip between:
- Items view — the menu grid for adding items
- Tab view — the current draft ticket with its items, total, fire, and pay
Items view (the menu grid)
- 2-column product grid — compact cards sized for the phone, with item name, price, and colour
- Category bar along the bottom — horizontal scroll of category pills
- Cards respect the same rules as the iPad:
- A quantity badge on the top-right once you’ve added one or more
- A red prohibit overlay on items that are 86’d
- A yellow warning overlay on items that contain allergens the guest is avoiding
Adding an item
- Tap a product with no modifiers → it’s added to the draft ticket immediately
- Tap a product with modifiers → the same full-screen Modify dialog as the iPad opens, with the modifier categories, quantity spinner, and Add to table button
- Long-press (about a third of a second) → the item actions modal opens — mark the item 86 / Mark as Available
Tab view (the draft)
Flip to Tab to see what you’ve added. Same item rows as the iPad sidebar:
- Quantity × name, modifiers listed underneath, price on the right
- Swipe left on an item to rush (lightning) or delete (bin) — no discount action on handheld
- Tap an item line to re-open the modifier/quantity dialog for editing
Under the item list:
- Note — tap + Add note to type a note for the kitchen. Same dialog as the iPad. The × beside the note clears it.
- Total line — £X.XX incl. Tax
The Tab view shows a + Add discount row, but it does nothing when tapped — the handheld discount flow isn’t built yet. For now, apply discounts from the iPad before or after the waiter rings items in; they sync to the handheld automatically.
Fire ticket
Bottom of the Tab view, grey Fire ticket button. Opens the same Fire order screen as the iPad:
- Course selector — Starter, Main, Dessert, Drinks
- Toggles for Rush ticket, Print ticket, Send to Kitchen Display, To go, Schedule ticket
- Fire order button at the bottom
Confirming fires the ticket to the kitchen and sends you back to the Items view to start the next round. See Order Taking → Firing the order for what each toggle does.
Pay
Next to Fire ticket — the blue Pay button with the current total. Opens the Charge screen.
Tickets view — seeing everything already fired
The receipt icon in the header opens the Tickets full-screen view — every ticket on the table, with the same status colours (Draft, Pending, Fired, In progress, Prepared, Served) and actions as the iPad:
- Edit ticket (drafts) — pulls it back into the tab for editing
- Fire ticket (drafts)
- Mark as served (prepared)
- Unfire to edit (pending/fired/in-progress) — with a reason note
- Served (for in-progress or ready tickets)
See Order Taking → The Tickets view for the full detail.
Moving a ticket from one table to another is an iPad-only action. If you need to re-home a ticket, use the iPad.
Charge screen
Tap Pay in the Tab view, or Charge [Table] from the home-screen action modal.
The layout
- ← Back in the header
- Total figure shown large and bold
- Subtotal / Service charge / Total breakdown below, with a Remove / Restore pill for the service charge
- Two buttons at the bottom:
- Split payment (grey) — opens the split menu
- Charge £X.XX (blue) — sends the whole total to the card terminal
Charging the full bill
Tap Charge £X.XX. The iPhone connects to the terminal, pushes the total, and shows a processing screen:
- The amount shown large
- The selected terminal name
- “Complete the payment on the terminal”
- A spinner
- Cancel Payment button
Guest taps / inserts / swipes on the terminal. On success, the Transaction completed screen appears.
If the payment fails, an alert with the error and a Retry option. Guest-cancelling on the terminal just drops you back to the charge screen.
Unlike the iPad, the handheld has no cash keypad. All payments go through the card terminal. If the guest is paying cash, take it at the table and record the cash tender on the terminal during the Pay at Table flow — the iPhone will pick it up as a cash split and mark the order accordingly.
Split payment
Tap Split payment. A modal pops up with two options:
- Split by item — assign items on the bill to each guest, one at a time
- Split by amount — type how much each guest is paying
Both modes show guest tabs at the top so you can move between guests, and both charge one guest at a time on the terminal.
Split by item
Pick a guest
Horizontal tabs at the top — Guest 1 / Guest 2 / … — defaults to the session’s guest count, but never lower than 2 (even for a solo diner). Tap the guest you’re assigning items to.
Tick items for that guest
Scrollable list of every billable item on the ticket, exploded one row per unit (so a quantity of 3 shows three rows you can split across guests). Tap an item to assign it to the active guest. Items already on another guest show “Guest 2” in muted text and are removed from that guest when you reassign them.
Check the totals
Each guest tab shows their running subtotal. A progress bar at the bottom shows how much of the whole bill has been allocated so far.
Tap “Charge £X.XX”
The active guest’s total (with their share of service charge) is sent to the terminal. Once the terminal clears it, that guest is marked done (green tick on their tab) and the order stays open for the next guest. The already-paid items won’t show in the next guest’s selection.
Repeat for every guest
When all guests are done, the order is fully paid — you’ll land on the Transaction completed screen automatically.
Split by amount
Pick a guest
Same horizontal guest tabs.
Type the amount
Tap the big total to bring up the numpad and key the guest’s share (right-to-left cents entry, like a card reader). Split equally fills every guest with the bill ÷ N. Fill remaining fills whatever’s left for the active guest — useful for the last person.
Tap “Charge £X.XX”
Sends to the terminal. Successful splits light up the guest tab with a green tick.
Charge each guest in turn
A progress bar at the bottom shows how much of the bill has been taken. When the total’s covered, you hit Transaction completed.
Cancelling a split mid-way
Tap ← Back on the split screen and choose a different split mode, or walk back to the iPad to finish there. Any splits that have already cleared on the terminal are saved against the order — the iPhone doesn’t lose track.
Transaction completed
Matches the iPad:
- Green tick, “Payment Complete”
- Breakdown card with Total / Tip / Reference / Method (Card ****1234 or Cash)
- Two buttons:
- Done and close out [Table] (blue) — marks order paid, closes the session, frees the table
- Done and keep [Table] open — keeps the session alive so the guest can keep ordering after paying a round
Tapping either takes you back to the home screen.
Settings tab
A single scrolling page, no sub-navigation. Tap any card to open its detail view.
Staff card
Your name, role (e.g. Server), and clock-in time (Since 18:04). Nothing to tap here — it’s informational.
Location card
The name of the venue this iPhone is bound to.
Sync
Status pill (Connected / Connecting… / Offline) plus a count of the other Zavo devices this iPhone can see. Tap to open the full Zavo Network view — the same network diagram the iPad shows. You’ll see pills for each connection type (BLE = Bluetooth, LAN = same Wi-Fi, AWDL = iPad-to-iPad Apple, Wi-Fi Aware = Android) along with this device’s info and every other Zavo device in range. Useful for answering “why aren’t my items showing on the other iPad?” questions — see Settings → Zavo Network for the full breakdown.
Print jobs
How many jobs are active (purple) or failed (red). Tap to see every print job across all Zavo devices with filter tabs (All / Pending / Printing / Complete / Failed) and a Retry button on any failed job.
Card Readers
List of terminals paired to the venue. Tap to open terminal management — the same pairing / discovery flow as the iPad:
- X connected (green) or X disconnected (yellow)
- Scanning for new terminals
- Switching the default terminal
Software update
A small footer at the bottom — Zavo POS vX.Y.Z. If an update is ready, a green Update Available pill appears — tap it to restart the app and apply. Otherwise it shows Up to date (tap to check now).
Log out
Not on the settings page — it’s the red Log Out tab in the bottom bar. Taps clock you out and return to the PIN lock screen.
What Handheld does not do
Handheld is intentionally a limited tool. Some things on the iPad simply aren’t on the phone:
| iPad can | Handheld can |
|---|---|
| Show a full floor plan with every table, empty or occupied | Show a list of currently-occupied tables only |
| Open / join / separate tables from the floor plan | Open an empty table via Enter Table (only when Reception isn’t gating seating) |
| Run Reception with reservations, walk-ins, calendar | — (all reservation flow stays on the iPad) |
| Run Quick Tabs (Quick Service — counter ordering with numbered tabs) | — (handheld is table-service only) |
| Run as a Kitchen Display | — |
| Edit the menu layout (colours, sizes, category icons, positions) | — |
| Apply discounts (preset or custom) at the sidebar | — (apply from the iPad; syncs automatically) |
| Filter the menu by allergens | — (the per-item allergen overlay still shows) |
| Add ticket-level allergies | — |
| Move tickets between tables | — |
| Change the table on an active order | — |
| Change guest count on an active order | — |
| Take cash on the iPad’s on-screen keypad | — (cash goes through the card terminal as a cash split) |
| Print the pre-payment bill (Create charge screen with printer picker) | — (kitchen tickets still print automatically through the Zavo Network) |
| Reprint / refund from the Payments tab | — (refunds are iPad-only) |
Everything else — 86’ing items, modifier selection, notes, firing with course / rush / print / KDS / to go / schedule, table sessions, multiple tickets, pay-at-table splitting — works the same as on the iPad.
Handheld mode takes over the whole phone app, but it doesn’t replace the iPad in the dining room — it complements it. The iPad stays the command centre (floor plan, reception, reporting, payments history, menu management); the handheld is the action-oriented pocket tool the server actually carries.
Quick recap — the moves you’ll do every shift
- New guests arrive → (host seats them from Reception) → table appears in Restaurant on your phone
- Tap the table → Add items to [T12] → ring in the order
- Tap an item → add it / open modifiers
- Tap the Tab pill → review the draft
- Fire ticket → the kitchen gets it immediately
- Guests ready to pay → Tab → Pay → Charge for a single card, or Split payment → By item / By amount for multiple payers
- Payment complete → Done and close out [T12] — table frees up, you’re back on the home screen
- Something’s off → Settings → check Sync and Print Jobs
Next steps
- Order Taking — The full iPad flow behind the handheld’s Order view
- Payments — How charges, Pay at Table, and splits work under the hood
- Reception — Where walk-ins and reservations live (iPad only)
- Restaurant View — The iPad’s floor plan