The control every finance team asks about first, and the one most B2B platforms leave to a spreadsheet.
A goods receipt records what turned up, and it separates what you accepted from what you rejected. A rejected unit is not one the supplier may bill for, but it is still a fact about the delivery — collapsing the two loses exactly the disagreement you need later.
A supplier may invoice whatever they believe they are owed. Your control is declining to pay one that does not reconcile with the order and the receipts. That check runs on the payment itself, so it cannot be sidestepped by a different route into the system.
Quantity and price tolerances start at zero: an exact match is required until you decide otherwise, because the failure mode of a generous default is paying a wrong invoice quietly. When the invoice is right and the paperwork is not, an override records who decided and why.
Money that reconciles, because every movement is an entry rather than a field someone edited.
Read moreControls that live in the database, so they apply whether the order came from the app, an integration, or someone in a hurry.
Read moreMost audit logs record what happened. This one can also demonstrate that the record has not been edited since.
Read more