Log in
DEMURRIT Free review

Carrier invoices

Freight invoice audit

Almost every company checks whether an invoice's arithmetic is correct — whether the total matches the line items, whether the invoice matches the order. Almost none check whether the rate applied is the one actually agreed. That's the one thing we actually check.

From contracted rate to a flagged discrepancy Three steps: an uploaded rate schedule with the agreed terms, every incoming invoice automatically compared against it, discrepancies flagged with a direct reference to the contract clause. Contracted rate (uploaded) Every invoice automatically Discrepancy + contract clause

How it works

01You upload the contracted rate schedule

Lane, base rate, fuel surcharge formula, permitted accessorials — the first time, we do this together with you.

02Every invoice uploaded afterward is checked automatically

Not a sample — every single one, compared against the contract, not against last month.

03Discrepancies are flagged with a reference to the specific contract clause

Not a general suspicion — that's the difference between an audit and a hunch.

What we check

  • Base ratewhether it matches the rate contracted for THAT SPECIFIC lane (the same carrier may have different rates for different lanes).
  • Fuel surchargewhether it's calculated on the contracted percentage, not an arbitrary one.
  • Accessorial chargeswhether they're justified or duplicate a service already included.
  • Chargeable weight or volumethe greater of actual and volumetric (based on dimensions), not an arbitrarily chosen one.
  • Weight breakfor tiered LTL/group pricing, whether the tier applied is the one the actual weight actually falls into.
  • Freight classwhether the declared class matches the contracted one (a mismatch often means a different price).
  • Currencywhether the invoice currency matches the contracted one (a structural check; we don't assess whether the conversion rate itself is correct — see FAQ).
  • Duplicate invoicesthe same shipment billed twice.

The scope of the EU ETS surcharge (50% or 100%) is checked as a separate category — see the emissions surcharge check. For past invoices it is integrated directly into this module (the same gain-share condition as above), not a separate service.

What you should honestly know

The system never decides for you whether it's worth disputing with a partner. All of it downloads as a PDF audit report — including what was checked and found correct. It is a report, not a claim: you submit that to the carrier under your own contract. This is not caution for its own sake: the claim arises from your contract, and asserting it on your behalf is a legal service — in Germany only registered providers may offer it (RDG).

The hardest part isn't the comparison — it's entering the contract. Rate schedules arrive as Excel files with a structure specific to each carrier, sometimes with footnotes that change the logic. The first time, it's almost always semi-manual work. Anyone who promises fully automatic rate-contract reading is promising something nobody has done well yet.

Two ways to use it

Historic audit

A review of invoices already paid or incurred. 25% of the amount actually recovered (capped at €5,000/case, minimum €100), or a fixed price of €1,490 for an archive audit. Scope (volume of documents and period) is agreed before starting. For clients in Germany and Austria, only the fixed price is available. If we recover nothing (with the success-fee option), you pay nothing.

Ongoing monitoring

Invoices are checked before payment. €79/mo, covering both driver waiting-time and air terminal storage detection (see below).

Before you start: how long you have to bring a claim — the scope of a historic audit is limited by the limitation period, not by your archive.

Driver waiting-time detection is never part of gain-share — it benefits the carrier, the system only flags the hours, we don't file claims on your behalf. The reason: we simultaneously have clients on both sides of a single detention case — cargo owners and carriers — so a success fee here would create a conflict of interest, regardless of which side we'd be representing. Air terminal storage detection, by contrast, is gain-share eligible, just like the container D&D audit — both are included in the same price, but they behave differently for the historic audit.

The system never guesses an amount without your own contract data — without it, the rule returns "missing data," not a guessed result.

Estimate the potential

Potential unidentified overpayment in this invoice: — – — €

An illustrative model, not confirmed statistics specific to you — the 3–7% range is based on a single source (Senvo's 2026 analysis of mid-sized EU shippers) that we haven't independently verified. The exact figure depends on this invoice's own line items — this is an indicative, not a final, estimate.

This kind of error tends to repeat across every similar invoice, not just this one. How many you actually have, and what that adds up to, only a full invoice review can show.

This is an indicative estimate for ONE invoice, not a reconciled error in that invoice's line items — an indication of whether it's worth digging deeper. More calculators: /en/calculator.

Frequently asked questions

How quickly do I get a result after the first upload?

The first step is entering your contracted rate schedule, which we do together with you. From that point every new invoice is processed automatically in the background, usually within minutes of upload.

Can I start with a historic audit and move to ongoing monitoring later?

Yes, that's the usual path. Most clients start with a historic audit, because it shows whether there's anything worth pursuing at all — and only move to ongoing monitoring once they've seen a result.

What happens if my rate contract is complicated?

The first entry is done together with you, by hand — complex footnotes or a non-standard structure aren't a blocker, they just mean the first step takes longer than for a simpler contract.

Do you check whether the currency conversion rate was applied correctly?

No. We only check whether the invoice currency matches the contracted one — that's a structural check. We don't assess whether a specific conversion rate is correct, because that would require a complete, constantly updated historical exchange-rate source for the exact invoice date, which we deliberately don't have — a wrong number here would be more dangerous than not having one.

Why can the system sometimes check nothing at all?

The rule compares the invoice with your contract — if the contract's rates or percentages haven't been entered into the system yet, there's nothing to compare against, and the rule returns "missing data," never a guessed result.

Do I pay if the historic audit recovers nothing?

No, if you choose the success fee (gain-share) — the invoice is only issued on the amount actually recovered. If nothing is recovered, you pay nothing.

How long are my uploaded documents kept?

Original documents are kept for 24 months from upload, road toll documents for 48 months, customs documents for 40 months. After the period expires the original file is deleted automatically, the data extracted from it remains. If you want a specific document removed earlier (GDPR Art. 17 right to erasure), contact us by email — there is currently no self-service delete button in the portal.

Activated after a short call, not instantly.

What is needed

  • Carrier invoices (required)
    If you do not have it: Without the invoices the audit cannot be carried out.
  • Rate schedule annexed to the carriage contract (without it some of the checks will not work)
    If you do not have it: Without the rate schedule six of the twelve checks will not work — only the arithmetic and the duplicates remain.
  • Driver waiting-time records (preferred)
    If you do not have it: Without the times we cannot calculate the waiting time — a CMR consignment note is not enough for that.

Insurance and ad valorem

A line reading “Insurance” or “Ad valorem” can be one of two completely different products: a contract of insurance, or a rise in the carrier's limit of liability that pays out only where the carrier is liable. Which one you are paying for we establish from the same documents — Insurance and ad valorem charge audit.

Related articles

How we measure the result

Other audit services

All audit services and pricing