- JSON: each shipment is an object with these field names; its goods lines go in
items. - File: each column header is the same name, and there is one row per goods line —
repeat the shipment columns on each line of a multi-line shipment, and keep the lines of
a shipment together.
.csvand.xlsxonly; re-save.xlsbefore sending.
Download a starter file: shipments-template.csv —
the header row, with one example shipment.
Identity
string
required
Your connote / consignment number, up to 255 characters. This identifies the shipment
permanently: sending it again updates that shipment instead of creating a second
one, and replaces its goods lines with the ones in the new push. Matching ignores case.
string
The customer this shipment belongs to, using the customer code configured in Dyspach —
the same code you pass in
general.customerIds when quoting.This is the link between the shipment and the customer at billing time. A shipment
carrying a code nobody recognises still imports, but it will not be billed to anyone,
so it is worth getting right.Origin
originPostCode, originSuburb, originState and originCountryCode are required —
together they must resolve to a serviceable location, or the shipment is rejected with
Origin Zone(s) not found.
Destination
Same four required fields, and rejected the same way (Destination Zone(s) not found).
Dates and commercials
Goods
Every shipment needs at least one goods line — at most 500, and at most 10,000 across a whole JSON batch (a file has no line limit beyond its 50 MB size). In JSON they are theitems array; in a file, each line is its own row.
string
required
What the line is —
Carton, Pallet, Satchel, and so on. A row with no itemType
contributes no goods line at all, which is why it is required.Custom fields
Your customer’s carrier may configure extra fields on shipments or goods. They are addressed by name, exactly as configured:-
JSON — a
customFieldsobject on the shipment, and another on each item: -
File — a column per field, prefixed
CF:for shipment-level andITEM_CF:for goods-level:
Missing mandatory custom field(s): ….
Value formats
Booleans
Booleans
In JSON, use real booleans (
true / false). In a file, write Yes or No —
a file cell containing true is read as “not yes”, which is almost never what you
meant.Dates
Dates
ISO-8601, e.g.
2026-08-14T02:15:00Z. Dates without a time are accepted.Numbers
Numbers
Plain decimals —
412.55. No currency symbols, no thousands separators.Multi-line shipments in a file
Multi-line shipments in a file
Repeat the shipment columns on every row of the shipment and keep those rows
together. Rows are grouped by consecutive matching A blank
shipmentId:shipmentId is not carried down from the row above — it is rejected with
No Shipment ID found.
