Floor Mode
Floor mode provides table management with an interactive floor plan, enabling waitstaff to manage orders, track table status, and serve customers efficiently.
Route: /pos/[branchId]/floor
Overview
Floor mode is designed for full-service restaurants where customers are seated at tables. It provides:
- Visual floor plan with table layout
- Table status tracking (available, occupied, reserved, cleaning)
- Seat-based ordering with split billing
- Order management for each table
- Bill settlement at the table
Floor Plan
FloorMapEditor
The FloorMapEditor component allows you to design and configure your restaurant's floor plan:
- Drag and drop tables onto a grid
- Resize and rotate table shapes
- Label tables with numbers or names
- Define service zones/areas
- Configure table capacity (seat count)
Tables are organized into zones (e.g. "Main Hall", "Patio", "VIP Room") for easier management.
Table Status
| Status | Color | Description |
| Available | Green | Table is free and ready for seating |
| Occupied | Red | Table is currently occupied by guests |
| Reserved | Blue | Table is reserved for a future booking |
| Cleaning | Yellow | Table is being cleaned and will be available soon |
| Closed | Grey | Table is out of service |
Table Service Workflow
Seating Guests
- Select an available table on the floor plan.
- Start a new order for the table.
- Enter guest count and any notes.
Taking Orders
- Tap an occupied table to open its order.
- Browse the item catalog and add items.
- For seat-based billing, assign each item to a specific seat label.
- Add special instructions per item or for the entire order.
- Submit the order to the kitchen.
Seat-Based Ordering
For tables configured with split billing:
- Each seat (e.g. "Seat 1", "Seat 2") gets its own item list.
- Items can be assigned to specific seats during ordering.
- When settling, each seat can pay individually.
- This enables easy split-the-bill functionality.
Order Management
Each table's order shows:
- Items ordered, grouped by course if applicable
- Item status (not fired, queued, done)
- Seat assignments
- Running total
- Course management (if enabled) for multi-course meals
Settling a Bill
- Navigate to the table order.
- Click Settle to open the payment dialog.
- Choose payment method (cash, card, mobile money, etc.).
- Process payment.
- The table returns to "Available" status.
Keeping the Board Responsive
The floor board is a live view of all active orders. To stay responsive during busy service, the board shows only the most recent active orders:
- When older active orders are hidden, an amber banner appears at the top of the board: "X older active orders are hidden to keep this board responsive."
- Hidden orders are not lost — switch to the Recent tab to find them.
- The banner appears automatically whenever the board genuinely can't show everything; it disappears as soon as the full set fits again.
Course Management
For fine-dining restaurants, floor mode supports course management:
- Send courses to the kitchen separately (starters first, then mains, then desserts)
- Each course can be held or released individually
- Kitchen receives course-specific tickets
Waiter Assignment
Staff can be assigned to specific tables or zones:
- Each waiter is responsible for their assigned tables
- Notifications for new orders or customer requests
- Performance tracking per waiter
Floor Layout Editor
The floor plan layout can be configured at:
POS > Settings > Tables (/pos/[branchId]/settings/tables)
QR page at /pos/[branchId]/qr (includes FloorMapEditor)
Adjustments include:
- Adding/removing tables
- Reshaping zones
- Changing table shapes and sizes
- Reassigning table numbers
- Setting per-table split billing preferences