Cash drawer reconciler
A small system that takes the end-of-shift count and the till report, works out the variance, tries to explain it from the day’s own records — a refund, a no-sale, a float change, a tip-out — and surfaces only what is left. It never accuses anybody of anything and it never looks at one person in isolation. Seven posts on the same system — one diagram at a time — with a cost breakdown and an engineering reference at the end.
- 01
A cash drawer reconciler on AWS for a few dollars a month
The whole system on one page — a reader, an explainer and a surfacer — plus the rule that keeps it decent: it explains before it reports, and it never looks at one shift in isolation.
- 02
How a close gets recorded
Two inputs that arrive separately and must be paired — a photographed count sheet and a till report. How they get matched to one shift, and what happens when only one of them shows up.
- 03
How a variance gets explained
Five lookups run in order of likelihood — cash refunds rung as card, no-sales, float changes, safe drops and tip-outs — most of which explain the whole variance before anybody is told a number.
- 04
How a cash pattern gets surfaced
A rolling window over residual variance per till and shift slot. Three patterns are worth a message, single shifts never are, and exactly one case skips the window entirely.
- 05
How a cash finding gets closed
A finding closes by recording a cause, which suppresses that pattern until it changes shape. The monthly summary carries two numbers about the money and two about whether the thresholds are set right.
- 06
What the cash drawer reconciler costs
About $3 a month. One Bedrock read per close is the only line that grows; the queue, the table, the mail and the storage are rounding errors. Plus the three ways the bill could surprise you.
- 07
Engineering reference: the cash drawer reconciler architecture
Same system, drawn purely for engineers. Service names, region, Lambda inventory, IAM scopes, the schemas and the exact model id.
Frequently asked questions
- What is a cash drawer reconciler?
- A small serverless system that compares the counted cash at the end of a shift with what the till says should be there, works out the variance, and tries to explain it from the day’s own records before telling anybody. Only unexplained variance above a threshold you set reaches a person.
- Does it accuse staff of taking money?
- No, and the design is built to avoid it. Almost all variance is a mis-keyed refund, a float that was changed and not recorded, or a note miscounted at eleven at night. The system explains what it can, aggregates over time rather than reacting to single shifts, and phrases everything as a question about a till, not a person.
- What does it compare against?
- The till or point-of-sale report for the same shift, the day’s refunds and no-sales, the recorded float, and any tip-out or safe drop logged during the shift. All of those already exist; the system just puts them in one place.
- What if the count sheet is handwritten?
- That is the normal case. A photo of the count sheet is a first-class input: Textract pulls the denomination grid and anything the reader cannot read confidently becomes a question with the crop attached, never a guessed number.
- What does it cost to run?
- A few dollars a month for a handful of tills. Nothing is always-on. See part six.