Blog/Cost & Strategy

Freight Invoice Reconciliation: Catching Rail Billing Errors Before You Pay

October 6, 2026 · 12 min read · Cost & Strategy
You can only reconcile against a number you had before the bill showed up. Get an indicative rail freight quote for your lane in seconds — free, no signup.
Key fact: Federal law gives a rail shipper 3 years from delivery to sue to recover an overcharge, and 2 years to file a damages complaint with the Surface Transportation Board (49 U.S.C. 11705). That sounds generous. In practice, the evidence you need to win (placement times, scale tickets, the contract amendment in force that month) gets harder to find every month the bill goes unchecked.

Most freight invoices get paid the same way: the bill lands in accounts payable, someone checks that the vendor is real and the total looks about right, and it goes into the payment run. That process catches fraud. It does not catch a fuel surcharge pulled from the wrong month, a car rated under the wrong commodity code, or demurrage on a car your plant ordered out two days earlier. Freight invoice reconciliation is the step that catches those, and it works best before you pay.

Our guide to the rail freight invoice and its line items covers what each charge means. This post is about the process: how to set up reconciliation so every rail freight bill is matched to an expected charge, how to sort the differences, and what to do with the ones that are real.

What Freight Invoice Reconciliation Is (and Is Not)

Freight invoice reconciliation is matching every freight bill to an expected charge you built from your own records, then resolving each difference before the bill is paid. The expected charge comes from your rate authority, your bill of lading, the railroad's published fuel surcharge program and your facility's placement and release records.

It is not the same thing as a freight audit, though the two get used interchangeably. The difference is timing:

ReconciliationFreight audit
WhenBefore paymentUsually after payment, looking back
GoalPay the right amount the first timeRecover money already paid in error
Unit of workEach car, each chargePatterns across months of bills
Who does itTraffic or logistics team, with APInternal audit or an outside service
FixesA hold or a dispute on one billAn overcharge claim, a credit, a rate correction

You want both. But a shipper that reconciles well gives the audit much less to find, and a credit you never had to chase is worth more than one you recover eight months later.

One rule up front: reconcile at the car level, not the invoice total. A consolidated statement can cover dozens of freight bills. If one car is overbilled and another is underbilled, the total can look fine while both are wrong.

Build the Expected Charge Before the Bill Arrives

The single biggest reason freight invoices go unchecked is that nobody wrote down what the move should cost. If the only number in the building is the railroad's, there is nothing to reconcile against. So the first step happens at shipment, not at billing.

For every car you tender, record an expected charge built from:

This does not need software. A shared sheet with one row per car, filled in when the bill of lading goes out, is enough for a shipper moving a few hundred cars a year. Larger shippers usually do the same thing inside the ERP as a freight accrual, which has the side benefit of putting freight cost in the right month on the books.

The Match: Five Checks for Every Freight Bill

When the bill arrives, run the same five checks in the same order. The order matters: an error near the top makes everything below it wrong, so there is no point checking the fuel surcharge on a car that was rated off the wrong tariff.

  1. Identity. Car initial and number, waybill date, shipper and consignee all match your bill of lading. A transposed car number means you may be paying for someone else's car.
  2. Rate authority. The bill cites the contract or tariff you expected. A tariff rate on a lane you have under contract is one of the most expensive errors there is, because it repeats on every car until someone catches it.
  3. Rate inputs. STCC, rate stations and billing weight match your records. Multiply rate times weight (or take the per-car rate) and you should land on the line-haul charge to the penny.
  4. Fuel surcharge. Right program, right period, right method. Check it against the railroad's published table rather than last month's bill.
  5. Everything else. Every accessorial line has an event behind it that you can confirm in your own records: a placement, a release, a switch, a weighing. If you cannot find the event, the line is not ready to pay.

Demurrage bills get their own check

Demurrage is where your facility records and the railroad's records most often disagree, so reconcile it separately from line-haul freight bills. Under 49 CFR 1333.4, Class I railroads have to put specific data on each demurrage invoice, including for every car: the estimated arrival, actual placement, constructive placement and when you were notified of it, when the car was ordered in, the release time and the credits and debits applied. That data exists so you can check it. Compare each timestamp to your gate log or plant records. Our rail demurrage fees guide covers how free time and credits work.

An Illustrative Reconciliation

The numbers below are illustrative, not a real lane or rate. Say a shipper moves 10 loaded covered hoppers under a contract at $4,100 per car, plus a fuel surcharge published as a dollar amount per car per month. The expected charge sheet says $4,100 line haul and $310 fuel per car. The statement comes in at a total $1,150 higher than expected.

FindingCarsDifferenceCause
Fuel surcharge at $335 instead of $31010+$250Prior month's table applied
Line haul at $4,550 instead of $4,1002+$900Billed off the tariff, not the contract
Billing weight 0.4 tons over scale ticket1$0Per-car rate, weight does not change the charge

Look at what the total hides. The $1,150 gap is real, but it is two different errors with two different fixes. The fuel surcharge is a billing-system issue that will hit every car that month. The two tariff-rated cars point to a setup problem: the contract was probably not attached to that origin, or the waybills were missing the contract reference. Fix that at the source, or the same $450 per car comes back next month. The weight difference is noise on a per-car rate, though it would matter on a per-ton rate.

Sorting Variances: Tolerance, Error, or Rate Problem

Every difference between the bill and your expected charge falls into one of three buckets, and each bucket gets a different response.

Never apply a tolerance to identity or rate checks. A wrong car number, wrong commodity code or wrong rate authority is not a small variance, even if the dollar gap on one car happens to be small. It is a sign the next hundred cars will be billed the same way.

