The glovebox of a super’s truck is a filing system the way a junk drawer is a toolbox. Crumpled fuel receipts, a lumber yard ticket folded around a pack of gum, the thermal-paper slip from the hardware store already fading to a ghost. Meanwhile the office is chasing a vendor invoice that should have hit the budget three weeks ago, the owner wants to know why the framing line is over, and nobody can say for sure whether that $3,200 tile charge was the change-order tile or the base-contract tile. The money got spent. The story of the money got lost.
Receipts and invoices are the most boring documents on a job and the ones that decide whether you make money. A drawing tells you what to build. A schedule tells you when. The receipts and invoices tell you what it actually cost — and if they don’t reach the right budget line in something close to real time, your cost report is fiction. You don’t find out you’re bleeding on a line until the job’s closed and the cash is gone. The fix isn’t a better shoebox. It’s a habit: capture every charge where it lands, read what it says, and connect it to the scope it belongs to.
Why the pile wins by default
The problem isn’t that crews are sloppy. It’s that the paper trail is scattered across the exact channels where work actually happens. A sub emails a pay app as a PDF. A supplier texts a photo of the will-call ticket. The super snaps a picture of a hardware-store receipt and it dies in his camera roll. The rental house mails a monthly invoice that sits in a physical inbox. Five sources, five formats, no two arriving the same way — and the one person who could tie each charge to a cost code is the one driving between sites all day. So charges pile up faster than anyone codes them, and by the time the bookkeeper sits down, the context is cold. Was the concrete delivery for the garage slab or the back patio? Is this the electrician’s second invoice or a duplicate of the first? Every unanswered question is a guess, and guesses are how a job that looked comfortable at framing finishes over at closeout with no one able to point at where it turned.
A charge with no scope attached isn’t cost data. It’s a rumor with a dollar sign.
The job of a receipt is to find its scope
Here’s the mental shift. A receipt or invoice isn’t a record of a purchase — that part’s trivial. Its real job is to attach itself to a place in your cost structure: a budget line, a purchase order, or a change order. Until it does, it’s a number floating free. The whole discipline of construction cost accounting is making sure every dollar that leaves lands on a line that was planning to spend it — and flagging loudly when it doesn’t. Tie that $3,200 to CO #14 and your change-order log is current, the owner’s next bill is right, and the base budget stays clean. Leave it unattached and you get the classic mess: scope creep billed as base contract, a budget line that looks healthy because the cost is hiding somewhere else, and an argument at closeout you can’t win because the paper doesn’t back you up.
The playbook: capture, read, connect, reconcile
You don’t need an accounting degree or a six-figure ERP to keep cost accounting current. You need a routine that survives a busy week — a few moves, in order, every time a charge appears, done the moment it shows up rather than in a Sunday-night catch-up that never quite happens. Notice what each step defends against: capture-at-source kills the lost receipt, reading the document kills the “what was this for?” black hole, connecting to scope kills the misallocated cost, and reconciling kills the duplicate payment and the silent overbilling.
- 1
Capture at the source
One inbox for everything. The super texts the photo, the sub emails the PDF, the rental house’s invoice gets forwarded — all to the same place, the moment it exists. No camera roll, no glovebox, no “I’ll deal with it later.”
- 2
Read what it actually says
Pull the vendor, date, amount, invoice or PO number, and line items off the document. A blurry photo of a fading thermal receipt still has a total and a date — get them down before the ink disappears.
- 3
Connect it to scope
Match each charge to its budget line, PO, or change order. This is the load-bearing step. A charge you can’t place gets flagged for a human, not silently dumped into “miscellaneous.”
- 4
Reconcile and flag
Compare committed (the PO or CO) against actual (the invoice). Catch duplicates, overbillings, and charges that map to no approved scope — while you can still do something about it.
Where BRAD fits
This is the kind of dull, relentless paperwork a shared project brain is built for. BRAD takes the documents and messages a job already runs on — forward it the supplier invoice, text it the photo of the will-call ticket, copy it on the email thread with the sub — and reads them. It pulls the vendor, amount, date, and line items off the page, including the crumpled photo. Then it connects each charge to the rest of the project record it’s already holding: the budget, the POs, the change orders, the RFI that authorized the extra work. When the tile invoice shows up, BRAD can tie it to CO #14 because it already knows CO #14 exists and what it covered. And when the question comes — “did we already pay this electrician invoice?”, “what’s actually hit the framing line so far?”, “is this base contract or change order?” — you ask over email or text, the way you’d ask anyone, and the answer comes back with the source attached. Not a number someone half-remembers — the invoice itself, the PO it reconciles against, the change order it belongs to. The citation is the point: you can act on an answer you can click through to.
The crews who keep cost accounting current aren’t more disciplined people. They’ve just stopped trusting memory and the glovebox. Every charge goes to one place, gets read, and finds its scope — the day it happens, not the week the job closes. Do that, and the cost report stops being a postmortem and starts being a gauge you can steer by. You see the framing line drifting the moment it drifts, while there’s still a job left to steer.