Store Day Lifecycle¶
Models the lifecycle of a Store Trading Day — the operational unit that represents a single day of store activity from pre-opening preparation through trading to end-of-day reconciliation and closure. Governs cash management, till sessions, task execution, and daily reporting.
Object: store-day ·
States: 7 ·
Transitions: 8
State Diagram¶
flowchart LR
%% ── classDef palette ─────────────────────────────────────
classDef stInit fill:#0d9488,stroke:#0f766e,color:#fff,font-weight:bold
classDef stNorm fill:#3b82f6,stroke:#2563eb,color:#fff
classDef stOk fill:#16a34a,stroke:#15803d,color:#fff,font-weight:bold
classDef stFail fill:#dc2626,stroke:#b91c1c,color:#fff,font-weight:bold
classDef stHold fill:#d97706,stroke:#b45309,color:#fff
%% ── nodes ───────────────────────────────────────────────
scheduled(["Scheduled"])
pre_opening["Pre-Opening"]
open["Open"]
closing["Closing"]
reconciling["Reconciling"]
closed[["Closed"]]
exception[["Exception"]]
%% ── transitions ─────────────────────────────────
scheduled -->|"store-day-pre-opening-started"| pre_opening
pre_opening -->|"store-day-opened"| open
open -->|"store-day-closing-started"| closing
closing -->|"store-day-reconciliation-started"| reconciling
reconciling -->|"store-day-closed"| closed
reconciling -->|"store-day-reopened"| open
open -->|"store-day-exception-declared"| exception
closing -->|"store-day-exception-declared"| exception
%% ── class assignments ───────────────────────────
class scheduled stInit
class pre_opening,open,closing,reconciling stNorm
class closed,exception stOk
States¶
| State | Label | Description | Initial | Terminal |
|---|---|---|---|---|
scheduled |
Scheduled | Trading day pre-configured — staff rotas assigned, opening tasks queued. | ✓ | |
pre-opening |
Pre-Opening | Store preparation underway — float counted, tills initialised, daily briefing held. | ||
open |
Open | Store is trading; transactions are accepted, staff tasks in execution. | ||
closing |
Closing | End-of-day procedures initiated — last customers served, tills closing. | ||
reconciling |
Reconciling | Cash reconciliation and end-of-day reporting in progress; transactions frozen. | ||
closed |
Closed | Day fully reconciled and closed; all reports submitted. | ✓ | |
exception |
Exception | Day closed early or suspended due to emergency (evacuation, system failure, incident). | ✓ |
Transitions¶
| From | To | Trigger | Guards |
|---|---|---|---|
scheduled |
pre-opening |
store-day-pre-opening-started |
Staff present and rota confirmed; Opening float available |
pre-opening |
open |
store-day-opened |
Opening checklist complete; Minimum till float confirmed; POS terminals online |
open |
closing |
store-day-closing-started |
Closing time reached or manager-initiated; No active transactions pending |
closing |
reconciling |
store-day-reconciliation-started |
All tills closed and cash declared; Last customer transaction complete |
reconciling |
closed |
store-day-closed |
Cash declared matches till session totals within tolerance; Daily sales report generated and submitted; All end-of-day tasks marked complete |
reconciling |
open |
store-day-reopened |
Manager override required for correction; Variance above tolerance requires investigation |
open |
exception |
store-day-exception-declared |
Emergency (evacuation, system outage, security incident); Manager authorisation |
closing |
exception |
store-day-exception-declared |
Reconciliation cannot complete due to system or security issue |