Where they started
Four people in accounts payable, around 4,000 supplier invoices a month, and a month end close that reliably took three weeks. Every invoice was opened, read and coded to a general ledger account and a job. It was matched against a purchase order where one existed, then routed for approval.
The team was good at it, and that was part of the problem. The knowledge of which supplier maps to which cost code lived in two heads, and both of those heads were needed for close.
What we found in the workshop
The half day session produced a list of eleven candidates. Only three survived scoring.
The bottleneck was not approval, which everyone assumed. It was the coding and matching that happened before an invoice was ever seen by an approver. Approvers were fast and were only waiting.
That reframing changed the scope. We stopped looking at the approval workflow entirely.
What we built
A workflow that reads each inbound invoice and extracts the line detail. It proposes a GL and job code from the supplier’s history and the job’s context, and matches against open purchase orders. Anything it is not confident about goes to a human queue.
Three things mattered more than the extraction quality:
- The confidence threshold was tuned against their own history. We scored the model on eighteen months of past invoices before anything went live, then set the auto-code threshold where the error rate matched what the team was already producing manually.
- Exceptions went to a queue instead of an inbox. Low confidence items surface in one place with the reason attached, rather than bouncing back into email.
- Approval was untouched. Every payment still goes through the same delegation rules and the same approvers as before.
Where it landed
Around 82 percent of invoices now reach an approver already coded and matched, with no human step in between. The remainder go to the exception queue, which one person clears in about forty minutes a day.
Close went from three weeks to two days. The team did not shrink. Two of the four moved onto supplier and contract work that sat on the deferred list for two years.
What we would do differently
We under-scoped the credit note handling. Credit notes are a small share of volume and a large share of edge cases. We treated them as a phase two item, and they belonged in the first build. It cost about three weeks of rework.