Waiter Module
The Waiter module is where front-of-house staff spend most of their time. View the interactive floor map, take orders at tables, coordinate kitchen pickups, manage split checks, and keep track of every active order -- all in real time.
On this page
Dashboard & Floor Map
The Dashboard is the waiter's home screen and the single most important view in the entire module. It presents an interactive, real-time floor map of your restaurant where every table is rendered as a tappable shape -- rectangular, round, or diamond -- that you can select to begin taking orders, review existing checks, or process payments. Two main tabs at the top of the screen -- Tables and Kitchen -- let you switch between floor management and the kitchen pickup queue at any time without losing context.
Think of the Dashboard as your digital version of walking the floor. In a traditional restaurant, a waiter might physically walk through the dining room to see which tables are occupied, which are waiting for food, and which need to be bussed. The Dashboard gives you all of that information at a glance. For example, when you start your Friday evening shift, you open the Dashboard and immediately see that Tables 1, 4, and 7 are green (available), Tables 2, 3, and 5 are amber (occupied with active orders), and a purple temporary table has been created for a takeout order. You know exactly where you stand before you greet your first guest.
The floor map layout is configured by your restaurant's admin in the Admin module. Tables are arranged to mirror the physical layout of your venue, so the position of a table on screen corresponds to where it sits in real life. The map supports multiple zones or areas (e.g., “Patio,” “Main Floor,” “Bar”), and you can filter to show only a single zone at a time. This is especially valuable in large venues where a single waiter may be responsible for just one section.
- Table positions and shapes are managed by administrators. If a table appears in the wrong location, contact your manager to update the floor plan in the Admin module.
- The “Show only my tables” toggle filters based on table assignments set in Admin. If you do not see any tables when this toggle is active, it means no tables have been assigned to your account for the current shift.
- The map updates in real time via WebSocket (MQTT). If another waiter opens a table or a kitchen item becomes ready, your Dashboard reflects the change instantly without any manual refresh.
- Zone filtering persists for your session. If you select “Patio,” you will continue to see only patio tables until you clear the filter or switch zones.
- Notification badges on the Kitchen tab and sidebar buttons update in real time. A red badge with a number indicates how many items are currently ready for pickup.
Table status colors
| Color | Status | Meaning |
|---|---|---|
| Green | Available | The table has no active order and is ready for seating. |
| Amber / Orange | Occupied | The table has at least one active (open) order. |
| Purple | Temporary Table | An ad-hoc table created for takeout, catering, or overflow seating. |
| Blue | Quick Order | A streamlined temporary order created via the Quick Order button. |
| Gray (dimmed) | Filtered Out | The table belongs to another waiter when the 'Show only my tables' filter is active. |
When to use
- At the start of a shift, to see which tables are available, occupied, or assigned to you.
- To quickly locate a specific table by area or section in a multi-zone restaurant.
- To access the Kitchen tab and check for ready-for-pickup items.
- To create a temporary table or quick order for walk-in takeout guests.
- To monitor the overall state of the restaurant at a glance during service.
How to use
- Open the Waiter module from the main application menu. The Tables tab loads by default, showing the interactive floor map with all tables for your restaurant.
- Use the area / section filter in the left sidebar to narrow the view to a specific zone. For example, selecting “Patio” hides all indoor tables and shows only the outdoor section. To clear the filter, tap “All Areas” or deselect the current zone.
- Toggle “Show only my tables” to hide tables assigned to other waiters. This is particularly useful during busy service when you want to focus on your section without visual noise from the rest of the floor.
- Pan the map by dragging with one finger (touch) or clicking and dragging (mouse). Pinch to zoom on touch devices, or use the zoom controls in the corner of the map. Swipe gestures are fully supported on tablets and phones. On desktop, you can also scroll to zoom.
- Each table shape on the map displays its table number in the center and uses a color-coded background to indicate its current status (see the color table above). The shape itself -- rectangular, round, or diamond -- mirrors the physical table type configured in Admin.
- Tap a table to open its order page. If the table already has an active order, you will see the existing items in the left-side cart and can add more. If the table is empty (green), a new blank order is started automatically.
- Switch to the Kitchen tab at the top of the screen to see items that the kitchen has marked as ready for pickup. A badge on the tab shows the count of pending items. See the Kitchen Pickup section for full details.
- The left sidebar also provides quick-access buttons: Temp Table creates an ad-hoc table (see Temporary Tables), Quick Order starts a streamlined order, and All Checks opens the comprehensive order list (see All Checks View).
- Notification badges appear on the Kitchen tab and on sidebar buttons in real time. When the kitchen marks an item as ready, the badge count increments and a sound alert plays if the item belongs to one of your assigned tables.
Taking Orders
Tapping a table on the floor map opens the order page, which is the core workflow of the Waiter module. The screen is split into two distinct panels: the left side shows the current cart (all items, quantities, modifiers, running subtotal, discounts, and total) while the right side displays the full restaurant menu for browsing and adding new items. This two-panel layout is designed so you never have to switch screens -- everything you need to build, review, and submit an order is visible at once.
Consider a typical scenario: a family of four sits at Table 5. You tap Table 5 on the floor map, and the order page opens with an empty cart on the left. As the father orders a steak, you tap “Steak” from the menu on the right. A modifier panel opens (see Modifiers & Notes) where you select “Medium Rare” and add a note about a nut allergy. The steak appears in the cart on the left with its modifiers listed below it. You continue adding items for the rest of the family. When the full order is built, you press “Send to Kitchen” and the order is transmitted instantly to the kitchen display.
The cart is not just a static list -- it is a fully interactive management tool. You can adjust quantities, remove items, reorder entries, and even change modifiers on items that have already been added. The cart also shows a real-time running total that updates as you add or remove items, so you always know the current cost of the order. If a discount has been applied (for example, a happy hour promotion), it appears as a separate line item with the adjusted total below.
- Items are not sent to the kitchen until you explicitly press “Send to Kitchen” or “Stay.” Adding items to the cart only stages them locally on your device.
- If you navigate away from the order page without sending, unsent items may be lost. Always confirm the order is submitted before leaving.
- The Dine-in / Takeout toggle affects how the order is printed and tracked. Switching to Takeout after items have been sent does not retroactively change kitchen tickets already printed.
- If a table already has a previously sent order, new items you add will be appended to the existing check. They are sent as a new round but appear on the same bill.
- Quantity adjustments using the +/- buttons update the cart total instantly. However, once an item has been sent to the kitchen, changing its quantity creates a new kitchen ticket for the difference rather than modifying the original ticket.
Cart actions reference
| Action | Gesture / Button | Result |
|---|---|---|
| Add item | Tap item on menu | Adds 1 unit to cart; opens modifier panel if modifiers exist |
| Increase quantity | Tap + button in cart | Increments quantity by 1 and updates totals |
| Decrease quantity | Tap - button in cart | Decrements by 1; removes item if quantity reaches 0 |
| Remove item | Swipe left (touch) or tap trash icon | Removes item entirely from the cart |
| Edit modifiers | Tap item row in cart | Re-opens modifier panel with current selections |
| Switch order type | Tap Dine-in / Takeout toggle | Changes order type for the entire check |
| Send order | Tap 'Send to Kitchen' | Transmits all unsent items to kitchen; returns to floor map |
| Send and stay | Tap 'Stay' | Transmits all unsent items but keeps you on the order page |
When to use
- A guest is ready to order and you need to build a new check or add to an existing one.
- You need to adjust quantities or remove items before sending to the kitchen.
- You want to switch the order type between Dine-in and Takeout.
- A guest at an occupied table wants to add a second round of drinks or a dessert course.
- You need to review the current running total before the guest asks for the bill.
How to use
- Open the order page by tapping a table on the floor map. If the table has an existing order, the cart on the left side pre-loads with all previously sent items. If the table is new (green), the cart starts empty.
- Browse or search the menu on the right panel. Tap any item to add it to the cart. Each tap adds one unit of that item. If the item has modifiers configured, the modifier detail panel opens automatically before the item is added (see Modifiers & Notes). For items without modifiers, the item goes directly into the cart.
- Adjust quantities using the and buttons next to each item in the cart. The subtotal and total update instantly as you change quantities.
- Remove an item by swiping left on it in the cart on touch devices, or by clicking the delete icon on desktop. The item is removed and totals recalculate immediately.
- Edit modifiers on a cart item by tapping that item's row in the cart. The modifier panel reopens with the current selections pre-loaded. Make your changes and tap “Update” to save.
- Review the totals at the bottom of the cart. You will see the Subtotal (sum of all items), any applied Discounts (shown as a negative line item), and the final Total. Tax calculations, if enabled, appear as a separate line.
- Select the order type using the Dine-in / Takeout toggle at the top of the cart. This affects how the order appears on kitchen tickets and in reports. The default is Dine-in for table orders and Takeout for temporary table or quick orders.
- Send the order by pressing “Send to Kitchen” . All unsent items in the cart are transmitted to the kitchen display system (KDS) and/or kitchen printer. You are automatically redirected back to the floor map. The table's color changes to amber (occupied) if it was previously green.
- Alternatively, press “Stay” to submit the order to the kitchen but remain on the order page. This is the preferred workflow when a guest is still deciding or when you expect to add more items momentarily. The sent items are marked with a subtle indicator in the cart, and the cart remains open for additional entries.
- To return to the floor map without sending, press the back arrow. Note that any unsent items in the cart will not be saved.
Menu Navigation
The right panel of the order page displays your restaurant's complete menu in a structured, browsable format designed for speed. At the top of the panel, categories are presented in a carousel grid -- a paginated layout showing 4 categories per row across 2 rows (8 categories per page). You swipe left or right on touch devices, or use arrow navigation buttons, to move between pages of categories. This carousel approach ensures that even restaurants with dozens of categories can be navigated quickly without overwhelming the screen.
Below the category carousel, menu items appear as tappable cards. Each card shows the item name, price, and optionally a thumbnail image. The menu panel includes several controls that help you locate items faster: a keyword search that filters across all categories in real time, a menu groups filter that applies higher-level grouping (such as “Breakfast,” “Lunch,” or “Happy Hour”), an image toggle to switch between visual cards and a compact text-only list, and a light/dark mode toggle for the menu panel.
Imagine it is a busy Saturday brunch and a guest asks for the “Eggs Florentine.” Rather than scrolling through the entire menu, you tap the search icon, type “egg,” and instantly see all items with “egg” in their name -- across every category. You tap “Eggs Florentine,” select the relevant modifiers, and it is in the cart within seconds. This search-first workflow is typically 3-4 times faster than manually browsing categories during peak hours.
- The category carousel layout (4 per row, 2 rows) is fixed. If you have many categories, they paginate automatically. Swipe or tap arrows to navigate.
- Menu Groups are a separate layer from categories. A menu group like “Happy Hour” can span multiple categories (e.g., showing discounted appetizers AND drinks together). Groups are configured in the Admin module.
- The search function is instant and cross-category. It filters by item name as you type. There is no need to select a category first -- search works globally across the entire menu.
- Hiding images via the toggle does not delete images -- it only switches the display to a compact text list. You can re-enable images at any time during the same order session.
- Dark mode applies only to the menu panel, not the entire app. This is intentional -- in dimly lit dining rooms, dark mode reduces screen glare on the menu side while keeping the cart panel readable.
Menu panel controls
| Control | Icon | Function |
|---|---|---|
| Category Carousel | Swipe / Arrows | Browse paginated category tiles (4x2 grid per page) |
| Menu Groups | Filter icon | Apply a higher-level grouping across categories (e.g., Breakfast, Happy Hour) |
| Search | Search icon | Type keywords to find items across all categories instantly |
| Image Toggle | Image icon | Show or hide item thumbnail images for a compact or visual layout |
| Light / Dark Mode | Sun / Moon icon | Switch the menu panel between light and dark themes |
When to use
- When browsing for a specific item to add to an order.
- When filtering the menu by category or group to speed up item selection.
- When you need to quickly search for an item by name during a rush.
- When switching between meal periods (e.g., from Lunch to Happy Hour menu group).
- When you want a denser text-only view to scan items faster without images.
How to use
- On the order page, look at the right-side panel. The top area shows menu categories in the swipeable carousel grid. Swipe left or right on touch devices, or tap the arrow buttons at the edges, to browse pages of categories. Each page shows up to 8 category tiles.
- Tap a category to filter the item list below to only that category. The selected category tile is highlighted with an accent border. Items appear as cards in a scrollable grid below the carousel.
- To apply a Menu Group filter, tap the filter icon near the top of the menu panel. A dropdown or sidebar shows available groups (e.g., “Breakfast,” “Happy Hour,” “Kids Menu”). Selecting a group narrows both the category carousel and the item list to only items belonging to that group. To clear the group filter, tap “All” or deselect the active group.
- To search by keyword, tap the search icon at the top of the menu panel. A text input appears. Begin typing the item name (e.g., “burg” for “Burger”). The item list filters in real time as you type, showing matches from all categories regardless of which category is currently selected. Clear the search field to return to the category view.
- To toggle item images, tap the image button in the menu panel toolbar. When images are hidden, items display in a compact text list with just the name and price, allowing you to see more items per screen. When images are shown, each item card includes a thumbnail photo for visual reference.
- To switch light/dark mode, tap the / toggle. Dark mode inverts the menu panel to a dark background with light text, reducing screen glare in dimly lit environments like bars or evening dining rooms. This affects only the menu panel -- the cart panel and navigation remain in the standard theme.
- Tap an item card to add it to the cart. If the item has modifiers configured (e.g., size options, toppings, cooking temperature), the modifier detail panel opens first so you can customize the order before it enters the cart. See Modifiers & Notes for full details. If the item has no modifiers, it is added directly to the cart with a quantity of 1.
- You can combine search with groups. For example, select the “Happy Hour” group first, then search for “wine” to find only happy-hour-priced wines. This layered filtering is powerful for restaurants with extensive menus.
Modifiers & Notes
Modifiers are the system's way of handling item customization -- everything from cooking temperatures and portion sizes to extra toppings and dietary substitutions. When you tap a menu item that has modifiers configured, a detail panel slides open (either overlaying the menu or appearing beside it, depending on screen size). This panel is where you select all the customization options the guest wants, set the quantity, and write any special instructions for the kitchen.
The modifier system is organized into modifier groups. Each group represents a category of choices. For example, a “Burger” item might have three modifier groups: “Size” (Small, Regular, Large), “Cooking Temperature” (Rare, Medium-Rare, Medium, Well-Done), and “Extra Toppings” (Bacon, Avocado, Jalapeños, Fried Egg). Each group is configured by your admin to be either single-select (you can pick only one option, like a size) or multi-select (you can pick multiple options, like several toppings). Some groups may also have minimum and maximum selection requirements.
Picture this scenario: a guest orders a pizza and says, “I want the large with extra mozzarella, mushrooms, and peppers, but no olives -- and can you write ‘well done’ on the ticket?” You tap “Pizza” on the menu, the modifier panel opens, you select “Large” from the single-select Size group, tap “Extra Mozzarella,” “Mushrooms,” and “Peppers” from the multi-select Toppings group (leaving Olives deselected), and then type “Well done please” in the special instructions field. The kitchen receives a clear, structured ticket with all selections plus the free-text note.
- Single-select groups allow only one option. Tapping a new option automatically deselects the previous one. These are typically used for mutually exclusive choices like size or temperature.
- Multi-select groups allow multiple options. Each tap toggles an option on or off independently. These are used for additive choices like toppings.
- Some modifier groups have minimum/maximum requirements. For example, a group might require at least 1 selection (you must choose a size) or cap selections at 3 (pick up to 3 toppings). The panel will not let you proceed if requirements are not met.
- Modifier options may have additional costs. When you select an option with a price (e.g., “Extra Cheese +$1.50”), the total shown on the modifier panel updates immediately.
- Legacy modifiers from older menu configurations appear in a separate section below the standard modifier groups. They function the same way (tap to toggle) but may not follow the single/multi-select group rules.
- Special instructions are free-text and print exactly as typed on kitchen tickets and the KDS screen. Keep notes concise and clear.
Modifier group types
| Type | Selection Behavior | Example |
|---|---|---|
| Single-select | Only one option can be active at a time | Size: Small, Medium, Large |
| Multi-select | Multiple options can be toggled independently | Toppings: Bacon, Avocado, Egg |
| Required | At least one option must be selected before adding to cart | Cooking Temp: Rare, Medium, Well-Done |
| Optional | Selections are not mandatory; you can proceed without choosing | Extras: Side of ranch, Extra napkins |
| Capped | A maximum number of selections is enforced | Pick up to 3 sauces |
When to use
- When a guest requests customizations (extra cheese, no onions, medium-rare, etc.).
- When you need to set a specific quantity for an item before adding it to the cart.
- When you need to leave a note for the kitchen about a particular item (allergies, preferences).
- When modifying an item that is already in the cart (e.g., the guest changes their mind about a topping).
- When ordering multiples of the same item with different customizations (e.g., two steaks at different temperatures).
How to use
- Tap a menu item that has modifiers configured. The detail panel slides open, displaying the item name, base price, and all available modifier groups.
- Set the quantity using the numpad at the top of the detail panel. The numpad allows you to type a specific number (e.g., “3” for three of the same item) rather than tapping the + button multiple times. This is especially useful for large group orders. Alternatively, use the +/- buttons beside the quantity display.
- Browse modifier groups. Each group is displayed as a labeled section with its options listed below. For single-select groups, options appear as radio-button-style selections -- tapping one automatically deselects any other in that group. For multi-select groups, options appear as checkbox-style toggles -- tap to select or deselect each one independently.
- Pay attention to required indicators. If a modifier group is required, it will be marked with an asterisk or label. The “Add to Cart” button remains disabled until all required groups have at least one selection.
- If the item has legacy modifiers, they appear in a separate section below the standard modifier groups. Legacy modifiers are simple tap-to-toggle options without the group structure. They work the same way -- tap to select or deselect.
- Scroll to the bottom of the detail panel to find the special instructions text field. Type any free-text notes for the kitchen here (e.g., “allergic to nuts,” “extra sauce on the side,” “birthday candle on dessert”). These notes are printed on the kitchen ticket and displayed on the KDS screen.
- Review the updated price at the bottom of the panel. The price reflects the base item cost plus any modifier surcharges. If you selected “Extra Cheese +$1.50” and “Bacon +$2.00,” the displayed price will be the base price + $3.50.
- Press “Add to Cart” to insert the fully customized item into the order cart. The item appears in the cart with all selected modifiers listed beneath the item name.
- To edit modifiers on an item already in the cart, tap that item's row in the cart panel. The detail panel re-opens with all current selections pre-loaded. Make your changes and press “Update” to save. The cart totals recalculate automatically.
- For multiple items with different modifiers (e.g., two steaks at different temperatures), add the first steak with its modifiers, then tap the menu item again to add a second instance with different selections. Each appears as a separate line item in the cart.
All Checks View
The All Checks View is a comprehensive order management screen that gives you visibility into every active order across the entire restaurant -- not just your own tables. It uses a split-screen layout: the right panel presents a filterable, searchable list of all orders, while the left panel displays full details and action buttons for whichever order you have selected. This view is the go-to screen for managers, shift supervisors, and any waiter who needs to find, review, or act on an order without navigating back to the floor map.
Consider a common end-of-shift scenario: a supervisor needs to close out all remaining orders before the restaurant shuts down. Instead of walking to each table and tapping through the floor map, they open the All Checks View, filter by “Open” status, and immediately see a list of every order that still needs attention. They can tap each one, review the details, process a payment, print a receipt, or apply a last-minute discount -- all from a single screen. The same view is equally useful mid-service when a guest calls over a different waiter and says, “I need my check for Table 12.” The waiter opens All Checks, searches for “12,” and has the order details in seconds.
The power of this view lies in its filtering and search capabilities. Status filter tabs at the top of the right panel let you narrow the list to only Open, Paid, or Closed orders. A text search bar lets you find orders by table number, waiter name, or even a specific item name. The combination of these tools means you can pinpoint any order in the restaurant within seconds, regardless of how many active checks exist.
- The All Checks View shows orders from all waiters, not just your own. This is by design -- it enables team collaboration and supervisor oversight. If you only want to see your own orders, use the “Show only my tables” filter on the Dashboard instead.
- Paid orders are those where a payment has been processed but the order has not been formally closed. This is common when a waiter collects payment but has not yet cleared the table. Paid orders should be closed out promptly to keep the list clean.
- Closed orders remain visible in the list for the duration of the business day (or session, depending on configuration). They provide a historical reference but cannot be modified.
- Actions performed from the left panel (payment, print, discount, split) work exactly the same as performing them from the table's own order page. The All Checks View is simply a faster way to access them.
- The search function matches against table numbers, waiter display names, and item names within orders. Searching for “steak” will show all orders that contain a steak item.
Status filter tabs
| Status | What It Shows | Typical Use |
|---|---|---|
| Open | Orders actively being served; items may still be in kitchen | Managing current service, adding items, taking more orders |
| Paid | Orders where payment has been collected but not formally closed | End-of-shift close-out, verifying payments, printing final receipts |
| Closed | Fully completed orders (paid and closed) | Historical reference, investigating past orders, shift reporting |
| All (default) | Every order regardless of status | Getting a complete picture of the day's orders |
Left panel actions
| Action | Icon | Description |
|---|---|---|
| Process Payment | Credit card | Opens the payment flow for the selected order (cash, card, or split payment) |
| Print Check | Printer | Sends the check to the configured receipt printer for guest review |
| Apply Discount | Receipt | Opens the discount selector to apply percentage or fixed-amount discounts |
| Split Check | Split | Enters the split check workflow to divide the order into sub-checks |
| View Order Details | Eye | Expands the full item list with modifiers, notes, and pricing breakdown |
When to use
- When you need a bird's-eye view of all current orders across the restaurant.
- When looking up a specific order by table number, waiter name, or status.
- When you need to process a payment, print a check, or apply a discount without navigating to the floor map first.
- When a supervisor needs to monitor all active orders during a busy service.
- When closing out remaining orders at the end of a shift.
- When another waiter asks you to handle a payment for one of their tables.
How to use
- Open the All Checks view from the waiter sidebar or navigation menu. The screen loads with the split-panel layout: order list on the right, detail panel on the left (initially empty or showing the most recent order).
- The right panel lists every order. By default, all statuses are shown. Use the status filter tabs at the top of the panel to narrow the list:
- Open -- orders still being served; items may still be in the kitchen or awaiting delivery.
- Paid -- orders that have been paid but not yet formally closed. These are waiting for final close-out.
- Closed -- fully completed orders. Useful for reference but not editable.
- Use the text search bar to find a specific order. You can search by table number (e.g., “12”), waiter name (e.g., “Sarah”), or item name (e.g., “Margherita”). The list filters in real time as you type.
- Tap an order in the right panel list. The left panel loads its full details: table number, assigned waiter name, a complete itemized list with modifiers and notes, any applied discounts, subtotal, tax (if applicable), total, amount paid, and remaining balance.
- From the left panel, use the action buttons to perform operations on the selected order:
- Process a payment -- opens the payment dialog where you can select cash, credit card, or other configured payment methods. You can also process a partial payment.
- Print the check -- sends the formatted check to the receipt printer so the guest can review the total before paying.
- Apply a discount -- opens the discount selector. You can choose a percentage discount (e.g., 10% off) or a fixed amount (e.g., $5 off). Some discounts may require manager approval depending on your role and configuration.
- Split the check -- enters the split check workflow where you can divide the order into multiple sub-checks. See Split Checks for the full process.
- After performing an action (e.g., processing a payment), the order's status in the right panel list updates in real time. A paid order moves from the “Open” filter to the “Paid” filter automatically.
Kitchen Pickup
The Kitchen Pickup screen is the bridge between the kitchen and the dining room. It uses a two-column layout that tracks the complete lifecycle of prepared items from the moment the kitchen marks them as ready to the moment you deliver them to the guest's table. The left column shows items the kitchen has marked as “Ready for Pickup” -- these are sitting at the pass waiting for a waiter to collect them. The right column shows items you have already picked up and are carrying to tables, waiting for you to confirm delivery.
This two-step workflow (pickup, then deliver) exists for a reason. In a busy restaurant, a waiter might pick up multiple items for different tables in a single trip to the kitchen. The right column acts as a reminder of what you are carrying and which tables each item belongs to. For example, you walk to the pass, pick up a steak for Table 3 and a pasta for Table 7. Both move to the right column. You deliver the steak first and tap “Deliver” on Table 3's card. Then you walk to Table 7 and deliver the pasta, tapping “Deliver” on that card. This ensures nothing is forgotten, even when juggling multiple tables.
The screen is powered by real-time WebSocket (MQTT) connections. When the kitchen marks an item as ready on the KDS or kitchen printer, it appears in the left column of your Kitchen Pickup screen instantly -- no manual refresh, no polling. A sound alert also plays to grab your attention, which is critical during busy service when you might not be looking at the screen. Each item card shows the table number, the item name, a timer showing how long the item has been waiting, and a badge indicating whether the table is assigned to you (“Your Table”) or to another waiter.
- The “Your Table” badge appears on items belonging to tables assigned to you in the Admin module. Items for other waiters' tables show that waiter's name instead. You can still pick up items for other waiters -- the badge is informational, not a restriction.
- The wait timer starts counting from the moment the kitchen marks the item as ready, not from when the order was placed. Long wait times indicate food sitting at the pass, which affects quality.
- Sound alerts play only for items belonging to your assigned tables. Items for other waiters' tables appear silently in the list. This prevents alert fatigue in restaurants with many waiters.
- If multiple items for the same table become ready simultaneously, they are grouped under a single card with the table number, allowing you to pick up all items for that table in one action.
- The “Deliver” action in the right column is a confirmation step. It removes the item from your pickup list and updates the order status in the system. If you forget to tap “Deliver,” the item remains in the right column indefinitely.
Two-column layout reference
| Column | Title | Contents | Action Button |
|---|---|---|---|
| Left | Ready for Pickup | Items the kitchen has finished preparing, waiting at the pass | Pick Up -- moves item to right column |
| Right | Picked Up | Items you have collected from the kitchen and are carrying to tables | Deliver -- confirms delivery and removes the item |
Item card information
| Element | Description |
|---|---|
| Table Number | The table the item belongs to, displayed prominently |
| Item Name | The menu item name with modifiers listed below |
| Wait Timer | Time elapsed since the kitchen marked the item as ready |
| 'Your Table' Badge | Green badge shown when the table is assigned to you |
| Waiter Name Badge | Shows the assigned waiter's name when it is not your table |
| Quantity Indicator | Shows the count when multiple units of the same item are ready |
When to use
- When the kitchen has finished preparing items and you need to collect them from the pass.
- When you need to confirm delivery of items to the correct table after collecting them.
- When you hear a sound alert indicating new items are ready for one of your tables.
- When you want to check whether any of your tables have items waiting at the pass.
- When helping another waiter by picking up their items during a busy period.
How to use
- Open the Kitchen Pickup screen by tapping the Kitchen tab at the top of the Dashboard, or by selecting Kitchen Pickup from the sidebar navigation. The two-column layout loads immediately with any currently ready or picked-up items.
- Check the left column (“Ready for Pickup”). Each card represents an item or group of items waiting at the pass. Review the table number, item names, and the wait timer on each card. Cards with the “Your Table” badge are items for tables assigned to you and should be prioritized.
- Tap “Pick Up” on a card to acknowledge that you have physically collected the item from the kitchen pass. The card animates and moves from the left column to the right column. You can pick up multiple items from different tables before making your delivery rounds.
- Walk to the table and deliver the item to the guest. Once the item is on the table, return to the Kitchen Pickup screen (or use your device while at the table) and tap “Deliver” on the corresponding card in the right column. The card is removed from the list and the order is updated in the system.
- When a new item becomes ready, a sound alert plays (if the item belongs to one of your assigned tables) and the card appears in the left column instantly via the real-time WebSocket connection. There is no need to refresh the page or navigate away and back.
- To pick up items for another waiter, simply tap “Pick Up” on their items. The system does not restrict you from picking up items for tables not assigned to you. This is useful during rush periods when teamwork is essential.
- If you have picked up an item but realize you cannot deliver it yet (e.g., the guest stepped away from the table), the item remains in the right column until you explicitly tap “Deliver.” It will not time out or automatically return to the left column.
Split Checks
Split Checks is the feature that handles one of the most common requests in any restaurant: “Can we get separate bills?” When guests at the same table want to pay individually, the Split Checks workflow lets you divide a single order into multiple sub-checks, each with its own itemized list, totals, and independent payment processing. The feature is designed to be visual and intuitive, using drag-and-drop to move items between sub-checks.
Here is a typical scenario: four friends finish dinner at Table 8. Two of them shared a bottle of wine, one had a steak, and another had a salad. They want to pay separately, but they want to split the wine cost evenly between the two who drank it. You open the Split Check view, create four sub-checks (one per guest), drag the steak to Guest 1's sub-check, the salad to Guest 2's, and then use the “Split Evenly” feature on the wine bottle to divide its cost equally between Guest 3's and Guest 4's sub-checks. Each guest now has their own bill reflecting exactly what they owe.
The split check interface shows all sub-checks side by side on screen, each as a separate column or card. Items can be moved between sub-checks by dragging them with the grip handle. Each sub-check independently tracks its own subtotal, discounts, tax, and total. You can process payments on each sub-check independently -- one guest can pay cash, another with a credit card, and a third with a mobile payment -- all on the same table's order. This flexibility means you never have to awkwardly tell guests they all need to use the same payment method.
- Drag and drop is the primary mechanism for moving items between sub-checks. On touch devices, press and hold the grip handle on an item, then drag it to the target sub-check. On desktop, click and drag.
- The “Split Evenly” feature divides a single item's cost equally across two or more sub-checks. It does not create duplicate items -- it creates proportional cost entries. The original item remains associated with one sub-check for kitchen tracking purposes.
- Per-check payments are fully independent. Each sub-check can use a different payment method. A sub-check can also be partially paid (e.g., $20 cash now, remainder on card later).
- Sub-check statuses are tracked individually: Open (no payment yet), Partially Paid (some payment collected), and Fully Paid (total covered). These statuses are visible on the split check screen.
- Reverting a split is only possible when no sub-check has been paid. Once any payment is processed on any sub-check, the split becomes permanent and cannot be undone. This is the most important rule to communicate to guests before you start processing payments.
- You can create as many sub-checks as needed. There is no practical limit -- if a table of 10 all want separate bills, you can create 10 sub-checks.
Split check actions
| Action | How To | Notes |
|---|---|---|
| Create sub-check | Tap '+ New Sub-Check' button | Creates an empty sub-check ready to receive items |
| Move item | Drag and drop using grip handle | Works on touch (press-hold-drag) and desktop (click-drag) |
| Split item evenly | Select item, tap 'Split Evenly', choose sub-checks | Divides cost proportionally; original item stays on one sub-check |
| Process payment | Tap payment button on individual sub-check | Each sub-check supports independent payment methods |
| Revert split | Tap 'Revert Split' button | Only available when NO sub-check has been paid |
| Print sub-check | Tap print button on individual sub-check | Prints a receipt for just that sub-check's items |
When to use
- When guests at the same table want separate bills.
- When a group wants to split a shared item (e.g., a bottle of wine) evenly among specific guests.
- When one guest wants to pay for specific items while others cover the rest.
- When guests want to use different payment methods (cash, card, mobile) at the same table.
- When a large group needs individual receipts for expense reporting.
How to use
- Open the order for the table you want to split. You can do this from the floor map by tapping the table, or from the All Checks View by selecting the order.
- Tap the “Split Check” button . The view transforms to show the original check on the left and an empty sub-check on the right. You can create additional sub-checks by tapping the “+ New Sub-Check” button.
- Drag and drop items from the original check into the appropriate sub-check. On touch devices, press and hold the grip handle on the left side of an item row, then drag it to the target sub-check column. On desktop, click and drag. As you move items, the totals on both the original check and the receiving sub-check update in real time.
- To split a shared item evenly (e.g., a bottle of wine shared by two guests), tap the item in the original check to select it, then choose the “Split Evenly” option from the action menu. A dialog asks you to select which sub-checks should share the cost. The item's price is divided equally among the selected sub-checks, and each sub-check shows its proportional share.
- Review each sub-check's totals. Each sub-check independently shows its own subtotal, any applicable discounts, tax, and total. Verify that the sum of all sub-check totals equals the original order total before proceeding with payments.
- Process per-check payments by tapping the payment button on each individual sub-check. Each sub-check supports its own payment method -- Guest A can pay cash, Guest B can pay by credit card, and Guest C can use a mobile payment app. You do not need to process all payments at once; you can handle them one at a time as guests are ready.
- Track sub-check statuses on screen. Each sub-check shows its current status: “Open” (no payment), “Partially Paid” (some payment received), or “Fully Paid” (total covered). Once all sub-checks are fully paid, the entire order is considered paid.
- If guests change their mind before any payment is processed, tap “Revert Split” to merge all sub-checks back into the original single check. All items return to the main check and the sub-checks are deleted.
Temporary Tables
Temporary tables are ad-hoc order points that do not correspond to a physical table on the restaurant's floor map. They solve a common operational problem: what do you do when you need to take an order but there is no table to attach it to? Takeout orders, catering requests, phone orders, bar tabs without a seated table, overflow seating during events -- all of these scenarios need a way to create, track, and process an order without a permanent table assignment. Temporary tables fill that gap.
There are two variants: Temp Tables and Quick Orders. Both create temporary order points, but they serve slightly different workflows. A Temp Table is a full-featured temporary table that appears on the floor map with a purple badge, supports QR code generation, and can be transferred to a regular table if the guest decides to sit down. A Quick Order is a more streamlined variant that appears with a blue badge and is optimized for fast, one-off orders that will be paid and closed quickly (like a walk-in takeout or a quick coffee order).
Consider this scenario: it is Friday evening and the restaurant is fully booked. A guest walks in and asks to place a takeout order for two pizzas. You do not want to tie up a physical table for a takeout order, so you tap “Temp Table” in the sidebar. A new purple-badged table appears on the floor map. You tap it, add the two pizzas with modifiers, and send the order to the kitchen. The guest gets a QR code they can scan to check order status. Twenty minutes later, the pizzas are ready, the guest pays, and the temporary table automatically disappears from the floor map. No physical table was ever involved, and the dine-in floor map stayed clean for the seated guests.
- Purple badge = Temp Table. These are full-featured temporary tables that support the complete order lifecycle including QR codes, order transfer, splitting, and all payment methods.
- Blue badge = Quick Order. These are streamlined temporary order points designed for speed. They support the same ordering workflow but are optimized for quick transactions.
- Temporary tables appear on the floor map alongside regular tables but are visually distinct due to their colored badges. They do not have a fixed position on the map -- they appear in a designated area or float at the edge.
- The QR code feature is unique to temporary tables. When generated, it provides a scannable code that can be printed on a receipt or shown on screen. Guests can scan it to view their order status or, if self-service ordering is enabled, to add items to the order themselves.
- Order transfer moves all items from a temporary table to a regular table. This is a one-way operation -- once transferred, the temporary table is removed and the order lives on the regular table. The transfer preserves all items, modifiers, and notes.
- Temporary tables are automatically cleaned up when the order is fully paid and closed. You do not need to manually delete them.
Temp Table vs Quick Order comparison
| Feature | Temp Table (Purple) | Quick Order (Blue) |
|---|---|---|
| Floor map badge | Purple | Blue |
| Full order workflow | Yes | Yes |
| QR code generation | Yes | No |
| Transfer to regular table | Yes | No |
| Split check support | Yes | Limited |
| Auto-cleanup on close | Yes | Yes |
| Best for | Takeout, catering, overflow, phone orders | Quick walk-in purchases, coffee orders, bar snacks |
When to use
- When a walk-in guest places a takeout order and there is no dedicated takeout station on the floor map.
- When you need a quick, one-off order without assigning it to a physical table (Quick Order).
- When handling catering or special event orders that do not correspond to any table on the map.
- When a guest calls in a phone order and you need to track it in the system.
- When overflow seating is needed during events and temporary stations are set up.
- When you want to provide a guest with a QR code to track their takeout order status.
How to use
- In the Dashboard sidebar, tap the “Temp Table” button to create a new temporary table. It immediately appears on the floor map with a purple badge and is assigned a sequential temporary table number (e.g., “T1,” “T2”).
- Alternatively, tap “Quick Order” to create a streamlined order point. Quick orders appear on the floor map with a blue badge and are designed for fast transactions that will be completed quickly.
- Tap the temporary table on the floor map to open its order page. The ordering workflow is identical to regular tables -- browse the menu, add items, set modifiers and notes, and send to the kitchen. The left-side cart and right-side menu panel work exactly the same way as described in Taking Orders.
- To generate a QR code , open the temporary table's order page and tap the QR code button. A QR code is generated that links to the order. You can print it on a receipt to give to the guest (useful for takeout pickup identification) or display it on screen for the guest to scan. If self-service ordering is enabled in Admin, the guest can scan the QR code to view their order status and potentially add items.
- If the guest decides to sit down after initially placing a takeout order, you can transfer the order from the temporary table to any available regular table on the floor map. Open the temporary table's order page, tap the “Transfer” button, and select the destination table. All items, modifiers, notes, and pricing transfer to the regular table. The temporary table is removed from the floor map.
- Process payment on a temporary table the same way you would on a regular table. Open the order page, review the total, and tap the payment button. All payment methods (cash, card, mobile) are supported.
- Once the order is fully paid and closed, the temporary table is automatically removed from the floor map. There is no manual cleanup step required. If the order is abandoned without payment, the temporary table remains on the map until a manager closes or voids the order.
Additional Capabilities
Real-Time WebSocket Updates
Table status changes, new orders, and kitchen notifications are pushed to your device instantly via MQTT. No polling, no manual refresh needed.
Sound Notifications
An audible alert plays whenever an item assigned to one of your tables is marked as ready for pickup by the kitchen, so you never miss a dish.
Role-Based Table Access
Tables can be assigned to specific waiters. The "Show only my tables" toggle and table-ownership badges ensure each waiter focuses on their section without stepping on others.
Order History Drawer
Open the order history drawer on any table to see all previous orders placed at that table during the current session, including items, timestamps, and payment status.