How to track 3PL disputes and credits to closure (with a tracker)
Why disputes need tracking after you send them#
A credit arrives after the dispute, can come on a different invoice or document, in one of four forms, and can cover only part of what you asked. Meanwhile the next invoice brings new lines with their own dispute window, and the person checking for the credit may not be the one who sent the dispute.
Errors can also come back. Rates change more often than brands expect, sometimes one line at a time, and the 3PL's billing system can lag the rate card. This article starts where How to dispute a 3PL invoice: process and etiquette ends.
The dispute and credit tracker: columns to copy#
Copy these columns into a spreadsheet, one row per disputed or queried invoice line; the example column follows line A of the worked example below.
| # | Column | What to enter | Example (line A) |
|---|---|---|---|
| 1 | ID | A short reference for emails | D-01 |
| 2 | Invoice | Number and date | Month-1 invoice |
| 3 | Line | Description as printed | Additional picks |
| 4 | Type | Dispute (error asserted, with evidence) or question (reason and data asked for) | Dispute |
| 5 | Billed | Quantity and unit, rate, amount | 1,200 × $0.40 = $480.00 |
| 6 | Expected | Quantity, rate, amount; the counting basis (per order or package; per unit, line or SKU; units or occupied locations; count day or daily average; per each or per carton, with any per-SKU minimum); whose record | 0 additional units, from your order export = $0.00 |
| 7 | Difference | Billed amount − expected amount | $480.00 |
| 8 | Contract basis | Rate-card line or section, with effective date | Order fee includes first pick |
| 9 | Evidence | Saved files and rows: the 3PL's detail file and your own record (orders, receipts, inventory counts, carrier invoice) | Detail rows; order export |
| 10 | Window closes | Date, logged when the invoice arrives (Dispute windows and what happens if you miss them) | Invoice date + 30 days |
| 11 | Sent | Date, and to whom | Date; billing contact |
| 12 | Acknowledged | Date | Date |
| 13 | 3PL's answer | Date and summary | Agreed |
| 14 | Outcome | Credit, corrected invoice, explanation accepted, or dropped (your reason) | Credit |
| 15 | Credit agreed | Amount, form, invoice or date promised | $480.00 on month-2 invoice |
| 16 | Credit received | Amount (for a corrected invoice, the reduction), form, document number, date, and the invoice or account balance it landed on | −$480.00 line, month-2 invoice |
| 17 | Applied after the minimum shortfall? | Yes; no; or not applicable (no minimum, fee doesn't count toward it, or fees stay above it after the credit) | Not applicable: fees above minimum |
| 18 | Outstanding | Formula below | $0.00 |
| 19 | Fix and next invoice | Fix for the cause; which invoice you checked next, and the result | Billing rule fixed; month-2 invoice correct |
| 20 | Owner, follow-up, status | Name, next follow-up date, status, date closed | Owner; none; Closed (date) |
Difference = billed amount − expected amount
Outstanding = difference − credit received − amount settled without a credit
Days open = today − date sent (closed rows: date closed − date sent)
"Settled without a credit" is an explanation you accepted in writing or an amount you dropped with your reason, so every row can reach zero; keep asserted (dispute) and queried (question) totals apart.
If you pay the undisputed part, add amount paid and date (Short-paying vs. paying in full and disputing). If your 3PL takes payment by card, bank draft or prepaid balance when it invoices, there's nothing to withhold, so the tracker carries the whole claim.
Track every credit you're expecting in the same list, whatever its source (billing dispute, service-level (SLA) credit, damage or loss claim, carrier refund), labeled by kind. Keep them out of the dispute totals; each follows its own process (Claiming SLA credits: process and documentation). Undercharges belong in the variance log of your audit file, of which this tracker is the dispute-and-credit part (Building an audit trail your finance team can rely on; Not every variance is an overcharge: undercharges, manual items and special projects).
Statuses from sent to closed#
Each row has one status and moves on only when its condition is met.
| Status | Moves on when |
|---|---|
| Sent (dispute or question) | The 3PL acknowledges in writing. No reply after a week: follow up in writing. A question may not count as a dispute; near the deadline, dispute the line pending the answer. |
| Acknowledged | The 3PL answers each line |
| Answered: more data asked for | You send it; back to Acknowledged |
| Answered: agreed | A credit or corrected invoice is due |
| Answered: explanation | You accept it in writing (Closed); if not, a question becomes a dispute, and a dispute is handled as rejected |
| Answered: rejected | You drop it with your reason (Closed), or escalate or cite the clause (Using your contract in a dispute: citing the right section) and it returns to Sent with a new follow-up date |
| Credit due | The credit or corrected invoice lands in the agreed form and amount; if not, follow up as below |
| Credit received, next invoice to check | For a recurring charge, the next invoice of the same type bills the line correctly; for a one-off charge, the credit is enough. Then Closed |
When a dispute is actually closed#
A dispute is closed when one of these is on record, never on a promise:
- The credit arrived in the agreed form and amount, naming (or confirmed in writing as covering) the invoice it corrects. For a credit on fees that count toward a monthly minimum, in a month you're under it, you've recorded whether it was applied before or after the shortfall was calculated; unless your contract sets the order, ask for after.
- A corrected invoice replaced the original and says what it replaces (Double-billing the same activity across invoices); if you'd paid the original, the difference came back as a credit or refund.
- You accepted the 3PL's explanation in writing, with its contract reference, calculation and data kept on the row.
- The 3PL rejected it and you dropped it, with your reason on the row.
For a recurring charge, close the row only once the next invoice of the same type bills that line correctly. For a one-off charge, such as a duplicate line or a single project, there's no line to recheck: close on the credit, and watch the next invoice for the same kind of error.
Matching credits received to credits requested#
Match credits each billing period, after collecting every invoice and credit document: the main invoice, any separate credit note, shipping (postage) and freight (LTL/FTL) invoices, and both the summary and the detail file, since a credit can appear in only one (Separate invoices for fulfillment, storage, shipping and freight: tying them together).
Match each credit to its row by the invoice and line it names. A credit can arrive as a negative line on a later invoice, a separate credit note, a credit to your account balance, or a refund. For an account-balance credit, check the balance the 3PL reports.
In the invoices we review, some credits arrive as a single amount that doesn't say which invoice or orders it covers. Ask which lines a partial credit covers and why the rest was declined. Split a partial credit into the credited part and the remainder; keep the remainder open until it's explained, escalated or dropped with a reason. Log a credit larger than requested, or for something you didn't dispute, on its own row and ask what it is: an SLA or goodwill credit, a carrier refund passed on, a correction to another invoice, or, under some contracts, a flat minimum's own credit line.
Follow-up cadence and when to escalate#
Review the tracker each time an invoice arrives. Every invoice should be checked, at least with a spot check, and the next invoice is where credits and repeat errors show up. Every open row needs one owner, a next follow-up date and one written thread with the 3PL.
For an unanswered dispute: if you have no reply after a week, follow up in writing; if the next invoice arrives without a resolution, escalate. Once a credit is agreed, ask in writing for its form and the invoice or date it will land on. If it isn't there, first check every invoice and credit document for the period, then follow up in writing. If the invoice after that arrives without it, escalate. If you're billed weekly, give each follow-up a written response date and use that date rather than the next invoice.
For a dispute that stalls or is rejected, see Escalating an unresolved billing dispute.
Worked example: one dispute through to closure (illustrative)#
Terms, as in the dispute article (illustrative, not market rates): $1.75 per order including the first pick, $0.40 per additional unit, picks counted per unit; storage cut from $22 to $20 per pallet per month before the billing period; returns $3.50, or $5.00 with extra handling; a creditable $2,500 monthly minimum on order and pick fees only. In month 1 the brand disputed lines A and B ($640.00) and queried line C ($90.00). Outcomes are illustrative, not a claim about how disputes resolve.
Month 2. The invoice carries a −$480.00 line naming the month-1 invoice. Order and pick fees are $3,200.00, or $2,720.00 after the credit, above the minimum, so the credit cuts the bill by $480.00 before or after the shortfall test. For line C, the 3PL's return records show 40 of 60 returns needed extra handling: it credits 20 × ($5.00 − $3.50) = $30.00, and the brand accepts the explanation for 40 × $1.50 = $60.00 (it can check those records against its own returns data). Line B's $160.00 was agreed in writing but is missing, though storage is now billed correctly at 80 × $20 = $1,600.00. The row stays at Credit due, and the brand follows up in writing.
| Line | Difference | Outcome | Credit received | Outstanding | Status after month 2 |
|---|---|---|---|---|---|
| A | $480.00 | Credit | −$480.00, month-2 invoice | $0.00 | Closed; next invoice checked |
| B | $160.00 | Credit agreed | None yet | $160.00 | Credit due |
| C | $90.00 | $30.00 credit; $60.00 explanation accepted | −$30.00, month-2 invoice | $0.00 | Closed; next invoice checked |
Totals after month 2: asserted $640.00 = $480.00 credited + $160.00 outstanding; queried $90.00 = $30.00 credited + $60.00 settled without a credit.
Month 3. The $160.00 arrives as a separate credit note naming the month-1 invoice, and storage is again billed at $20, so row B closes.
Line A assumes the order fee includes the first pick; under a lower order fee plus a pick fee on every unit, that charge would be right (Per-order fees, first-pick vs. additional-pick, and per-unit pricing). Under the minimum in month 2, the brand would ask for the credit after the shortfall; under it in month 1 even with the $480, the overcharge cost nothing (Monthly minimums: how they're calculated, when they apply, how to negotiate them).
Common mistakes and red flags#
Mistakes: closing a row on a promise; tracking by invoice total instead of by line; looking for credits only on the main invoice; counting queried amounts as money owed; separate lists in operations and finance.
Red flags, once you've ruled out the legitimate cause:
- A credit that names no invoice or line. It may be a bundled goodwill or SLA credit, an account-balance credit, or from a system that doesn't print references; ask. Some countries require printed credit notes to reference the original invoice1.
- A partial credit with no explanation. The 3PL may have accepted only some lines or a smaller quantity; ask which.
- The same line wrong again after a credit. A fix loaded late can explain one more invoice; if it persists, the cause wasn't fixed (Outdated rates after a contract change).
Questions to ask your 3PL#
- Who confirms disputes in writing, and by when?
- In what form will this credit come, and on which invoice or by what date?
- Will each credit name the invoice and line it corrects?
- Are credits on fees that count toward the minimum applied after the shortfall is calculated?
- How can we see credits to our account balance, and how are they used?
- What caused the error, how was it fixed (rate table or billing rule), and from which invoice?
- Does a credit to our account balance have to be used by a certain date, and is any unused balance paid out when the contract ends?
Checklist: monthly tracker review#
FAQ#
How long should a 3PL take to issue a credit?
We found no public standard for how long a credit takes, so check your contract. One 3PL's published terms (text updated 2019, still posted in 2026) say that within five business days after a dispute is resolved, not after it's raised, it will bill any amount owed or credit the account balance "if appropriate"2.
Should I deduct a promised credit from my next payment?
Check your contract first. Where a contract adopts the IWLA standard terms (January 2026 revision), the depositor (you) may not offset invoice payments without the warehouse's prior written consent3, and deducting a promised credit is an offset. See Short-paying vs. paying in full and disputing.
Do I need software, or will a spreadsheet do?
A spreadsheet with the columns above works. For when other tools help, see Tools of the trade: spreadsheets, BI, portals and audit tools.
Who should own the dispute tracker?
Give each dispute one owner and one written thread with the 3PL. Who owns the list as a whole depends on who owns the 3PL relationship (Who should own the 3PL relationship: operations, supply chain or finance?); finance decides how to book credits (Booking 3PL credits and disputed amounts).
Sources#
3 sources cited
- Microsoft Learn, "References to original invoices in credit notes" (Aug 11, 2026; accessed Oct 17, 2026). https://learn.microsoft.com/en-us/dynamics365/finance/accounts-receivable/original-invoice-numbers-credit-notes
- ShipMonk, "Terms of Service" (agreement text updated Nov 2019; page modified May 7, 2026; accessed Oct 17, 2026), §6.6. https://www.shipmonk.com/terms-of-service
- International Warehouse Logistics Association (IWLA), "Standard Contract Terms and Conditions for Merchandise Warehouses" (rev. January 2026; accessed Oct 17, 2026), Sec. 4(e). https://iwla.com/wp-content/uploads/2026/01/2026-IWLA-Standard-Contract-Terms-and-Conditions-Final-1-6-26-1.pdf