Most missed accessorial charges are not disputes you lost. They are charges nobody ever billed, because the evidence sat in a job note, a dock photo or a driver's timestamp that never reached the person building the invoice. The fix is a short, repeatable pre-invoice audit: compare every completed job against the quote, the rate card and the customer's contract, and do not release the invoice until each charge has evidence behind it.
Why do accessorial charges get missed?
The base charge on a job is hard to forget. It was on the quote, it is on the work order, and the customer expects it. Accessorials are different: they are triggered by something that happened on the floor, often after the quote was accepted, and the person who saw it happen is rarely the person who writes the invoice.
That gap is where revenue leaks. A lead on second shift notes that the container was a mixed-SKU floor load that had to be sorted. A receiver swaps in 24 of your pallets because the inbound arrived without any. The driver shows up at 6:40 p.m. and the crew stays late. All of that is real work your customer agreed to pay for in the contract, and none of it is guaranteed to reach billing unless someone looks for it.
We are not going to quote you an industry leakage percentage, because we have not found a published figure we trust. In our experience running a warehouse, the pattern is consistent anyway: leakage clusters in a handful of predictable charge types, and a structured check catches most of it before the invoice goes out. For a full list of what these charges are and how they are usually priced, see warehouse accessorial charges explained.
Where do missed charges usually hide?
Job notes that never reach billing
Free-text notes ("lots of crushed cartons, re-taped 40", "customer asked for labels on every carton") describe billable work, but most billing workflows read structured fields: container size, load type, quantities. If the note is not converted into a line item, it does not get billed.
After-hours and weekend work not flagged
The appointment said 2:00 p.m. The truck arrived at 6:40 p.m. Unless someone compares the actual gate-in and finish times against your standard operating hours, the after-hours or overtime surcharge in the contract never fires.
Pallets supplied but not counted
Floor-loaded freight that gets palletized on receipt consumes your pallets, stretch wrap and labor. If the receiving record shows "26 pallets put away" but not "26 pallets supplied by warehouse", the pallet charge is invisible.
Sort and segregate not recorded
Mixed-SKU containers take longer and often need sorting by SKU, lot or PO before put-away. Many rate cards price this separately, per carton or per SKU over a threshold. If receiving records the SKU count but not that a sort happened, billing has no trigger.
Storage minimums and partial months
Contracts often set a monthly minimum or bill storage per pallet per month with a minimum charge. When a customer's volume dips, the per-pallet total can fall below the minimum, and the invoice quietly bills the lower number unless someone checks the contract.
Detention and demurrage passthrough
If a container sat at the terminal or the chassis was held past free time because of the customer's delay, you may have a carrier or terminal invoice to pass through. These arrive later than the job closes, so they get missed or billed months late. If you pass these through, check the underlying invoice first. Under the Federal Maritime Commission's billing rule at 46 CFR part 541, demurrage and detention invoices issued by ocean carriers, marine terminal operators and NVOCCs must include specific identifying, timing and rate information, and the billed party gets at least 30 days to request mitigation, refund or waiver. Read detention vs. demurrage for the difference between the two.
If a charge depends on something someone saw on the dock, assume it will be missed unless the job record has a structured field for it. Fix the field, not just the invoice.
The pre-invoice audit checklist
Run this on every completed job before the invoice is created, not after it is sent. Correcting a draft is a two-minute fix. Rebilling a customer after they have paid is a phone call and a credit memo.
1. Compare the job against the quote, rate card and contract
2. Attach evidence to every charge
3. Approval and dispute handling
Pre-invoice reconciliation: job record field to charge to evidence
The fastest way to make the audit routine is a mapping table: for each field in your job record, which charge it can trigger and what proof you need. Adapt the rows to your own rate card.
| Job record field | Charge it can trigger | Evidence to attach |
|---|---|---|
| Load type (floor-loaded vs. palletized) | Floor-load devanning rate instead of palletized rate | Door-opening photo, receiving record |
| Carton count | Per-carton handling above an included threshold | Receiving count, signed delivery receipt |
| SKU count / sort performed | Sort and segregate, mixed-SKU surcharge | Receiving record by SKU, lead's note |
| Pallets built / pallets supplied | Pallet supply charge, palletizing and wrap | Put-away count, pallet issue log |
| Labels applied | Labeling per carton or per pallet | Customer instruction, label count |
| Actual arrival and finish time | After-hours, weekend, overtime surcharge | Gate log or yard system timestamps |
| Driver wait time | Detention (if you bill it), or dispute evidence if billed to you | Check-in and release timestamps |
| Damaged or crushed cartons | Rework, re-taping, repack | Photos, OS&D notes on POD |
| Storage days / pallets on hand | Storage per pallet, monthly minimum | Inventory snapshot, contract minimum |
| Third-party invoice received | Terminal, demurrage, detention or chassis passthrough | Original invoice with container number and dates |
Once this table exists, the audit becomes a checklist the reviewer can work through in a few minutes per job. It also shows you which fields your receiving team is not filling in, which is where the next round of leakage is coming from. Your rate card should use the same charge names as this table, so the person reading the job record and the person building the invoice are speaking the same language.
Worked example: one container, two missed charges
All names, rates and quantities below are invented for illustration. Use your own rate card.
The quote: one 40ft high-cube, floor-loaded, about 1,800 cartons, unload and put away. Quoted at a $475 devanning rate (inside the $350–$600 planning range we publish for a 40ft floor-load).
What the job record shows:
- Appointment 2:00 p.m.; gate-in 6:40 p.m.; unload finished 9:15 p.m.
- 1,812 cartons, 31 SKUs, 26 pallets built and put away.
- Lead's note: "No pallets on load, used ours. Sorted by SKU before put-away."
The customer's contract (illustrative rates): after-hours unload start after 5:00 p.m., $150 flat; pallet supply $12 per pallet; sort and segregate for more than 20 SKUs, $0.15 per carton.
The draft invoice as first built: devanning $475 and sort and segregate 1,812 × $0.15 = $271.80 (the SKU count was in a structured field, so it fired). Total $746.80.
What the audit found:
- After-hours unload: gate-in at 6:40 p.m. is after the 5:00 p.m. threshold. Evidence: gate log timestamp. Add $150.
- Pallet supply: the note says the warehouse supplied the pallets, but the job record only had "pallets built: 26". Evidence: lead's note plus the pallet issue log. Add 26 × $12 = $312.
Corrected invoice: $746.80 + $150 + $312 = $1,208.80. The two missed charges were $462, more than a third of the corrected total. Neither required a negotiation, only a check of records the team already had.
Process fix: add a "pallets supplied by warehouse" field to the receiving screen, and a rule that flags any gate-in after 5:00 p.m.
To see what those added lines do to the job's margin rather than just its revenue, put the costs and the corrected revenue into the 3PL quote margin calculator. Pallets and after-hours labor are real costs; if you incur them and do not bill them, the job's margin falls twice.
Handling passthrough charges you were billed
When the charge started with someone else's invoice, audit that invoice before you pass it on:
- Match the container number, bill of lading and dates to your job.
- Check the free time and the dates charged against your own gate and appointment records.
- If the invoice came from an ocean carrier, marine terminal operator or NVOCC for demurrage or detention, check it carries the information 46 CFR part 541 requires (as of October 2026, section 541.6 lists the required contents). Under section 541.5, an invoice missing required information eliminates the billed party's obligation to pay that charge.
- Decide whether you dispute it with the issuer, pass it through to your customer, or absorb it, and record why.
- If you use QuickBooks Online Plus or Advanced, recording the cost as a billable expense assigned to the customer makes it appear for selection when you next create that customer's invoice, which reduces the chance it sits forgotten.
How often should you run the audit?
Per job, before the invoice is created. A monthly look-back is useful for spotting patterns (which customers, which charge types, which shifts) but it is not a substitute: by the time a monthly review finds a missed charge, the invoice has gone and the customer has often paid. If volume makes per-job review hard, start by auditing every job with a non-empty note field, every after-hours arrival and every floor-loaded container, since those are where the evidence for extra work tends to live.
This is the work Chloe, the billing agent in Rapid Ai 10x, is built for: she reads completed jobs, applies each customer's rates, flags charges the job record supports but the draft invoice is missing, and prepares invoices for QuickBooks, with a person reviewing before anything is sent. See how the three agents work together.
Sources
- 46 CFR Part 541: Demurrage and Detention Billing Requirements
- Demurrage and Detention Billing Requirements: Properly Issued Invoices Provision Set Aside by Court (Docket FMC-2025-0107)
- Enter billable expenses
Figures from these sources are cited where they appear. Anything not cited is labeled as an assumption, a planning range or an illustrative example. How we write and check these guides.
Update log
- Published.