The purchase order says one price, the delivery note says one quantity, the invoice says something else. Checking all three against each other is dull, mechanical, and the single highest-yield habit in purchasing.
A purchase order is what you agreed to buy and at what price. A goods receipt is what physically arrived. An invoice is what you are being asked to pay. In a perfect week all three describe the same thing. In a real week they do not, and the differences are rarely dramatic enough to notice one at a time.
The three documents and why they drift
Prices drift between the order and the invoice, sometimes legitimately when a commodity moves, sometimes not. Deliveries arrive short and the paperwork does not reflect it. A line gets billed twice across two invoices in the same week. None of these announce themselves.
Individually they are small. That is precisely the problem: they are each small enough to wave through, and there are dozens of lines a week.
Doing it line by line, not invoice by invoice
Matching invoice totals against PO totals catches almost nothing, because the errors are inside the lines and often cancel out at the bottom. Two kilos short on lamb and an eighty-cent price rise on oil can produce a total that looks close enough to approve.
Line-level matching asks three questions per row: is this the product we ordered, is this the quantity we received, is this the price we agreed. Any row that fails one of them is worth a phone call, and every row that passes is one you never have to think about again.
The part that makes it stick
This only works if goods reception happens at the door rather than from the invoice a week later. Receiving against the delivery, while the driver is still there and the pallet is still on the floor, is the step that turns a discrepancy into a credit note instead of an argument you lose.
See where your own numbers disagree.
Thirty days of full access. Import your product list, run one count, and read the variance.