Skip to main content
Bonsai Software
All field notes
Field Note24 September 20266 min read

Automating invoice matching in manufacturing: three points of failure

Automating invoice matching in manufacturing goes beyond reading a document and comparing a number. Three-way matching, where you reconcile a purchase order, supplier confirmation, and invoice, seems straightforward until you encounter real-world variability. Differing item codes, partial deliveries consolidated onto a single invoice, currency fluctuations, and surcharges all generate exceptions that a standard approach cannot handle. These are three lessons from working through that problem.

By Yeslin Beljaars

Why three-way matching is more complex in practice than it appears

On paper, three-way matching is clear: the purchase order states what you ordered, the supplier confirmation states what is being delivered, and the invoice states what you owe. If all three align, you approve. If something does not, it goes to a staff member. What you see in manufacturing companies is that exceptions are the norm. Suppliers use their own item codes that do not map one-to-one to your internal material numbers. The purchase order has three lines, the invoice has five, and one of those lines covers an express delivery surcharge that never existed in the system. The result: a match rate that stays low, and a staff member manually clearing exceptions every week, which is exactly the work you wanted to eliminate.

Lesson 1: item codes are not a universal language

The first obstacle is the item code. Your ERP uses internal material numbers. The supplier invoices using its own codes, sometimes accompanied by a description in its own language. A direct comparison will always fail. The solution is not to force an exact match, but to build a translation table: a mapping between the supplier's item numbers and your internal numbers. That table does not exist anywhere when you start; it has to be extracted from historical purchase orders, order confirmations, and previous invoices. This is a one-time task that must be completed at the start of the project, not midway through. Make sure the table is maintained whenever a supplier changes its product range or introduces a new item. If the translation table is not kept current, the number of exceptions grows steadily, and no one notices until the backlog is substantial.

Lesson 2: partial deliveries and consolidated invoices break the automated pattern

Partial deliveries are common in manufacturing. A purchase order for one thousand units is fulfilled in three shipments, but the supplier sends a single invoice at the end of the month covering everything shipped that month. Sometimes the reverse happens: one delivery, but three invoice lines because the supplier wants to trace different batch numbers. Any system built around one-to-one matches fails here systematically. What works is implementing partial matching logic, where each incoming invoice is checked against which portion of the open purchase orders it covers. This requires a sound accounting structure on the front end, not just smart software on the back end. If a purchase order is not correctly marked as partially received in the ERP, no matching algorithm will work. The process design and data entry at the front end determine whether the automation at the back end functions.

Lesson 3: price differences from currency and surcharges are the silent killers

The third lesson concerns prices. A purchase order is created in euros based on the exchange rate of that day. The supplier invoices in dollars, and payment is processed three weeks later. That gap introduces a currency difference. On top of that come fuel surcharges, packaging costs, or tolls that were not in the original order but do appear on the invoice. A system that only approves on an exact price match will accumulate a large stack of exceptions. The practical approach: define an acceptable tolerance band for price deviations per supplier category and per type of surcharge. Deviations within that band are approved automatically; deviations outside it are routed to the buyer with a clear explanation of the cause, not just the size of the discrepancy. That last point is critical: if the buyer can see at a glance that the difference stems from a currency correction, the decision is fast. If they have to investigate the source themselves, the time saving disappears.

What do you need to arrange upfront to make automated invoice matching possible?

Automating three-way matching does not start with invoice processing; it starts with the quality of your purchasing process. Purchase orders must be complete and unambiguous: correct supplier item numbers, clear quantities, agreed prices including any applicable surcharges, and accurate recording of partial receipts. Without that foundation, you are only shifting the manual work to a different point in the process. It is worth building a short profile for each supplier: how they invoice, what surcharges they charge, whether they use their own codes, and whether they always deliver in full. With that knowledge, you can configure matching rules per supplier rather than applying one generic rule to everyone. This requires more preparation, but it produces a sustainably higher match rate. AI tooling, such as a document processing layer that reads and structures invoices, helps with extraction. But the decision rules and process design are human work, and those must be in order first.

Seeing this in your own operations?

Book a call

Frequently asked questions

What is three-way matching in invoice processing in manufacturing?

Three-way matching compares three documents: the purchase order, the supplier confirmation or delivery note, and the invoice. If quantity, item codes, and price all correspond, the invoice is approved automatically. If anything differs, the invoice is routed to a staff member as an exception.

Why does automated invoice matching often fail in manufacturing?

The three main causes are differing item codes between supplier and buyer, partial deliveries consolidated onto a single invoice, and price differences due to exchange rates or surcharges not included in the original order. Each situation requires tailored matching rules and a well-structured purchasing process as a foundation.

How large a price deviation is acceptable in automated invoice matching?

There is no universal standard. The common approach is to define an acceptable tolerance band per supplier category or surcharge type, aligned with contractual agreements and historical deviations. Deviations outside that band are forwarded to the buyer with a clear explanation of the cause.

Do I need to have my purchasing process in order before automating invoice matching?

Yes. The quality of the automation depends directly on the completeness and accuracy of your purchase orders and the recording of receipts. If purchase orders are incomplete or partial receipts are not correctly maintained, you are only moving the manual work to a different point in the process.