AI Adoption GuideManufacturingShip
Freight Invoice Audit
ML matches carrier invoices to contracted rates and accessorial rules, flagging overbilling automatically before payment runs.
Manufacturing processPlanSourceMakeInspectPackShipServiceReturn
By Don, DoneThat’s AI coach · updated
What freight invoice audit does on the payables desk
Freight invoice audit compares each carrier invoice line to the contracted rate card and the accessorial schedule before accounts payable releases payment. The machine learning layer proposes matches between invoice charges and contract terms, scores confidence, and surfaces exceptions for a freight-payables lead to decide. Payment authority stays with AP. The audit system recommends hold, pay, or pay-with-adjustment; it does not cut the check.
In manufacturing ship operations, invoices arrive after tender, pickup, and delivery events. Rate cards vary by lane, mode, and effective date. Accessorials (fuel, detention, layover, residential, liftgate, and similar) often drive more dispute volume than the linehaul itself. The useful output is a clear exception queue: matched and within tolerance, matched with variance, or unmatched because the contract artifact is missing or incomplete.
How rate-card and accessorial matching works
Matching starts with identity: carrier SCAC or vendor ID, invoice number, PRO or bill-of-lading reference, ship date, origin and destination, mode, and weight or cube. Those fields link the invoice to the shipment record and to the rate agreement that should have applied. The model then maps invoice charge codes to contract accessorial codes. Carrier naming is rarely identical to the contract glossary, so mapping tables and learned synonyms matter as much as the numeric compare.
Linehaul comparison uses the contracted formula for that lane and date: flat, per-mile, per-hundredweight, or zone. Accessorial comparison uses the contracted trigger (hours, miles, occurrence) and the contracted amount or percentage. Fuel is typically a published index plus a contracted markup; the audit should recompute the expected fuel amount from the index in force on the ship date, not from a static table that drifts.
Tolerance bands keep the queue workable. Small rounding and weight-scale differences can auto-approve within a policy the payables lead owns. Material variance, wrong accessorial, duplicate charge, or rate-card miss goes to review with the expected amount, the billed amount, and the contract clause or rate line used for the expectation.
Empty match is a first-class outcome, not a silent pass. When the contract rate card for that carrier, lane, mode, and effective window is missing from the system of record, the engine should return empty match and hold the invoice for contract retrieval. Paying on an empty match trains carriers that unpriced lanes still get paid at invoice face value.
(./carrier-and-mode-selection.md)
Where this sits in the ship-stage cost workflow
Freight audit sits after shipment execution data is available and before AP payment. Upstream, planning and tendering should have produced a contracted rate expectation and a clean shipment record. Downstream, AP needs an approved amount, a reason code for any short-pay, and an audit trail for carrier disputes.
Related ship-stage work affects audit quality. Customs documentation delays can stretch detention and storage clocks; those accessorials only audit cleanly when event timestamps are trustworthy. Invoice three-way match for goods payables is a parallel control: freight audit is usually two-way or shipment-to-invoice match (contract plus shipment facts versus carrier bill), not a classic PO-receipt-invoice goods match. Keep those exception queues separate so freight specialists are not buried in part-number mismatches.
(./autonomous-customs-documentation.md)
(./invoice-three-way-match-anomaly-detection.md)
Vendor patterns: nVision Global, Trax, and SAP TM
Practitioners typically meet this capability in three places.
nVision Global and similar freight-audit specialists operate as audit platforms or managed audit services. They ingest EDI or portal invoices, apply rate databases and client contract files, and return exception reports and recovery workflows. Fit is strong when freight spend is multi-carrier, multi-mode, and the payables team wants a dedicated audit queue without rebuilding matching inside ERP.
Trax (and peers in freight audit and payment) similarly centers on automated invoice auditing against contracts, often with payment orchestration hooks. Evaluate how they handle your accessorial dictionary, your fuel index sources, and your dispute packet format for carriers.
SAP Transportation Management (SAP TM) holds rates, freight orders, and freight settlement objects for shops already running SAP logistics. Audit logic can live in TM settlement and related invoice verification steps, with AP still posting in FI. Fit is strong when the contract and shipment truths already live in SAP and you want fewer integrations. Fit is weaker when a large share of invoices and rate cards live outside SAP and would need constant sync.
Vendor selection should follow data ownership: who holds the authoritative rate card, who receives the raw invoice, who owns the dispute letter, and who posts the payment. The ML match layer is only as good as the contract file and the shipment event feed behind it.
Operating the exception queue as a freight-payables lead
Define policies before go-live: auto-approve threshold, short-pay rules, duplicate detection window, and the empty-match hold. Require a contract document ID on every auto-approve path so “matched to memory” cannot hide a missing rate card.
Prioritize the queue by dollar exposure and recurrence. A repeated detention code from one carrier on one plant dock is an operations fix as much as an AP dispute. A one-off linehaul miss on a rare lane is usually a contract maintenance task.
Close the loop with carriers using the same evidence the model used: shipment reference, contracted rate line, event timestamps, and the recalculated expected amount. Track recovery and prevent recurrence by fixing rate-card gaps, remapping charge codes, and correcting tender defaults that select the wrong contract version.
Measure process health with operational metrics you can own without vanity numbers: share of invoices with a firm contract match, age of empty-match holds, time-to-disposition for variance exceptions, and repeat rate of the same accessorial dispute. Those tell you whether the model, the contract library, or the dock process is the bottleneck.
Failure modes to design for
Missing or expired rate cards produce empty match; treat that as a contract-ops SLA, not an audit “soft fail.” Wrong effective dates pay yesterday’s rate on today’s lane. Unmapped accessorial codes either false-clear or flood the queue. Shipment records without reliable appointment and departure times cannot defend detention. Dual submission (portal plus EDI) creates duplicate payment risk if identity matching is weak. Over-tight tolerances bury the desk; over-loose tolerances leak cost.
The durable control is simple: no contract artifact, no auto-pay; AP pays only amounts the freight-payables lead has approved against a matched rate card or an explicit exception decision.
Is this worth automating for you?
Whether this pays back depends on how much time it takes your team today. Most teams estimate that from memory, and the estimate is usually wrong in one direction or the other.
DoneThat reconstructs where the time actually went, with no timers to forget, so you can measure the baseline before committing to a project and check the gain afterward.
Measure the baseline first