AI & Automation · Construction · Custom Build · 2026
Reading Supplier Invoices Out of a Mailbox and Into the Ledger
A construction group processing supplier invoices for several entities
The challenge
Supplier invoices arrived in mailboxes as attachments in every format a supplier cared to use, and someone had to open each one, work out what it was, and key it into the accounting system against the right account. Across several operating companies that is a full-time job that produces nothing except data that already existed.
Where we came in
Document extraction is a solved-looking problem that quietly is not, because the hard part is not reading the invoice — it is matching what you read to the right record in a specific accounting system, for the right company. We built the extraction and the matching as one pipeline, and made the deployment multi-tenant from the start so the second company cost far less than the first.
What we did
- Ran discovery and solution design before building, rather than starting from a document-extraction demo
- Built the categoriser to extract invoice content and match it against records in the accounting system
- Containerised the service and deployed it on a multi-tenant Kubernetes framework so additional companies onboard rather than get rebuilt
- Handled tenant onboarding properly — app registrations, certificates and scoped mailbox access per company
- Added credit-memo tracking and detection of attachments in office document formats, not just PDFs
- Standardised mailbox categories and retagged historical email so the system's view matches the mailbox's
Where it landed
- Supplier invoices are extracted and matched to accounting records instead of being keyed by hand
- Additional operating companies onboard onto the existing deployment rather than needing their own build
- Went live through validation and smoke testing, and is under ongoing monitoring and enhancement
Technologies
- Large Language Model Extraction
- Business Central
- Azure Kubernetes Service
- Microsoft 365 App Registrations
- Containerisation
Delivered and closed out in our project management system. Outcomes describe the resulting state — we have not published a measured before-and-after for this engagement.
Back to all projects