AI solution design · Documents and workflows
Invoice capture and posting
Supplier invoices read automatically, matched to purchase orders and posted to finance, with exceptions sent to a person.
Talk about something like thisThe situation
Invoices arrive by email as PDFs and photos, from suppliers who each use a different layout. Somebody keys the details into the finance system, then chases the purchase order. Mistakes appear at month-end.
How it works
Step by step
- 1
Collect
A mailbox rule picks up attachments, and each file is checked to see whether it is an invoice at all.
- 2
Read
Supplier, invoice number, dates, lines, VAT and totals are read from the document.
- 3
Check
Fields are tested against your rules: known supplier, matching purchase order, totals that add up, no duplicate invoice number.
- 4
Decide
Clean invoices go on. Anything doubtful appears in a review screen with the problem highlighted.
- 5
Post
Approved data is posted to the finance system through its API, and the original is filed against the entry.
What it is built from
- Azure AI Document Intelligence
- Reads the invoice fields
- Azure OpenAI
- Handles unusual layouts and ambiguous lines
- .NET service and SQL Server
- Rules, matching and the audit trail
- Finance system API
- Receives the posted invoice
- Angular review screen
- Exceptions and corrections
Safeguards
- Confidence thresholds: below the line, a person looks
- Duplicate and total checks before anything is posted
- The original document is kept and linked to the posting
- Accuracy measured on your own invoices before go-live
What you end up with
- Fewer invoices keyed by hand
- An exceptions list with the reason for each
- Reports on volumes, exceptions and time to post
Where to start
Begin with the ten suppliers who send the most invoices. Add others as the accuracy figures justify it.