DemurrageDesk

Check whether you actually owe that demurrage invoice

The FMC's billing rules say an ocean demurrage or detention invoice issued more than 30 calendar days after the charge was last incurred is one “the billed party is not required to pay” (46 CFR 541.7). Separately, omitting any required element “eliminates any obligation of the billed party to pay the applicable charge” (46 CFR 541.5).

Nothing you type leaves your browser. The rules run as Python compiled to WebAssembly on this page. There is no upload, no account, no analytics and no server to send an invoice to — the page is only allowed to talk to its own origin.

Rules engine: not started.

One invoice

The dates that decide it
Who billed you
The invoice itself all optional
Required elements — 46 CFR 541.6

Mark each one against the invoice in front of you. If you are not sure, leave it on “not sure” — an unsure answer never counts against the carrier. It goes on a list of things to check on your document.

Anything you can evidence — 46 CFR 545.5 optional

These are reasonableness arguments, not billing defects. They only appear in your letter if you assert them, and each needs evidence you can produce. Leaving one blank neither alleges it nor waives it.

Many invoices at once

Point this at a CSV export from your TMS or accounts-payable system. It is read in your browser like everything else — the file is never uploaded. Columns it recognises include invoice_number, invoice_date, charge_last_incurred, container, bill_of_lading, total_due and the rest of the 541.6 elements. A column your export does not have is treated as an element the invoice omits, so check a flagged row against the paper invoice before relying on it.

What this cannot tell you

What the FMC found in Docket CC-002, and what this checker reproduces →

The rules engine and this page are open source: github.com/maximusrufus/fmc-541-check (Apache-2.0). If the checker misreads a carrier layout, open an issue with a redacted invoice.