Overview
DPD delivers invoice data via the DPD Insights portal. Each invoice comes with a PDF and a spreadsheet of its shipments: a semicolon-delimited CSV for recent invoices, or an XLSX file for older ones. The spreadsheet has one row per shipment (parcel). Columns use English names; some DPD files use other names for the key identifier and charge columns (see Alternate column names below).Files you’ll receive
Trackstar downloads every document DPD attaches to an invoice and serves it unchanged through the Files endpoint, under the file name DPD gives it.- Grouped per invoice. Each file’s
idcontains a folder named{invoice number}_{YYYYMMDD}(the invoice date), so the PDF and spreadsheet for one invoice share a folder.file_nameis DPD’s own file name. Files collected before mid-October 2026 are not grouped this way. - Invoice number and date can be blank. XLSX files, and older CSVs with a dash in the file name, leave the
Invoice numberandInvoice datecolumns empty. Trackstar fillsinvoice_idandtransaction_datefrom the invoice the file belongs to instead. - The same invoice can arrive twice. Each daily sync starts on the date the previous one ended, so invoices dated on that shared day are downloaded by both and appear as two sets of files. Line items are not duplicated: both copies produce the same line-item
ids. If you process the raw files yourself, de-duplicate by invoice number. - Failed exports. DPD occasionally produces a CSV whose only content is the line
ODS data retrieve failed. These files produce no line items. - XLSX files are binary spreadsheets, not semicolon text. Trackstar reads their rows by the same column names as the CSV.
Shape notes
-
Semicolon-delimited, not comma. DPD uses
;as the column separator. Standard comma-CSV readers will misread DPD files. - One row per shipment. Each row is one parcel. A row may populate several charge columns (base price, fuel, toll, etc.); each non-zero charge becomes one line item in the Trackstar API.
-
Tracking number is the parcel number. DPD’s
Parcel numbercolumn maps totracking_number.Shipment numberis a separate DPD reference, not the tracking number. -
Quotes can hide a real separator. DPD sometimes wraps a value in double quotes with the following
;inside them, for example"RF_103326;". That;is a real column separator, not part of the value. A standard CSV reader treats it as text and returns a row one field short (42 instead of 43), with every later column shifted left. Trackstar removes all double quotes before splitting, which restores the full row. Do the same if you parse DPD files yourself. In this example,Customer parcel reference 1isORD-104381andCustomer shipment reference 1is empty: -
Dates are
YYYYMMDDorDD.MM.YYYY. Both are accepted: no separators in the former (e.g.,20260331), dots in the latter (e.g.,31.03.2026).
Sample rows
Curated subset of columns for readability. The downloadable CSV has all 43 columns.Download
Download full sample CSV (1 header row + 25 data rows, 43 columns, semicolon-delimited)All sample data is synthetic. Tracking numbers, account numbers, addresses, and reference fields are fabricated and do not correspond to any real shipments or customers.
Fields
Sender and receiver
Identifiers
Destination and service
Charges
Each populated charge column becomes one Trackstar line item. Thecharge_description is set to the column name.
Descriptions, measurement, references
Alternate column names
Some DPD files use other names for the key fields. Where a row uses one of these names, it maps to the same Trackstar field as its English counterpart.
These files can also carry charge columns that the English file doesn’t have. Each populated one becomes a line item with the column name as its
charge_description, the same as the English charge columns.
Unlike
Total amount in the English file, Totaal is treated as a charge column, so a non-zero Totaal becomes its own line item alongside the other charges on the row.