The carrier invoice arrives weeks after the booking changed. Someone has to decide, line by line, whether each charge traces back to the quotation, the approved amendment and the returned confirmation — before the payment run, and before any dispute loses its evidence.

Scope and exclusions

This playbook covers reconciling a carrier’s ocean freight invoice against the quotation, the amendment record and the returned booking confirmation on a forwarder file, before payment or dispute. It applies to freight charges, amendment-related charges and equipment charges tied to a booking that changed. It does not set carrier fees, credit periods or dispute deadlines: those come from the booking terms and the carrier’s current guidance for your trade. Customs duties, tax handling and legal claims are outside this scope.

The trigger is an invoice line that does not match what the file approved. The intended outcome is a decision on every line — pay, dispute or hold — with the evidence attached before the due date, not a payment made by default because nobody checked in time.

Step 1: Assemble the reference set before the invoice arrives

An invoice can only be checked against something. Before the carrier invoice lands, the file needs four records held together: the original quotation, the approved amendment (with the approver named), the returned amended booking confirmation, and any charge the customer approved, including informal approvals in email or WhatsApp.

If those pieces live in different inboxes and portals, that is the first problem to fix. The booking amendment record describes the record structure, and the booking amendment request checklist covers what to capture before the carrier request is submitted.

Inputs: booking reference, quotation or agreed rate basis, amendment approval record, returned confirmation, customer charge approvals, carrier invoice.

Owner: the operations operator who owns the file.

Done when: every charge-relevant decision on the file has a recorded value, an approver and a source document.

Exception: if the amendment was approved verbally or in chat with no written record, reconstruct it now, while the participants still remember it — do not wait for the invoice query.

Step 2: Compare line by line against the record

Work through the invoice as a comparison, not as a read. For each line, match the charge against the recorded basis: the rate and basis agreed at quotation, the equipment and quantity on the returned confirmation, and the charges approved when the booking changed.

Example. Booking EX-004 was amended from two 40HC containers to one. The returned confirmation showed one 40HC. The invoice arrives with ocean freight for one 40HC, an amendment fee, and a second line for demurrage on a container the file never had — because the original equipment release for the cancelled second container was not returned. The comparison table looks like this:

Invoice line Recorded basis Result Action
Ocean freight 1 × 40HC Returned confirmation: 1 × 40HC at quoted rate Match Pay
Amendment fee Approved when rescheduling; amount approved in email Match Pay
Demurrage, second container No second container on returned confirmation; empty release not closed Unmatched Dispute with evidence

The demurrage line is only arguable because the file kept the returned confirmation and the equipment-release state. Without those, an unmatched charge becomes a negotiation the operator enters with nothing.

Done when: every invoice line has a match result and a decision.

Step 3: Decide and record the disposition of each unmatched line

For each unmatched line there are three dispositions, and only one of them is a decision to dispute. A line can be paid because the operator identifies a legitimate basis, held pending a query to the carrier, or disputed formally.

Record the disposition, the reason and the evidence for each line, even the paid ones. The £600 charge billing never saw traces what happens to a charge that was approved in a chat message and never reached the invoice — the same record discipline protects the reverse case, where a charge appears that was never approved at all.

Owner: the operator, with any amount above their approval threshold escalated to the person who approved the original booking or amendment.

Exception: an invoice line with no basis the operator can identify at all is not disputed immediately. Query it first through the carrier’s normal channel, and record the query reference. Some unmatched lines are data errors the carrier corrects without a formal dispute.

Step 4: Raise disputes through the carrier’s formal route

Disputing an invoice means using the carrier’s dispute process, not replying to the invoice email. Maersk, for example, directs customers to raise disputes through its MyFinance interface: select the invoice, choose a reason such as Incorrect Rate, attach the supporting evidence, and the dispute is logged immediately for the dispute team. Its guidance also distinguishes situations like Incorrect Payer, where the payer details themselves are corrected rather than the charge disputed. Whatever the carrier, capture the case or dispute reference and the submitted evidence as part of the file. Not every billing problem goes through the dispute flow: Maersk, for example, routes a short-shipped container through Case Management rather than MyFinance — a case with the shipment linked, documents attached, and a stated aim to resolve cases within 4 working hours — so the charge tied to a short shipment follows a different route than a disputed rate. Identify which route the problem belongs to before submitting.

Owner: the operator, or the finance team if disputes are centralised — but the evidence pack comes from the operations record, so the operator prepares it.

Done when: each disputed line has a dispute reference, the evidence submitted and a recorded submitted date.

Exception: if the carrier’s dispute route rejects the submission — a missing field, an unsupported format — fix and resubmit the same day, and keep the file status as open. A failed submission is not a dispute.

Step 5: Track to resolution and close the file

A dispute is not closed when the carrier acknowledges it. It closes when the carrier confirms the outcome: a corrected invoice, a credit note, or a maintained charge with an explanation the operator accepts. If the outcome is a credit note, remember it still needs collecting: Maersk, for example, lets customers request refunds for credit notes associated with an overpayment or a container security deposit from the Credits & Refunds tab in MyFinance, while non-refundable credit notes are applied to the account balance automatically. Check that a corrected invoice actually replaces the original line rather than adding a credit line beside it, and reconcile the total before the payment run.

Done when: the final invoice total matches the sum of the line dispositions, every credit or corrected invoice is attached to the file, and the payment is released or scheduled. Any charge passed to the customer follows the same comparison against their approval.

Where the checking time goes

The comparison in Step 2 is manual work with a real shape: for each invoice, someone opens the invoice, the quotation, the amendment approval and the returned confirmation, and compares every line across those documents — then repeats it for the next invoice and the next file. The same comparison can be built as a custom workflow alongside the booking rescheduling solution: read the invoice, extract the lines, compare them against the recorded quotation, amendment approvals and returned confirmation, and route only the unmatched lines to the operator with the evidence attached. The decision to pay, hold or dispute stays with a person; the workflow removes the manual matching between three documents that already exist.

If invoice lines keep arriving without a basis your team can trace, Unhurdled will review one invoice reconciliation end to end with you — where the reference records live, who approves each charge, and where the unmatched lines should surface. Start with a recent invoice that raised a query: Let’s talk.