Staff POS Specification
Status: Canonical
Last Updated: 2026-05-11
Source: POS components in apps/frontend/components/pos/
Doc Status: Excellent | ✓ All 6 checks passed
Overview
The POS system has three main views: Reception (check-in and table management), Kitchen Display (KDS for order preparation), and Staff Mobile View (floor staff taking orders at tables). All views use Convex subscriptions for real-time updates.Related specs
- Tech Stack — Real-time via Convex subscriptions
- Data Model — tables, orders, orderItems, menuItems
- Admin Dashboard — Admin configures POS challenges
- Gamification — Challenges (spin, photo wall) at table
- Notifications — ORDER_READY notifications
- User Stories — US-S01 through US-S05 cover staff
POS Views
The POS system has three main views for different staff roles:1. Reception View
Purpose: Check in guests, manage tables Located:/dashboard/admin/pos/reception
Features:
- Table layout visualization
- Reservation list for shift
- QR code scanning for check-in
- Table status updates
- Walk-in management
2. Kitchen Display (KDS)
Purpose: View and update order preparation Components:components/pos/kitchen-display.tsx
Features:
- Orders list with status
- Status filters: Received, Preparing, Ready, Served
- Order cards showing: Table number, Items ordered, Special notes, Time since order
- One-tap status updates
- Audio alerts on new orders
3. Staff Mobile View
Purpose: Floor staff take orders at tables Components:components/pos/staff-order.tsx
Features:
- Table list with status
- Take order at table
- Add items from menu
- Submit order to kitchen
- View order status
Table Management
Table States
| State | Description |
|---|---|
| AVAILABLE | Empty, ready for seating |
| RESERVED | Expected reservation |
| OCCUPIED | Guests seated, order in progress |
| MAINTENANCE | Unavailable |
Order Flow
Orders progress through statuses:Order Details
Order Card Shows
- Table number
- Reservation ID (if linked)
- Items with quantities
- Special instructions
- Order time
- Status badge
Order Actions
- Update item status
- Mark order complete
- Add comp items
- Print ticket (future)
Menu Items
Categories
- FOOD: Appetizers, Mains, Desserts
- BEVERAGE: Soft drinks, Beer
- COCKTAIL: Bar drinks
- WINE: Wine list
Item Display
- Name
- Description
- Price (VND)
- Availability toggle
- Featured badge
Comp System
Staff can mark items as complimentary from:- Spin result — Lucky spin prize
- Photo win — Photo wall winner
- Google review — Review challenge reward
orderItems.isComp with compSource field.
Real-Time Updates
All POS views use Convex subscriptions for real-time updates:- New orders appear immediately
- Status changes reflect instantly
- No page refresh needed