ShipEngine's integration with DHL Express allows you to ship packages to more than 25 supported countries all over the world. Visit the DHL Express website to open a business account today!
For instructions on programmatically connecting DHL Express via the ShipEngine REST API, go to our DHL Express Guide in the ShipEngine Developer Docs.
-
An active account with DHL Express.
-
Your DHL Express Account Number, Site ID, and Password.
To obtain your Site ID and Password, you must register for the DHL Express XML Developer Portal. Contact your DHL Express Account Manager to register your account for XML Services.
To connect your DHL Express account in your ShipEngine dashboard:
-
Select the DHL Express tile for your country. You can hover over each tile to view the country and integration details.
-
Enter your DHL Express Account Number, Site ID, and Password into the corresponding fields.
US Accounts
For DHL Express US accounts, you must select your Account Country. This is the country where your DHL Express account is registered in.
-
Click Connect.
ShipEngine's integration with DHL Express supports these standard features:
ShipEngine's integration with DHL Express supports the following services:
|
US |
Domestic Service:
International Services:
|
|
Australia |
International Services:
|
|
Canada |
International Services:
|
|
UK |
Domestic Services:
International Services: |
DHL Shipping Unavailable to US Territories
Services for DHL (Express and Ecommerce) and DHL Express by ShipStation no longer support shipments to US territories.
The DHL Express integration provides the following additional features:
|
Feature |
Description |
|---|---|
|
Paperless Trade (PLT) |
ShipEngine will automatically try to submit customs information electronically through the DHL Express PLT service. If ShipEngine is not able to submit customs information through PLT (either because it's not enabled for your DHL Express account or because the destination country does not support PLT), you must instead print any necessary customs forms to include with your shipments. |
|
Third-Party and Recipient billing |
You can bill a third-party or recipient DHL Express account using Advanced Options. |
|
Schedule Pickup |
You can use the Schedule Pickup endpoint to book pickups with DHL Express. |
Starting 1st May 2025, DHL Express will support B2B, B2C, C2C, and C2B movement types for shipping from Great Britain (GB) to Northern Ireland (NI), aligning with the Windsor Framework
Requirements
To comply with The Windsor Framework, DHL Express requires the following for Non-Document shipments:
-
For B2B shipments:
-
A copy of the invoice should be provided using paperless trade (PLT). This is essential for Red lane shipments, and preferred for Green lane shipments.
-
A UKIMS number, using registration type code ADQ, is required for B2B shipments
-
A UKIMS number, using registration type code IMS, is required when sending on the Green lane.
-
-
Change the DHL product code from “DOM” or "N" to “3”
-
Provide Invoice line-item data
-
Provide a physical copy of the invoice, preferably using paperless trade (PLT)
-
The transport label should display DOM using white text on black background to represent adutiable shipment.
(This will be handled automatically if using GLS when NETWORK_PRODUCT_CODE 3 is provided).
-
No changes are required for Document shipments.
Movement Indicators
|
Parameter |
Required by the Carrier |
Description |
|---|---|---|
|
Movement Indicator |
|
Required. There is no default value for the movement indicator. |
|
Not At Risk Flag |
|
Optional. Full data for B2B shipments on lanes GB to UK should always be provided for Non-Document shipments |
|
Sender UKIMS Number |
|
Required. The carrier provides separate fields for sender and receiver UKIMS number in all EDI types. |
|
Receiver UKIMS Number |
|
Required (at least 1) for “green lane” shipping. |
Data Requirements
|
Movement Type |
Property |
|---|---|
|
B2B parcels with UKIMS authorisation |
|
|
B2B parcels without UKIMS authorisation |
|
|
B2C/C2C/C2B parcels |
|
To ensure smooth customs clearance and minimize the risk of shipment inspections or delays, it is critical to provide high-quality data for every international shipment. Poor data quality, specifically vague descriptions and missing HS codes, often triggers manual reviews by destination authorities.
-
Be Literal: Describe the item as if you are explaining it to someone who cannot see it.
-
Include Part Numbers: If your product has a Part Number (PAN), include it in the reference field to help customs verify the item.
-
The "Rule of Three": A great description usually answers What it is, What it's made of, and What it's for.
Customs authorities need to know exactly what is being imported, what it is made of, and its intended use. Avoid using internal marketing descriptions or vague terms.
-
Avoid Stop Words: Words like "Sample," "Variety," or "Gift" are frequently flagged and may trigger an automatic inspection. For a List of Common Stop Words, see the PDF attachment at the end of this article.
-
Include Material Composition: For items like footwear or apparel, specify the materials (e.g., "Men’s jeans, 80% cotton, 20% polyester" instead of just "Jeans").
-
Detail the Product Type: Instead of "VINTAGE FOOTWEAR," use "Women’s shoes - leather upper and rubber sole."
-
Be Specific: Instead of "Wheel adjusted," use "Bicycle rear pivot part."
Providing a correct HS code (or Commodity Code) is the most effective way to help customs officials categorize your goods.
-
🇺🇸 US-Based Shippers: Use the US Census Bureau’s Schedule B Search Engine to find the correct code.
-
Global Shippers: Ensure you are using the most current codes required by the destination country to avoid incorrect duty/tax calculations.
When possible, include the specific part or item number in your commercial invoice data. Mapping these to the correct reference fields in your shipping tool (e.g., the "PAN" reference type) provides an extra layer of clarity for clearance agents and helps verify the item against the provided description.
Using vague language is the fastest way to get a shipment flagged for inspection. Below are examples of poor descriptions found in recent audit data versus the clear, detailed descriptions required by customs authorities. For a List of Common Stop Words, see the PDF attachment at the end of this article.
|
Poor Description (Vague) |
Better Description (Detailed) |
Why it Matters |
|---|---|---|
|
VINTAGE FOOTWEAR |
Women's shoes: leather upper, rubber sole |
Defines gender, material, and sole type. |
|
JEANS |
Men’s jeans: 80% cotton, 20% polyester |
Specifies material composition for textiles. |
|
SAMPLE / VARIETY |
Stainless steel kitchen whisk (K792) |
Stop Words like "Sample" or "Variety" trigger automatic flags. |
|
HAIR PRODUCT |
Organic argan oil hair serum (100ml) |
Identifies the specific substance and volume. |
|
The Mesa - Medium |
Canvas messenger bag with brass buckles |
Moves past marketing names to actual physical traits. |
To ensure your international shipments clear customs without delay, use this checklist to review your data before printing your labels.
-
[ ] Is the description specific? (e.g., "Men's 100% cotton t-shirt" instead of "Apparel")
-
[ ] Did you avoid Stop Words? (Ensure "Sample," "Gift," and "Variety" are not used)
-
[ ] Is the material composition listed? (e.g., "Stainless steel," "Leather," "Plastic")
-
[ ] Is the HS code/Commodity code included? (Use a search tool if you aren't 100% sure)
-
[ ] Is the Part Number (PAN) mapped correctly? (Helps verify the item in the clearance system)
-
[ ] Is the unit value and currency accurate? (Ensure values match your commercial invoice)
When writing descriptions, ignore your marketing names. Customs authorities don't know what a Polaris IGX 144+ Linkage Kit is. Instead, describe the physical object: Steel mechanical linkage parts for vehicle suspension.
When integrating with international carriers, how you map data fields in your API payload directly impacts customs clearance rates. While the UI may show a single "Description" field, the backend mapping should prioritize the following:
-
Reference Field Mapping (PAN)
To assist customs authorities in verifying shipments against digital records, ensure that product part numbers are mapped to the correct reference type.
-
Reference Type: PAN (Part Number)
-
Usage: Map your internal SKU or manufacturer part number here. This allows clearance systems to match the physical item to the digital declaration more efficiently.
-
-
Data Integrity vs. UX Display
It is important to note that what the customer sees in the ShipStation or Shopify UI may not always reflect the full data payload sent to the carrier.
-
Payload Enrichment: Even if a merchant uses a short marketing title in their store, the integration should attempt to send the most granular description available in the product database to the
descriptionfield in the customs object. -
Stop Word Scrubbing: Consider implementing a validation layer that flags or prevents the use of Stop Words (Sample, Gift, Variety) in the
descriptionfield before the API call is finalized.
-
-
HS Code Automation
Automating the
harmonized_tariff_codefield is the highest-value optimization you can provide. Ensuring this field is populated with a 6 to 10-digit code reduces the reliance on the text description alone, as the code provides a universal language for customs agents worldwide.
-
DHL Shipping Unavailable to US Territories: Services for DHL (Express and Ecommerce) and DHL Express by ShipStation no longer support shipments to US territories.
-
Shipping to the Republic of Ireland: As of July 2, 2023, the inclusion of the correct Eircode (Postal Code) for shipments entering the Republic of Ireland (ROI) is mandatory on all DHL Express shipments. Learn more about and look up Eircodes on the Eircode website.
-
The maximum weight for an Express Envelope shipment (US accounts) is 10 oz, and you must use DHL's branded envelope packaging.
-
DHL Express UK manifests are not submitted automatically. You must use the Create a Manifest endpoint to manifest your DHL Express UK shipments.
-
When you use the multi-package shipping option, there is a limit of 99 packages with a maximum total weight of 2200 lb (1000 kg).
-
DHL Express requires a Company Name in both the Ship To and Ship From address fields. If no Company Name is available, ShipEngine will reuse the Name field.
-
ShipEngine will combine all three Label Messages into a message that will display as Ref #1 on the DHL Express shipping label.
-
ShipEngine does not provide the required EEI/ECCN for shipments sent to China, Russia, Venezuela, or Hong Kong. See the DHL website for more information on US export regulation changes.
-
DHL FEE ADJUSTMENTS: DHL reserves the right to charge adjustments for administrative and other costs. It is the shipper's responsibility to address all DHL shipment fees and subsequent adjustments. To ensure your rates in ShipEngine are accurate, be sure to always enter the true weight and dimensions of all shipments before creating the labels.
|
Issue |
Solution |
|---|---|
|
Error - A shipping carrier error occurred: (1) Paperless shipment service is not allowed for one of these reasons: Shipper or receiver\n country doesn't support Paperless Service, the product selected doesn't support Paperless\n or the declared value entered is greater than the allowed limit. Please contact DHL representative\n for further information or resubmit as regular shipment. |
What it means: The DHL Express shipment is blocked from processing due to Paperless Trade (PLT) settings. You can still get rates for the shipment even though a label cannot be created. What to do: Contact ShipEngine Support and ask that we disable your account’s Paperless Trade (PLT) for customs. |
|
I'm getting an error that indicates DHL Express can't find the recipient address when attempting to create labels. What should I do? |
Typically these errors will be displayed in one of two ways:
Both of these errors indicate that the recipient address is not formatted properly for DHL Express shipments. Compare the address details using the DHL Compatibility Tool and correct the address where needed. |