Cashier Management — Overview
The Cashier Management feature allows Shops to manage Cashier accounts, schedule work, assign devices, control cash transactions with Players, and perform per-shift cash reconciliation.
Goals
- Allow Shops to create and manage Cashier accounts.
- Allow Shops to schedule and assign Cashiers to each shift.
- Control devices used in each shift.
- Accurately record cash transactions performed by Cashiers.
- Reconcile opening cash, cash in, cash out, and closing cash per shift.
- Detect and handle discrepancies.
- Support no-show, suspension, device blocking, and shift handover.
- Provide a full audit trail for Shop Managers.
Core principles
| Principle | Description |
|---|
| One Cashier — one Shop | Each Cashier belongs to only one Shop. |
| Cash only | All transactions between Cashier and Player are in cash (US bills + coins). |
| Full traceability | Every transaction must link cashierId, shiftId, shopId, deviceId. |
| Blind closing | Cashier cannot see Expected Closing Cash before submitting. |
| Manager review | Discrepancies are handled only by Shop Manager. |
Actors
| Actor | Primary role |
|---|
| Shop Manager | Create Cashier, schedule shifts, assign devices, handle no-show, reconciliation, discrepancy |
| Admin | View by permission; assign shift if Cashier belongs to the correct Shop; does not handle day-to-day no-show |
| Cashier | Start shift, opening/closing cash, deposit/redemption, cash drop, handover |
Portals
| Portal | Functions |
|---|
| Shop Portal | Cashier accounts, devices, scheduling, exceptions, approvals, reconciliation, reports |
| Cashier Portal | Login, assigned shift, opening cash, transactions, cash drop, closing, handover |
Documents in this section
| Page | Content |
|---|
| Detailed spec | Full business requirements — account, shift, device, transaction, reconciliation |
| HTML Prototype | 17 interactive static screens — Shop Portal + Cashier Portal |
Out of Scope (Soft Release)
- Break time
- Fixed / Flexible shift type
- Recurring shift, shift template
- Morning / Afternoon / Evening shift category
- Online shift swap request
- Overtime, payroll, formal attendance
- Performance bonus, commission
- Automatic disciplinary action
Shift swaps or having another Cashier cover a shift are handled offline. After both Cashiers agree, the Shop Manager updates the assignment on the schedule.
Overall acceptance criteria
- Shop can create a Cashier belonging to exactly one Shop.
- Cashier can log in with email, username, or phone number.
- Shop creates a shift with date, scheduled time, Cashier, and active device.
- System blocks Cashier/device assignment to overlapping shifts.
- Cashier can only start a shift on the assigned device.
- Cashier enters opening cash before transactions.
- Deposit does not require Player OTP; redemption follows limit and approval rules.
- Every transaction stores
cashierId, shiftId, shopId, deviceId.
- Cashier can only view transactions from their own shift; cannot edit/cancel/reverse.
- Closing count uses blind count; system auto-calculates Expected Closing Cash and Discrepancy.
- Shifts with discrepancy must be reviewed by Shop Manager.
- No-show is handled by Shop only; Admin is not notified.
- Block Device ≠ Suspend Cashier.
- Handover records cash by denomination and requires confirmation from the recipient.
- Auto-Locked shifts still require reconciliation.
- Every important action has an audit log.