DPD in Hummerce is a courier integration: the store automatically creates the shipment in the DPD system, generates the label and waybill number, and the delivery status updates without store staff involvement. The current integration (DPD2) uses DPD's SOAP services and replaces the older version of the module, which only polled for shipment status.
Last updated: 2026-09-29.
¶ Benefits and use cases
- Automatic shipment and label creation after the order status changes to "ready to ship" - no manual re-typing of the address into the DPD system.
- The label and waybill number are visible right away in the order details.
- Data can be resent to DPD after fixing incorrect data, with no need to create a new order.
- The customer gets an email with the tracking number as soon as it's assigned.
- A courier protocol (a parcel handover document) can be generated right away for multiple orders with a bulk operation from the order list.
- Support for cash on delivery and shipment insurance.
- DPD (older integration) - only polls the older DPD API for shipment status; no new deployments are set up on it any more.
- DPD2 (current, recommended) - creates shipments, generates labels and protocols through DPD's SOAP services; available from version 2.11.16.
- DPD2-Events - a separate module that receives shipment status events from DPD (sent, in transit, delivered) and updates the order's delivery status based on them.
¶ Creating a shipment and the label
- A delivery method with the symbol "dpd" is automatically handled by the DPD2 integration.
- After the order's delivery status changes to "ready to ship," the store creates the shipment with DPD and saves the waybill number and label file on the order.
- If sending the data fails (e.g. due to invalid data), the error message is visible in the order details, and sending can be repeated with the "Resend to DPD" button.
- The label is available in several formats (PDF, ZPL, EPL, PS, TIFF) and page formats (A4 or a thermal printer label).
- The store calculates the shipment weight from the items in the order, or from a default weight when the order has zero weight; the number of parcels can be split across several labels.
- By default, sender data (address, contact details, FID number) is shared across the whole integration.
- Optionally, the sender address and FID number can come from the view assigned to the order - useful with several warehouses or shipping branches (available from version 2.28.15). In that case, the courier protocol needs to be generated separately for orders from each view.
¶ Courier protocol and statuses
- On the order list, several orders can be selected and, with a bulk operation, a "Courier protocol" can be generated - a document the courier uses to collect only the listed shipments.
- The DPD2-Events module receives shipment status events and periodically updates the order's delivery status (sent, in transit, delivered).
- Cash on delivery (COD) is added automatically when the order's payment is marked as cash-on-delivery.
- The DPD2 integration (shipment and label creation) is available from version 2.11.16.
- Sender address per view (DPD Custom Send) - from version 2.28.15.
- The older integration (status only) is being phased out in favor of DPD2 and DPD2-Events.
- A contract with DPD and authorization data (login, password, FID number) - the store gets these from its DPD representative.
- A confirmed standing pickup agreement with DPD.
- The house number and postal code in the delivery address - the integration requires them to address the shipment correctly.
- General rules for delivery methods - Delivery methods overview.
- Requires implementation - the integration doesn't work without configuration. Scope:
- enabling the DPD2 integration and filling in access data and sender data,
- assigning a delivery method with the symbol "dpd",
- choosing the label and page format matched to the printer,
- testing in the DPD test environment and switching to production,
- optionally: enabling the DPD2-Events module for automatic shipment statuses.
- Minimum estimated time: from 3 h.
- What the time depends on: the number of warehouses/senders (sender address per view), whether automatic shipment statuses are needed (DPD2-Events), migration from the older integration.
- Supported currencies: PLN, EUR, USD, CHF, SEK, NOK, CZK - cash on delivery (COD) only in PLN and only for domestic shipments.
- The supported shipment language is Polish.
- The delivery cost is always borne by the sender (the store) - there's no option to charge the recipient.
- Because of DPD interface limitations, waybills generated by the store don't appear in the DPD panel - they work independently of it.
- The older integration (status only) is being phased out - new deployments should use DPD2.
- No management of the DPD integration through the REST API and MCP - configuration only in the panel.
- We do not verify the task for legal compliance (e.g. licenses of submitted materials, GDPR, store terms of service).
- Fully retiring the older DPD integration in favor of DPD2 and DPD2-Events.
- Support for additional currencies and shipment languages.
- Managing the courier integration's settings through the API and MCP.
Does the store generate the DPD label and tracking number on its own?
Yes. After the order status changes to "ready to ship," the DPD2 integration creates the shipment, label and waybill number.
Can a shipment be resent if the first attempt fails?
Yes, with the "Resend to DPD" button in the order details, after fixing the data.
Does DPD support cash on delivery?
Yes, but only for domestic shipments and only in PLN.
Does the store automatically update the shipment status?
Yes, once the DPD2-Events module is enabled, which receives status events from the DPD system.
How long does implementing the DPD integration take?
From 3 h.
Does the courier protocol cover all orders ready to ship?
Only the ones selected on the order list before running the bulk operation - and only from a single view, if the store uses a sender address assigned per view.
Want to see how the DPD integration could work in your store? Contact the Hummerce team (in Polish).
- Integration configuration: Configuration -> the DPD module tab - Login, Password, FID, Test mode, sender data (Sender name, Sender company name, Sender address, Sender city, Sender postal code, Sender country code, Sender email address, Sender phone number), Default weight, Additional weight, Split total order weight into parcels, Label extension (type), Label format, Language code, Tracking URL address, Notify on waybill number assignment, Notify the customer of waybill number changes.
- Order: waybill number, number of parcels, label, message from the courier system, DPD error message number, weight (gross) - in the order's additional information.
- Order list: the "Courier protocol" bulk operation (selecting orders and generating a shared document).
¶ REST API and MCP
- The REST API and MCP have no dedicated methods for the DPD integration - the delivery method, delivery status and tracking number are visible through the general REST API and MCP for deliveries (Delivery methods overview); the integration itself updates this data on the order.
- The email message to the customer about the assigned tracking number - in the message editor.
| Symbol |
Object |
Label |
_waybill |
order |
Waybill number |
_numberOfPackages |
order |
Number of parcels |
_shippingLabel |
order |
Label |
_courierMessage |
order |
Message from the courier system |
_dpdErrorCode |
order |
DPD error message number |
_grossWeight |
order, item |
Weight (gross) |
Symbol of the delivery method handled by the integration: dpd.