From inbox to ledger: accounting automation across four companies
Till takings, supplier invoices, payroll journals and month-end accruals were all keyed by hand, and every company did it a little differently. We built a chain that carries documents and point-of-sale data through to the ledger, with a person approving every post.
At a glance
- 4
companies' books
- 7
posting tools and skills
- 579
lines in one product-to-ledger map
- 0
payments made automatically
The challenge
Each company had its own tills, its own suppliers and its own VAT position. The recurring work was the same everywhere though: read a document or a day's sales, decide where it goes, key it in and hope it ties.
We wanted that work prepared by software and agents, decided by a person, and posted in a way that can never produce a duplicate.
Architecture
Swipe to explore the diagram
Two routes into the ledger, one gate. Documents arrive through mail rules and agent skills, takings through scheduled posters, and both commit through the fenced accounting server.
What we built
Daily takings
- Posters that read point-of-sale data, map items and tenders, and post a sales receipt plus bank transfers
- They refuse unmapped products rather than guess, and run as a dry run unless told otherwise
- Gap-driven: compare finished trading days with days already in the ledger, and post only what's missing
Supplier documents
- Written per-sender mail rules that save supplier documents into per-company folders
- An agent skill that reads each PDF, looks up how that supplier was posted before, attaches the document and asks for an OK
- A recipe per supplier that builds up from ledger history
Payroll and month end
- Payroll journals including holiday accrual, and the employment allowance timing pair with its reversal
- Month-end accruals with next-month reversals, which refuse to run on the last day of the month
Engineering decisions
A person approves every post
Agents prepare and people commit. Suppliers are never created automatically either.
Business rules live outside the connector
The accounting server knows only QuickBooks. Timing, mappings and supplier recipes belong to each company's own layer, which is how one server serves very different businesses.
No posting during trading hours
The connector has no clock, so each company layer enforces its own posting window.
The inbox stays the owner's to-do list
Automation never permanently deletes mail, and an item is filed only once it has been dealt with.
Outcome
Daily takings, a backlog of transfers, supplier bills and month-end journals are posted and reconciled on live books, each with its source document attached and a receipt printed for audit.