3PL invoice example: an annotated warehouse invoice sample
A 3PL invoice example with a summary page and itemized lines, explaining each section and charge type, what to check on each line and where errors hide.
A well-laid-out 3PL invoice has three parts: a header (invoice number, date, service period), a summary page that totals each charge type, and itemized detail with one row per charge per order. To check it, you confirm the summary adds up, then test the detail lines against your rate card and your order records. Below is an annotated example from a made-up warehouse, with the lines that are wrong and why.
Ridgeline Fulfillment and its client Juniper & Pine are made up. This is their September 2026 invoice from our public sample audit, where you can open or download the full files (rate card, invoices in CSV, Excel and PDF, order export and storage report).
The header
The top of the invoice tells you which period it covers and starts your dispute clock.
| Field | Example | Why it matters |
|---|---|---|
| Invoice number | RF-2026-09 | Use it in every dispute email |
| Invoice date | 2026-10-03 | Your contract's dispute deadline may count from this date |
| Service period | 2026-09-01 to 2026-09-30 | Storage and fixed fees must match this period |
| Bill to | Juniper & Pine | Check it is your account, not a sister brand |
| Footer note | "Disputes must be raised within 30 days of the invoice date." | Your deadline: November 2 |
The summary page
The summary groups every line by charge type. It is the easiest page to read, but on its own it cannot prove much.
| Charge | Quantity | Amount |
|---|---|---|
| Pick & pack, first item | 332 | $1,079.00 |
| Poly mailer | 332 | $132.80 |
| Postage, UPS Ground | 328 | $3,756.72 |
| Additional item | 319 | $271.15 |
| Residential surcharge | 17 | $87.55 |
| Pallet storage | 46 | $828.00 |
| Account management fee | 1 | $150.00 |
| Receiving, cartons | 37 | $185.00 |
| Returns processing | 4 | $14.00 |
| Total due | $6,504.22 |
What you can check from the summary alone:
- It adds up. $1,079.00 + $132.80 + $3,756.72 + $271.15 + $87.55 + $828.00 + $150.00 + $185.00 + $14.00 = $6,504.22.
- Quantity × rate. 332 × $3.25 = $1,079.00 and 332 × $0.40 = $132.80, so the first-item and mailer rates are as contracted. But 319 additional items × $0.65 (the rate since July 1) would be $207.35, not $271.15. The billed figure is 319 × $0.85, the old rate.
- Orders versus labels. There are 332 pick & pack charges but only 328 postage labels. Four orders were billed without shipping.
The itemized detail
The detail is where you prove each finding. Here are selected September lines (the full PDF has 24 pages of them):
| Date | Order / ref | Description | Qty | Rate | Amount | Carrier cost |
|---|---|---|---|---|---|---|
| 2026-09-01 | #10402 | Pick & pack, first item | 1 | 3.25 | 3.25 | |
| 2026-09-01 | #10402 | Additional item | 2 | 0.85 | 1.70 | |
| 2026-09-01 | #10402 | Poly mailer | 1 | 0.40 | 0.40 | |
| 2026-09-01 | #10402 | Postage, UPS Ground | 1 | 14.65 | 13.08 | |
| 2026-09-03 | #10436 | Pick & pack, first item | 1 | 3.25 | 3.25 | |
| 2026-09-03 | #10436 | Poly mailer | 1 | 0.40 | 0.40 | |
| 2026-09-04 | #10443 | Residential surcharge | 1 | 5.15 | 5.15 | |
| 2026-09-01 | Pallet storage, September | 46 | 18.00 | 828.00 | ||
| 2026-09-01 | Account management fee | 1 | 150.00 | 150.00 | ||
| 2026-09-02 | ASN-2231 | Receiving, cartons | 37 | 5.00 | 185.00 | |
| 2026-09-24 | Returns processing | 4 | 3.50 | 14.00 |
What each line type is and what to check
| Line type | How it's billed | What to check |
|---|---|---|
| Pick & pack, first item | Per order | One per shipped order; none for canceled orders |
| Additional item | Per item after the first | Count equals order items minus one; rate by effective date |
| Packaging (poly mailer, box) | Each | One per shipment, and the type you actually use |
| Postage | Carrier cost plus markup | Billed ÷ carrier cost matches the contract markup |
| Surcharges | Per shipment | The address or package really qualifies |
| Storage | Per pallet, bin or cubic foot | Quantity uses the contract's basis |
| Receiving | Per carton, pallet or unit | Each inbound shipment billed once, on the agreed unit |
| Fixed fees | Per month | On the rate card, billed once |
| Returns | Per return | Quantity × rate is right; matches your returns log |
Receiving is a good example of why the unit matters. Providers may charge per pallet, per carton or per unit received (Extensiv), so check which one your rate card names.
The annotations
Here is what an audit says about each flagged line. All numbers are from the made-up example.
Order #10402, additional item. The Shopify order has 3 items, so 2 additional items is the right count. The rate is wrong: the July 1 amendment set it at $0.65. Expected 2 × $0.65 = $1.30, billed $1.70, over by $0.40.
Order #10402, postage. The contract allows carrier cost plus 8%: $13.08 × 1.08 = $14.13. Billed $14.65, which is $14.65 ÷ $13.08 = 1.12, a 12% markup. Over by $0.52. See shipping markup.
Order #10436. Canceled in Shopify on September 3 and never shipped, which is why there is no postage line. The $3.25 + $0.40 = $3.65 should not be billed.
Order #10443, residential surcharge. The order went to a company address with a suite number. UPS treats a home, including a business run from a home, as residential (UPS), so this is "likely" wrong rather than certain. Ask the warehouse to check it.
Pallet storage. The contract bills the monthly average. The daily storage report averages 38 pallets in September, peaking at 46 on one day. Expected 38 × $18.00 = $684.00, billed $828.00, over by $144.00. See storage billing: average vs peak.
Receiving, ASN-2231. The same receipt, 37 cartons for $185.00, is already on the August invoice. This one is a duplicate.
Account management and returns. Both are on the rate card. $150.00 once for the month is right, and 4 × $3.50 = $14.00 is right. Correct lines are worth noting too, so you know what you checked.
No minimum top-up. Fulfillment charges are far above the $1,500 monthly minimum, so no top-up line should appear, and none does.
Formats you may receive
Warehouses send detail in different shapes. The sample includes three: a CSV export with a total row, an Excel file with a title block above the headers, and a PDF with a summary page and itemized pages. Column names vary ("Amount", "Extended Amount"; "Carrier Cost", "Base Cost"), but the information is the same. If your invoice has no carrier cost column, ask for one. Without it you cannot check markup.
For the full checking method, see how to audit a 3PL invoice. To compare charges against what you agreed, keep your rates in one place with our rate card template.
Check your own invoice
3PL Checker reads invoices in these formats, matches every line to your rate card and Shopify orders, and gives you annotations like the ones above with the evidence attached. A person reviews each finding. The first audit is free.
Questions
What is a 3PL invoice?
It is the bill a third-party warehouse sends for its services in a period, usually monthly. It covers receiving, storage, pick and pack, packaging, shipping and surcharges, returns and fixed fees, ideally with itemized detail per order.
What is a fulfillment invoice?
A fulfillment invoice is the same thing as a 3PL invoice: the warehouse's bill for storing, picking, packing and shipping your orders, normally with a line per charge per order.
What is the usual warehouse invoice format?
A common layout has a header with invoice number, date and service period, a summary page of totals by charge type, and itemized detail with date, order or reference, description, quantity, rate and amount. Detail often comes as a CSV, Excel file or PDF.
Is there a warehouse invoice template I can use?
You can download our made-up sample invoices in CSV, Excel and PDF from the sample audit page. They show a complete summary and itemized layout you can compare with your own bills.