Skip to main content

Overview

DPD delivers invoice data via the DPD Insights portal (insights.dpd.nl). Each file is one invoice’s worth of shipments, with one row per shipment. Depending on the customer’s billing region, DPD may deliver the same logical data under different column names — an English-named layout, a Dutch-localized layout, or a German-localized layout. Each variant becomes the same normalized invoice_line_items schema when accessed through the Trackstar API.

Shape notes

  • Semicolon-delimited, not comma. DPD uses ; as the column separator. Parsers configured for standard CSV will misread DPD files.
  • Three column-name variants. English, Dutch, and German layouts differ in both identifier columns and charge columns. A customer in the Netherlands may receive either the English or Dutch variant; a customer in Germany typically receives the German variant. See the tabs below for each shape.
  • Embedded semicolons. DPD occasionally includes quoted values with embedded semicolons in reference fields (e.g. "RF_103326;"). Trackstar strips quotes before parsing to avoid mis-splits.
  • Invoice metadata can fall back to the API envelope. Invoice number and invoice date are primarily read from the CSV; when they’re absent from a row, Trackstar falls back to the values delivered on the DPD API envelope.
  • Tracking number is the parcel number. DPD’s Parcel number (English), Pakketnummer (Dutch and German) column maps to tracking_number. Shipment number is a separate internal DPD identifier.
  • Multiple charge columns per row. A single shipment row may populate several charge columns (base price, fuel, toll, etc.); each non-zero charge becomes one line item in the Trackstar API.
  • Dates are YYYYMMDD or DD.MM.YYYY. Both formats are accepted — no separators in the former (e.g., 20260331), dots in the latter (e.g., 31.03.2026).

Sample rows

Invoice number;Invoice date;Customer number;Parcel number;Service;Base price;Energy surcharge;Total amount
26840305;20260331;63196946;79184603396001;Express;8.62;0.35;9.80
05566517;20260331;66888433;77960076935433;Shop Delivery;7.75;0.63;10.02
60987472;20260331;76964474;74069815441672;Shop Return;5.37;0.84;11.07
23132839;20260331;33439835;41425546063107;Classic;13.24;0.52;25.57
29556504;20260331;52571506;59507496384122;Classic;4.90;0.63;13.88

Download

Download DPD English sample CSV (25 rows, 43 columns, semicolon-delimited)

Fields

Sender and receiver

ColumnDescription
Sender name / Sender name 2Sender identity (DPD relay + merchant name)
Receiver name / Receiver name 2Recipient name lines
Sender address / Sender ZIP / Sender city / Sender countrySender address

Identifiers

ColumnDescriptionExample
TypeShipment type (P = parcel)P
Quantity orderItems in the order1
Customer numberCustomer account — maps to account_id63196946
Customer nameCustomer display nameAcme Logistics NL B.V.
Invoice numberInvoice ID — maps to invoice_id26840305
Invoice dateYYYYMMDD — maps to transaction_date20260331
Parcel numberDPD parcel tracking number — maps to tracking_number79184603396001
Shipment numberInternal DPD shipment reference368264

Destination and service

ColumnDescription
Destination zoneNL, EU, INT
Commercial destination countryISO country code
ServiceService name (Classic, Shop Delivery, Shop Return, Express)
Shipment dateYYYYMMDD

Charges

Each populated charge column becomes one Trackstar line item. The charge_description is set to the column name.
ColumnDescription
Base priceBase freight charge
Energy surchargeEnergy / fuel surcharge
Toll surchargeRoad toll surcharge
Peak surchargePeak-period surcharge
System return surchargeSystem return fee
Oversized/Overweight surchargeOversize / overweight fee
Customs surchargeCustoms handling fee
Total other surchargesMiscellaneous surcharges
Total amountRow total (sum of all populated charges; informational, not a separate line item)
VAT percentageVAT rate applied

Descriptions, measurement, references

ColumnDescription
System return date / System return descriptionContext for a system return surcharge
Oversized/Overweight descriptionContext for an oversize / overweight surcharge
Date of measurement / Depot of measurementWhen / where the parcel was measured
WeightParcel weight (grams)
Length / Width / Height / GirthDimensions (cm)
Customer parcel reference 1Customer’s parcel reference (typically order number)
Customer shipment reference 1Customer’s shipment reference
Other surcharges codesComma-separated codes for any itemized other surcharges
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.

Column name cross-reference

If you’re working with multiple DPD variants, this table maps the same logical field across all three.

Identifier columns

Logical fieldEnglishDutchGerman
Invoice number → invoice_idInvoice numberFactuurFactuur
Invoice date → transaction_dateInvoice dateFactuurdatumFactuurdatum
Customer account → account_idCustomer numberRelatienummerRelatienummer
Parcel tracking number → tracking_numberParcel numberPakketnummerPakketnummer
Shipment referenceShipment numberZendingnummerSendungsnummer

Charge columns

Charge typeEnglishDutchGerman
Base freightBase priceTarief
Fuel / energy surchargeEnergy surchargeFuel surcharge
Toll / road taxToll surchargemautpreis
Peak surchargePeak surcharge
System returnSystem return surcharge
Oversize / overweightOversized/Overweight surcharge
Customs handlingCustoms surchargeverzoll_gebuehr
Generic surchargeTotal other surchargesToeslagToeslag
TotalTotal amountTotaalTotaal
COD surchargeCOD Toeslag