Automatic Courier Labels for DPD and DHL: A Guide
If you sell across multiple channels, manually issuing waybills in the DPD and DHL panels can eat up several hours a day. This guide shows you how to set up automatic label generation for both couriers, when to go through your own API, and when to go through a broker.
How automatic courier labels for DPD and DHL work
Automatic labels are a mechanism in which your e-commerce system or shipping panel creates the waybill itself based on order data. Instead of logging into the courier’s panel and retyping the address, the software pulls the recipient’s details, weight, dimensions, and chosen service from the order, sends them to the carrier’s API, and gets back a shipment number (waybill number) and a ready-made label file in PDF or ZPL format. All you do is print the sticker and attach it to the parcel.
The short answer to how to get this running for DPD and DHL: you have two paths. The first is direct integration with the courier’s WebAPI after signing a commercial agreement with them. The second is a broker or multi-courier integrator that ties many carriers together under a single interface and requires no separate agreements. InPost is the simplest one here, because it offers a modern REST API (ShipX), whereas DPD and DHL largely run on older SOAP/XML-type services, which makes their implementation a bit more labor-intensive. If you’ve already got InPost sorted, this article closes the rest of the puzzle — you’ll find a solid walkthrough of the automation side in our article on automatic InPost labels.
What you actually gain
- Time — a dozen or so seconds instead of minutes per parcel; at 50 orders a day, that’s hours recovered every day.
- Fewer address errors — no retyping means no typos, the kind that generate returns and deliveries to the wrong location.
- Automatic tracking — the tracking number reaches the customer and the marketplace panel without manual copying.
- Scalability — batch-printing dozens of labels with a single command instead of clicking through parcel by parcel.
Two paths to automation: the courier’s own API vs. a broker
Before you pick a specific tool, decide on the model. This is the most important decision in the whole process, because it determines the costs, the rates, and the amount of work involved in implementation.
Direct integration with the courier’s API
You sign a commercial agreement with DPD or DHL, receive access credentials, and connect directly to their web service. Pros: your own negotiated rates (usually more favorable than a middleman’s at higher volumes), full control over the process, and no broker margin. Cons: you need an agreement, SOAP/XML integration is technically harder than REST, and you implement and maintain each courier separately. This is the model for stores with high, steady volume across one or two couriers.
A broker or multi-courier integrator
You register an account on a platform that already has agreements in place with many carriers and offers them through one panel and one API. Brokers operating in Poland include Apaczka, Sendit, Furgonetka, and Globkurier, among others. Pros: one account instead of many agreements, collectively negotiated rates (per market data, roughly 10–20% below retail price lists — worth verifying for your own volume), bulk label generation, cash-on-delivery (COD) and returns handling, and ready-made integrations with store platforms. Cons: the middleman’s margin/commission, less control, and dependence on a single provider. This is the model for stores with low and medium volume, and wherever you want to offer the customer several couriers at once.
Rule of thumb: at a few hundred parcels a month, a broker usually wins on simplicity; at a steady several thousand parcels, your own agreement and API integration start to pay off on cost.
DHL — how to set up automatic labels
On the DHL eCommerce / DHL Parcel Poland side, automation is handled by WebAPI (DHL24 WebAPI2). To get started, you need an account at dhl24.com.pl and an active customer number. You’ll generate API keys after logging in, under “My data” → the “API keys” tab. DHL distinguishes between two kinds of keys: API v2 — for courier services, and API PS — for pickup points (Parcelshop / POP / DHL Box 24/7).
The service is built on SOAP technology, described by WSDL files, and you send requests in XML format. Two environments are available: production at dhl24.com.pl/webapi2 and a test (sandbox) environment at sandbox.dhl24.com.pl/webapi2. Always test the integration on the sandbox first — not in production.
DHL label formats
- BLP PDF — 10×17 cm, for thermal printers (the most convenient in e-commerce).
- LBLP PDF — BLP adapted to A4 format (a regular printer).
- BLP ZPL — for Zebra printers (a label in the printer’s language).
- LP — an older A4 waybill, being gradually phased out.
DHL also has ready-made integrations with popular platforms (including WooCommerce, IdoSell, and Apilo) that generate labels directly from within the store — if you use one of them, part of the work is already off your plate. Technical details and the list of integrations: the DHL integration page.
DPD — how to set up automatic labels
On the DPD Poland side, automation is handled by Web Service DPD Polska (WebAPI). You authenticate with three pieces of data: login, password, and FID (customer number). Mind the order of the steps: you receive the API access credentials from your account manager only after signing an agreement and declaring your intent to use the API. Without an agreement, you won’t get anywhere.
WebService DPD exposes four main methods that together form the full shipment cycle:
- Validating shipment data and assigning the numbers of waybills.
- Generating the labels for waybills.
- Generating the pickup protocol and pre-advising the data.
- Ordering a courier for pickup.
The label in PDF format is downloaded automatically right after the waybill is created. Technologically, DPD has historically relied on SOAP, though REST also appears in newer solutions. A test (sandbox) environment is available after you register a test account, and tests in it don’t affect real shipments or billing. DPD has ready-made plugins and connectors for WooCommerce, PrestaShop, Magento, and Shopify, among others, and is also supported by marketplace integrators. Details on the DPD integration page.
DPD vs. DHL vs. broker — a comparison
| Criterion | DPD (own API) | DHL (own API) | Broker / integrator |
|---|---|---|---|
| Prerequisite | Agreement with DPD + API credentials (login/password/FID) from your account manager | dhl24.com.pl account + active customer number, API v2/PS keys | Register an account with the broker, no agreements with couriers |
| Technology | WebService (SOAP/XML), REST in places | WebAPI2 (SOAP/WSDL/XML) | One API tying together many carriers |
| Label formats | PDF (auto after the waybill is created) | BLP/LBLP PDF, BLP ZPL, LP (A4) | Depends on the broker, usually PDF + thermal |
| Rates | Your own, negotiated by volume | Your own, negotiated by volume | Collectively negotiated (roughly 10–20% below retail) |
| When to choose | High, steady volume with one courier | High volume, international shipments | Low/medium volume, several couriers at once |
Label formats and printers — what not to overlook
The most common mistake during implementation is a mismatch between the label format and the printer. Before you go live, run through this checklist:
- Thermal 10×15 cm — the e-commerce standard, an ink-free printer, a sticker ready to attach. The cheapest to run at higher volumes.
- A4 on a regular printer — works to start with, but requires folding/cutting and burns through toner. Fine for a few parcels a day.
- ZPL for Zebra printers — a label generated directly in the printer’s language; faster and with no loss of quality as you scale.
- Batch printing — check whether the tool can generate and print dozens of labels in a single action.
- Pickup protocol / manifest — a document for the courier listing the parcels being handed over; needed to settle the pickup.
- Return labels — if you handle returns, make sure the integration generates them (at DPD and DHL this is a separate feature).
How much it costs — an approximate 2026 price list
The rates below are approximate, given as net “from” amounts, and come from market comparisons for 2026. Treat them as a reference point — the real price depends on your volume, your agreement, and surcharges (fuel, oversize, COD). Always verify at the source, because courier price lists change several times a year (in 2026, a DPD price-list revision effective July 1 was signaled, among others — check the current document with the carrier).
| Service | Weight | Net price (approximate, 2026) |
|---|---|---|
| DPD courier | up to 5 kg | from approx. 13,50 zł |
| DPD courier | up to 15 kg | from approx. 15,50 zł |
| DPD courier | up to 31,5 kg | from approx. 18 zł |
| DPD Pickup (point) | up to 5 kg | from approx. 9,90 zł |
| DPD — cash-on-delivery (COD) surcharge | — | approx. 3,50 zł |
| DHL courier | up to 5 kg | from approx. 15 zł |
| DHL courier | up to 10 kg | from approx. 17 zł |
| DHL courier | up to 31,5 kg | from approx. 20 zł |
With a broker (Apaczka, Sendit, Furgonetka), the same shipments can be roughly 10–20% cheaper than the retail price list, because you’re using collectively negotiated rates. You’ll find a full breakdown of rates and delivery times in our comparison of couriers for e-commerce 2026.
Step-by-step implementation
- Count your volume and courier split — how many parcels per month, and what share goes to DPD, DHL, and pickup points. This is the basis for the broker vs. own API decision.
- Choose a model — at hundreds of parcels, a broker; at thousands, your own agreement and integration.
- Sort out access — an agreement + API credentials (DPD: login/password/FID; DHL: dhl24 account + customer number + keys) or an account with a broker.
- Fire up the sandbox — test creating a waybill and downloading a label before you go live.
- Pick the label format to match your printer (thermal 10×15, ZPL, or A4).
- Map the services and fields — weight, dimensions, COD, pickup point, additional services.
- Set up the automatic status and tracking number that flows back to the customer and the marketplace panel.
- Enable batch printing, along with courier ordering and pickup-protocol generation.
- Monitor address validation errors — this is the most common source of failed shipments.
Tracking, pre-advice, and notifications
The label is only half of the automation. The other half is the feedback loop: the tracking number that, once the parcel is shipped, flows back to the order and reaches both the customer and the marketplace panel. Without this step, the customer doesn’t know where the parcel is, and you’re manually answering “where’s my shipment” emails. With a proper integration, the waybill number is saved automatically, and a notification with a tracking link goes out to the buyer.
It’s worth taking care of pre-advice — passing the recipient information about the planned delivery and the option to change the date or address. DPD develops this in its Moja Paczka service (including a preview of the courier’s location on a map on the delivery day), while DHL offers its own notification channels. From the store’s perspective, the key thing is that the customer’s contact details (phone, email) reach the courier’s API along with the address — otherwise pre-advice won’t work. It also genuinely reduces the number of undelivered parcels and returns, and, with that, the cost of reshipping.
International shipments and pickup points
If you sell abroad, DHL is the natural choice here thanks to its extensive international network — for international shipments, however, the integration has to handle additional fields: customs data, the HS code, and the value and description of the goods for shipments outside the EU. Check this at the field-mapping stage, because gaps will block the shipment. In multichannel selling, it’s also worth planning ahead for pickup points: DPD Pickup and the POP/DHL Box 24/7 network are separate services (and in DHL a separate API PS key), and customers increasingly choose pickup at a point over doorstep delivery. Well-designed automation lets you show couriers and points at checkout, and on the shipping side — automatically select the right service and label format.
The most common mistakes when automating DPD/DHL labels
- No address validation before shipping — a wrong street or postal code means a return and double the cost. The DPD API has a dedicated validation method — use it.
- The wrong label format — an A4 file on a thermal printer (or the other way around), and the whole batch print is fit for the bin.
- Testing in production — instead of the sandbox; it ends in real waybills and real costs.
- Unhandled edge cases — a missing weight, an unusual size, special characters in the address, an international shipment.
- No fallback when the courier’s API doesn’t respond — during a carrier outage, the shipment queue has to wait, not lose the order.
- Status drift between channels — you ship in one place, but the tracking number doesn’t flow back to Allegro or the store. It’s worth tying this to order automation so the whole chain from payment to shipment runs without manual handling.
Ultimately, it’s most convenient to have many couriers (InPost, DPD, DHL) under one roof, alongside synchronization of stock levels and order statuses. That’s the kind of model — one panel for labels and orders from many channels — we’re working on at Nimo. Whatever tool you choose, the principle stays the same: the less manual retyping between courier panels and sales channels, the fewer errors and the faster the shipping.
Frequently asked questions
Do I need an agreement with DPD or DHL to generate labels automatically?
For integration with a courier’s own API — yes. DPD issues API credentials (login/password/FID) only after you sign an agreement and tell your account manager you want to use the API; DHL requires a dhl24.com.pl account with an active customer number and generated API keys. If you’d rather avoid agreements, use a broker — you ship under their contract.
Can you automate DPD and DHL labels without your own API?
Yes. A broker or multi-courier integrator (e.g. Apaczka, Sendit, Furgonetka) gives you one panel and one API for many carriers without signing separate agreements with them. You pay for the convenience with the middleman’s margin, but you’re up and running right away and get collectively negotiated rates.
Which label format should you choose — PDF or ZPL?
If you have a Zebra printer, choose ZPL — the label is generated in the printer’s language, faster and with no loss of quality. On a regular thermal printer, use PDF in 10×15/10×17 cm size (DHL: BLP PDF). Leave the A4 format (LBLP/LP) for getting started or for one-off parcels.
How does integrating DPD and DHL differ from InPost?
InPost offers a modern REST API (ShipX), which is lighter to implement. DPD and DHL largely rely on older SOAP/XML services (WebService DPD, DHL24 WebAPI2), which makes integration more labor-intensive. The end result, though — an automatic label and a tracking number — is the same.
How much does DPD and DHL shipping cost in 2026?
As a rough guide, a courier parcel up to 5 kg starts from approx. 13,50 zł net (DPD) and from approx. 15 zł net (DHL), while parcels up to 31,5 kg start from approx. 18–20 zł net; a DPD Pickup point from approx. 9,90 zł. These are “from” rates — the real price is set by volume, your agreement, and surcharges, and price lists change several times a year, so verify the current document with the carrier.
Read more
Build Nimo with us
Join the waitlist and be among the first to switch to Nimo when early access opens.
A bonus for the first users on the list