Site Logo

🎉 ShipEngine is becoming ShipStation API 🎉

Over the next few months you'll notice the ShipEngine website, documentation portal, and dashboard being rebranded as ShipStation API. For our ShipEngine customers, you don't need to take any action or change any of your integrations in any way. All endpoints will remain the same and continue to function as they always have.

To learn more about what's coming, review our New ShipStation API page.

DHL Express

DHL Express allows you to ship packages from the US, New Zealand, and most EU countries to destinations all over the world.

This guide provides developers with the details needed to build DHL Express shipping capabilities into your ShipEngine workflows.

ShipEngine also has integrations for DHL Express Australia, DHL Express Canada, and DHL Express UK. Visit their carrier guides for details! If you wish to use the DHL Express services included with ShipEngine, visit the DHL Express from ShipEngine guide.

Requirements

PropertyTypeRequired?Description
nicknamestringrequiredThis is a nickname for you to identify the carrier account in ShipEngine.
account_numberstringrequiredYour DHL Express account number
site_idstringrequiredYour DHL Express account Site ID
passwordstringrequiredYour DHL Express account password
regCountryenumerated stringrequiredISO 3166 two-character country code for the country where your DHL Express account is registered in.
DE,FR,US,NZ,BE,BG,CZ,DK,EE,IE,GR,ES,HR,IT,CY,LV,LT,LU,HU,MT,NL,AT,PT,PL,RO,SI,SK,FI,SE

Shipping Requirements

  • Both weight and dimensions are required to successfully create a label.
  • Company name is required for both Ship From and Ship To addresses. If not provided, the name property value will be reused in the Company field.

Connect Account

You can connect a DHL Express account using the POST method to the /v1/connections/carriers/ endpoint, or via the ShipEngine Dashboard.

For instructions on connecting DHL Express via the ShipEngine dashboard, go to our DHL Express help article.

Connect via Endpoint

carrier_name: dhl_express

POST /v1/connections/carriers/:carrier_name

Sample request:

1
2
3
4
5
6
7
8
9
10
11
12
POST /v1/connections/carriers/dhl_express HTTP/1.1
Host: api.shipengine.com
API-Key: __YOUR_API_KEY_HERE__
Content-Type: application/json
{
"nickname": "My DHL Express Account"
"account_number": "123456789",
"site_id": "your_site_id_here.",
"password": "your_password_here",
"regCountry": "US"
}

A successful connection will return a response with the carrier_id, which you'll use for any requests for this account going forward.

Rates

DHL Express supports rate shopping in ShipEngine, except for accounts based in New Zealand (however, we are working with DHL to provide this feature for NZ accounts).

Service Details

Available DHL Express services are provided below. Please note that carriers may update their available services at any time. To ensure you are always using valid services, you can use the list carrier services endpoint at any time.

Domestic Services

ServiceAPI CodeOrigin Countries
Domestic Expressdhl_domestic_expressBE, BG, CZ, DK, DE, EE, IE, GR, ES, FR, HR, IT, CY, LV, LT, LU, HU, MT, NL, AT, PT, PL, RO, SI, SK, FI, SE

International Services

All services except Express Envelope have a max weight of 150 lb (70 kg) and max length of 118" (300 cm) for individual international shipments. The total maximum weight for a multi-piece shipment is 2,200 lb (1,000 kg). Express Envelope has a max weight of 10 oz. Packages over those maximum values will not be accepted by DHL Express.

ServiceAPI CodeOrigin Countries
Economy Selecteconomy_selectDE, FR
Express Worldwideexpress_worldwideUS, NZ, BE, BG, CZ, DK, DE, EE, IE, GR, ES, FR, HR, IT, CY, LV, LT, LU, HU, MT, NL, AT, PT, PL, RO, SI, SK, FI, SE
Express Worldwide Documentsexpress_worldwide_documentsNZ
Express Envelopeexpress_envelopeUS
Express Worldwide EUdhl_express_worldwide_euBE, BG, CZ, DK, DE, EE, IE, GR, ES, FR, HR, IT, CY, LV, LT, LU, HU, MT, NL, AT, PT, PL, RO, SI, SK, FI, SE

Return Services

Return services are not supported for this carrier

Packages

The following carrier package types are available for DHL Express services:

NameAPI CodePackage Attributes
PackageboxInternational

You can also use the generic package type or custom package types.

Adding Shipment Insurance

DHL Express supports adding carrier insurance to your shipments. Review the Parcel Insurance page for details on adding shipment insurance with ShipEngine.

Visit the DHL Express Optional Services page to find the specific coverage amounts available for each country.

Label Support

  • Label sizes: 4" x 6", 4" x 8"
  • Label formats: PDF

Label Reference Fields

DHL Express supports adding custom label messages.

Label messages will be printed on the Ref field on the label and the Reference field on the commercial invoice. If using multiple label message properties in your request, the messsages will be combined into a single message with a 35 character maximum. Any additional characters will be trimmed from the field.

Multi-Package Labels

DHL Express supports creating multi-package shipments with all availble services. DHL has 999 label maximum for multi-package shipments.

Label Branding

DHL Express does not support label branding.

Voiding Labels

ShipEngine supports voiding DHL labels, but the void request is not sent to DHL. However, DHL Express does not charge an account holder unless the waybill is physically picked up and scanned into the network by a courier. If DHL does not pick up the waybill within 10 business days of its creation, its automatically recycled.

Paperless Labels

DHL Express does not support paperless labels.

Customs Declarations

Customs declarations are submitted electronically, but the commercial invoice is available to download and print from the label response.

Delivery Confirmation

Confirmation TypeAPI CodeDescription
Electronic signaturesignatureSignature is required for the shipment to be delivered. This signature may be a neighbor, building manager, or the recipient can authorize the release of the package (without being present).

See our Delivery Confirmation page for more details about using the confirmation property.

Advanced Options

DHL Express supports certain advanced options, which you can add to the shipment object when creating a shipment or label.

OptionTypeDefault ValueDescription
bill_to_partyenumerated stringnullDetermines which party is paying for shipping costs. This field must be used in conjunction with the bill_to_country_code, bill_to_postal_code, and bill_to_account fields. Available values: recipient, third_party
delivery_duty_paidbooleanfalseIndicates the shipment is DDP (that is, the shipper is paying the duties/taxes for the shipment rather than the recipient).
non_machinablebooleanfalseIndicates that the package cannot be processed through sorting machines.
saturday_deliverybooleanfalseIndicates that the carrier should charge for delivery on Saturday for services that do not otherwise include saturday delivery.

To ensure you always have the most up-to-date information about a carrier's advanced options, use the list carrier options call.

Manifests

DHL Express does not require manifesting your shipments. For accounts based in the US, manifests submitted electronically at time of label creation.

Scheduling Pickups

DHL Express supports scheduling pickups with ShipEngine.

See our Schedule a Carrier Pickup page for more details about scheduling pickups using ShipEngine.

Service Points (PUDO)

DHL Express does not support shipping to service points.

Tracking

ShipEngine's integration with DHL Express supports receiving tracking updates. Review our ​Track a Package guides​​ for details on tracking with the ShipEngine API.

Disconnecting Your DHL Express Account

See the Disconnect section in our Delete a Carrier page for the process of deleting or disconnecting a carrier from ShipEngine.