The Problem
The company is a global leader in protective mobile device accessories — cases, screen protectors, chargers, and accessories for Apple, Samsung, Google, and other major device manufacturers — with an estimated annual freight spend of $50M, supporting 1.6 million e-commerce parcel shipments annually and 12,000 non-parcel shipments. Its freight audit ran through Körber at $12,000 per month. The contract was ending in January 2026. The logistics analyst managing the process had documented precisely what Körber was and was not doing. Körber checked invoices against rate cards. It caught rate mismatches. What it could never do was check what was actually in the box.
The gap was architectural. FedEx invoiced based on carrier-measured weights and dimensions. Körber validated those charges against the contracted rate card. The company’s shipment master data — what SKU was actually shipped, what its actual weight was, whether the package FedEx measured as 50 pounds was actually a 0.5-pound phone case with incorrect DIM measurement — was not visible to Körber’s audit logic. The analyst found these weight discrepancies herself: downloading FedEx Billing Online CSVs, sorting by total cost, cross-referencing SKU manifests, emailing FedEx’s quick response team for credits. Two to three hours per week. Every week. Powered entirely by institutional knowledge of where the problems usually hid.
The parcel audit cadence made it worse. Körber ran parcel audit quarterly — meaning three months of discrepancies accumulated before any systematic review. By the time a pattern was identified, the carrier dispute window had often closed. Freight and LTL exceptions came through daily as email notifications: Körber identified the problem, the analyst managed the resolution. Körber was a detection system, not a resolution system. The analyst was both.
What Freehand Did
Freehand replaced Körber at contract end in January 2026, deploying a 3-way match that connected carrier invoices not only to the contracted rate card but to the company’s shipment master data — SKU weights, actual dimensions, and packed configurations from Infor M3 and FedEx Ship Manager. The Audit Agent now has the evidence to dispute a 50-pound charge on a 0.5-pound phone case automatically: SKU from the manifest, actual weight from the database, dimensional measurement from the shipment record, discrepancy classification, credit request filed with FedEx’s quick response team via automated email — within the 180-day dispute window, without the analyst in the loop.
Parcel audit frequency moved from quarterly to continuous. Every FedEx invoice across 1.6M annual parcel shipments — including the multi-thousand-page e-commerce and warranty account invoices that had previously required manual CSV scanning — now runs through the Audit Agent on receipt. Weight discrepancies between carrier-measured and SKU-actual weight are flagged automatically. Service level charges for undelivered services are identified. Duplicate invoice detection operates across the full parcel volume. The $144,000 in annual savings from eliminating Körber’s $12,000-per-month subscription is the floor, not the ceiling — the recovery from systematic accessorial validation across 1.6M annual shipments adds on top.
The GL Coding Agent automated the manual coding step the analyst had performed on every invoice: SKU-based coding rules and legal entity assignments run without intervention, feeding to Medius and then to AP on the semi-monthly payment cycle the company needed. The Rate Manager Agent consolidated FedEx One Rate contracts, accessorial schedules, quarterly spend-based discounts, and multi-mode rates from Excel and Infor TMS into a single versioned repository. The analyst who had spent hours each week finding weight discrepancies that Körber structurally could not find now reviews AI-generated outcomes — the discrepancies the system already identified, the credits it already filed, the exception queue already resolved. The tribal knowledge that kept the process running now trains the system. The system now runs the process.