Keep a variance log with one row per finding: car, bill, bucket, amount, cause, and status. After three months it tells you which errors are one-offs and which are systemic, which is the information you actually need when you sit down with a railroad to talk about billing or rates. The working with railroads course module covers how to have that conversation.

Pay, Hold, or Dispute

Once a bill is reconciled, there are three outcomes. Clean bills get paid on time. Bills with a disputed line get the undisputed portion paid and the line disputed through the railroad's process. Bills that cannot be matched yet, usually because a placement record or a contract amendment is missing, get held with a reason and a date.

Avoid quietly short-paying. An unexplained short payment looks like a late payment to the railroad's collections team, and late payment costs money. Union Pacific's published policy, for example, charges a finance charge at an annual rate of 12%, or 0.0329% per day, on past-due freight bills, under the credit terms in Uniform Freight Classification Rule 62 and your own contract or tariff. The same policy excludes the time a bill was in dispute from that calculation, and a dispute that corrects the bill is not subject to the charge at all. In other words, file the dispute and the clock works in your favor. Short-pay without one and it works against you.

Most Class I railroads take disputes through their customer portal, attached to the specific freight bill. Include the evidence with the first submission: the contract page, the scale ticket, the gate log. A dispute that says "rate is wrong" without the authority attached tends to come back asking for it.

The Clocks That Matter

Reconciling before payment avoids most deadline problems, because you dispute while the bill is still open. For the bills that slip through, these are the limits that apply to rail freight charges under federal law:

WhoActionDeadline
ShipperCivil action to recover an overcharge3 years after the claim accrues (49 U.S.C. 11705(b))
ShipperComplaint to the STB for damages2 years after the claim accrues (49 U.S.C. 11705(c))
RailroadCivil action to collect its charges3 years after the claim accrues (49 U.S.C. 11705(a))

For a shipment, the claim accrues on delivery or tender of delivery (49 U.S.C. 11705(g)). Two cautions. Freight moving under a rail transportation contract is governed largely by that contract, so its dispute and claim terms may be shorter and are the first place to look. And the railroad's clock runs too: a bill that was underbilled can be rebilled, so reconcile in both directions and do not treat an undercharge as free money.

Loss and damage is a separate process with its own rules. If the problem is a damaged load rather than a wrong charge, see how to file a rail freight claim.

Making It a Monthly Routine

Reconciliation only works if it happens every month, on every bill. A process that holds up:

  1. At tender: the expected charge row is created from the bill of lading and the rate authority.
  2. On receipt: each freight bill is matched to its row, and the five checks are run.
  3. Weekly: variances outside tolerance go to someone who knows rail, not just AP, for a pay, hold or dispute decision.
  4. Before the payment run: clean and partially disputed bills are released on time.
  5. Monthly: the variance log is reviewed for repeat causes, and open disputes are chased to a credit.
  6. Quarterly: rate authorities are re-checked for expirations and amendments before they cause a month of mis-rated cars.

The step most shippers skip is the third one. Accounts payable can match a total to a purchase order, but it usually cannot tell a wrong STCC from a right one, or know that a car released Tuesday should not be accruing demurrage Thursday. That knowledge gap, not a lack of software, is why rail bills go unchecked. If you do not have a rail person in house, that is the part worth handing off. Our rail freight audit and recovery service and rail logistics services cover it, and the railroad pricing course module walks through how the rates on your bills are built.

Sources: 49 U.S.C. 11705 (limitation on actions); 49 CFR 1333.4 (demurrage invoice information); Union Pacific Late Payment Policy and Late Pay Q&A pages, up.com, accessed October 6, 2026. Worked example is illustrative. This is general information, not legal advice; your contract and the governing tariffs control.

No one on your team checks rail bills? Steel Wheel's managed rail service reconciles freight, fuel and demurrage bills every month and files the disputes for you. Book a 30-minute call or see what our managed rail service covers.

Frequently Asked Questions

What is freight invoice reconciliation?

Freight invoice reconciliation is matching every freight bill against what you expected to be charged, using your rate authority, bill of lading, fuel surcharge schedule and facility records, then resolving each difference before payment. It is done per car, not on the invoice total.

What is the difference between a freight audit and freight invoice reconciliation?

Reconciliation happens before you pay: each bill is matched to an expected charge and differences are held or disputed. A freight audit usually looks back at bills already paid to find overcharges to recover. Doing reconciliation well shrinks what an audit has to recover.

How long do I have to recover a rail freight overcharge?

Under 49 U.S.C. 11705(b), a civil action to recover rail overcharges must be started within 3 years after the claim accrues, and a complaint to the Surface Transportation Board for damages within 2 years. The claim accrues on delivery or tender of delivery. Contract terms can set their own, shorter process, so check yours.

Should I short-pay a rail freight invoice I disagree with?

Usually no. Pay the undisputed charges on time and dispute the specific line through the railroad's dispute process. Union Pacific, for example, excludes the time a bill was in dispute from its late-payment finance charge, while unexplained short payments tend to create collection problems on your account.

What tolerance should I use when reconciling freight invoices?

Set a small dollar or percentage tolerance so rounding and minor weight differences pass automatically, and route anything above it to review. Never apply a tolerance to rate, commodity code or origin and destination mismatches, because those errors repeat on every car.

Steel Wheel Logistics
Steel Wheel Logistics
We coordinate bulk rail freight across North America — from rate negotiation and car sourcing to transload coordination and tracking. Based in Mississippi, serving shippers nationwide.

Rail Bills Getting Approved Without a Check?

Send us a month of freight bills and the rate authorities behind them. We will tell you what does not match and what is still worth disputing.

Talk Through Your Invoices
← Back to All Posts