Welcome. Sign in to continue.
Development sign-in, used only where Clerk is not configured.
Everyone who services a machine or counts a bag needs their own sign-in. Shared logins are what make the cash question unanswerable.
Access and visibility only. Renaming a role changes a word on a screen and nothing about what anybody may do.
Who is signed off to handle cash, hold keys and service a machine — and who signed them off. Append-only: withdrawing a sign-off is a row, not an erasure.
Guided, on screen, step by step — the route a new driver follows on their first day. Runs survive a refresh and resume on another device.
Punches are facts; hours are derived from them and never stored. A forgotten punch is flagged, never guessed at — the number somebody gets paid for is not one to invent.
Who did what, in this workspace. Append-only — nothing here can be edited or removed, including by us.
A plan caps seats and unlocks add-ons. It never changes the money math — Free records a collection with exactly the arithmetic Pro does.
Operators, who has access to what, and granting it. Every act here is recorded to the platform log. This screen is a convenience; the boundary is the server.
The sites that host your machines. Commission is their share of gross sales — cash and card alike, because they hosted all of it.
Sales are derived by subtracting consecutive cumulative meter readings. Only cumulative counters are stored — a resettable one can be cleared by anything else that reads the machine, and the loss looks exactly like theft.
Bulk heads: set the price per vend and
the turn counter is enough — cash is derived as turns × price. Tick
no counter for a purely mechanical head: its cash is recorded but can never be
reconciled, and the report will say so rather than showing an empty column.
Multi-head racks: add the rack first, then each head with the rack picked
as its parent. Counters are read per head; the bag is counted once for the rack, and the
rack is what gets settled.
Micro-markets: untick takes coin. Cash sales are then zero by
design rather than unknown, which is what makes the variance and the commission
answerable instead of permanently blank.
A route is an ordered list of stops with somebody assigned. The order you drive is kept — it encodes things this system cannot see, like which site opens at seven. What the product adds is how soon each stop runs dry, so a run is a worklist rather than a calendar.
Counted cash against cash sales — never against gross. A machine that took £100 in coin and £60 on card, emptied of exactly £100, is reconciled.
What you sell, who you buy it from, and what you paid. Unit cost is a weighted average of the last 90 days of purchases — recent enough to follow a price rise, wide enough to cover stock still sitting in a machine. Exact arithmetic over an inexact input, so anything derived from it is labelled an estimate.
Units are singles, not cases. A case of 24 bought for 18.00 is 24 units, 18.00 — that way every cost downstream works without needing to know a pack size it may not have.
These follow you into every workspace.
Somebody who is a manager at one operator and a driver at another wants a different landing in each.
| Workspace | Your role |
|---|
This describes how the software works — not how to run your route, which is yours.