Applies to: All tiers, most useful for 3PLs billing their clients · Last reviewed: 2026-06-24
What this is
CanShip's shipments detail export gives you the raw shipment facts in a clean, client-neutral format, so you can run your own billing or reconciliation downstream. It exports as CSV or XLSX, and both use the same column set.
How to do it
- Go to Reports > Shipments to open the Shipments Report.
- Choose your date range (Today, This Week, This Month, Last Month, or a custom From / To) and a client if you want to scope it.
- Click Export and choose Detailed, in CSV or Excel. (A Summary export is also offered, for period totals rather than per-shipment rows.)

What is in the file
One row per shipment. A multi-shipment order produces multiple rows. The columns use snake_case headers in a fixed order, so a spreadsheet or script can read them the same way every time. Highlights:
- Identifiers:
shipment_id,tracking_number,order_id, andorder_number. For manual orders,order_numberfalls back to the order number rather than exporting blank, so references are never empty. - Client: stable
client_idplus the human-readableclient_name, so each 3PL can map to its own internal codes. - Dates:
ship_dateis stamped in your company's local business date, so an order labelled late in the evening bills with the correct day rather than slipping to the next. - Counts: units, picks, and distinct SKUs, for pick-and-pack billing and audit.
- Status: voided labels are included and clearly flagged, so you can reconcile what actually shipped versus what was cancelled.
- Carrier and cost: carrier, service, cost, and an explicit currency (CAD), with the cost left empty rather than zero for manual labels that had no captured cost.
- Destination: the full ship-to address fields.
Why it works that way
CanShip is multi-tenant: every 3PL has its own clients, codes, and contract rules. The export deliberately avoids any one 3PL's conventions and exposes stable identifiers and plain names instead, so you map them to your own billing system on your side.
What can go wrong
- A cost column is empty. Manual labels with no captured cost export an empty cost, not a zero. Treat empty as "no carrier cost recorded," not free.
- A row is a voided label. Filter on the
statuscolumn so you bill shipped rows only.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article