DHL Profiles
Manage DHL user group profiles. Profiles are the link between the DHL business customer portal (GKP) and billing numbers (EKP + procedure + participation).
Opening the Page
- Via search: DHL Profile
- Via DHL Shipment Setup → Profiles & Billing → click the Default Profile field
Overview
The profile and contract line architecture replaces the former static entry of a single billing number. It enables:
- Multiple EKP numbers per connection (e.g. domestic vs. international)
- Product-specific contract lines (different billing numbers per DHL product)
- Zone-based routing (Domestic / EU / International / Catch-all)
- Weight-based routing (maximum weight per contract line)
- Service variants (separate participation codes for shipments with value added services such as bulky goods, cash on delivery, or GoGreen Plus)
- Shipping agent service-specific contract lines (optional: only for a specific BC shipping agent service)
Fields
Profile Header
| Field | Description |
|---|---|
| Code | Unique code for the DHL profile. Corresponds to the name of the user group profile in the DHL business customer portal (GKP), e.g. STANDARD_GRUPPENPROFIL |
| Description | Free-text description of the profile |
| Default | Marks this profile as the default. Only one profile can be the default at a time. The default profile is used when no alternative profile is specified during label creation. |
Contract Lines
One or more contract lines can be maintained per profile. The contract line determines which billing number is used for a specific shipment.
| Field | Description |
|---|---|
| EKP | 10-digit DHL customer number (Einheitliche Kunden-Prozess-Nummer). Required per line. |
| Shipping Agent Service Code | Optional filter: This contract line only applies to this BC shipping agent service code. Empty = all services. |
| Product | DHL product for this contract line: V01PAK (DHL Parcel), V53WPAK (Parcel International), V54EPAK (Europaket), V62KP (DHL Small Parcel), V66WPI (Warenpost International) |
| Participation | 2-digit DHL participation code. Corresponds to the last 2 digits of the billing number. DHL assigns different participation codes for the same product depending on the service variant. |
| Service Variant | Which service combination this participation covers (see Service Variants). |
| Zone | Shipping zone: Domestic (same country), EU (EU member state), International (non-EU), (Any) (catch-all for all zones) |
| Max Weight (g) | Maximum shipment weight in grams for this contract line. 0 = unlimited. Shipments above this weight are routed to the next matching line. |
| Default | Marks this contract line as the default within a profile when multiple lines match the same criteria |
| Description | Optional description of the contract line |
Service Variants and the DHL Billing Matrix
DHL assigns different participation codes for the same product depending on which value added services are booked. This applies especially to DHL Parcel (V01PAK) — for smaller products, standard and services are usually combined in one participation.
| Service Variant | When is it required? | Typical value added services |
|---|---|---|
| Standard | Shipments with no value added services | DHL Retoure insert only |
| With Services | At least one value added service is booked (without GoGreen) | Bulky Goods, Cash on Delivery, Insurance, Age Check (A16/A18), Ident Check, Preferred Day, Preferred Neighbour, No Neighbour Delivery, Signed by Recipient, Named Person Only, Premium, CDP, PDDP, Parcel Outlet Routing |
| GoGreen | GoGreen Plus only, no other value added services | GoGreen Plus |
| With Services + GoGreen | GoGreen Plus and at least one other value added service | Combination of both |
Automatic Variant Resolution
The Contract Resolver automatically determines which service variant is required for a shipment — based on the VAS selected in the label dialog. You do not need to switch anything manually. You only need to ensure that a contract line with the appropriate participation code is configured in the profile table for each variant you want to use.
Missing Contract Line for Service Variant
If a shipment contains bulky goods (or another service requiring "With Services") but no contract line with Service Variant = With Services exists, label creation will fail with a clear message indicating which variant is missing and how to configure it.
Resolution Logic (Contract Resolver)
When creating a label, the Contract Resolver automatically determines the appropriate contract line:
- Determine zone: The destination country of the shipment is analyzed:
- Domestic = Same country as the company address in Business Central
- EU = EU member state (but different country)
-
International = All other countries
-
Determine service variant: The required participation dimension is automatically derived from the selected VAS:
- No value added services → Standard
- GoGreen Plus only → GoGreen
- Other value added service without GoGreen → With Services
-
Other value added service + GoGreen → With Services + GoGreen
-
Find contract line (in this priority, per zone and service variant): | Priority | Shipping Service | Zone | |---|---|---| | 1 (highest) | Specific service | Specific zone | | 2 | Specific service | Any (catch-all) | | 3 | Empty (all services) | Specific zone | | 4 (lowest) | Empty | Any (general catch-all) |
Within equal criteria, the smallest fitting maximum weight is preferred; when tied, the Default flag decides.
- Calculate billing number:
- Format:
EKP (10) + procedure code (2) + participation (2)= 14 digits - Procedure code depends on product (e.g.
01for V01PAK,53for V53WPAK) - Return billing number:
EKP (10) + 07 (return) + participation (2), GoGreen return uses its own variant if configured
Setup Example
Simple Scenario (domestic only, no value added services)
| EKP | Product | Participation | Service Variant | Zone |
|---|---|---|---|---|
| 1234567890 | V01PAK | 01 | Standard | Domestic |
Result: Every domestic shipment without extras → billing number 12345678900101
Extended Scenario (Domestic + Bulky Goods + GoGreen)
This scenario covers a merchant who ships DHL Parcel domestically with three participation codes: one for standard shipments, one for shipments with bulky goods or insurance, and one for GoGreen shipments.
Profile: STANDARD_GRUPPENPROFIL
| EKP | Product | Participation | Service Variant | Zone | Description |
|---|---|---|---|---|---|
| 1234567890 | V01PAK | 01 | Standard | Domestic | Standard shipments |
| 1234567890 | V01PAK | 02 | With Services | Domestic | Bulky goods, COD, insurance etc. |
| 1234567890 | V01PAK | 04 | GoGreen | Domestic | GoGreen Plus |
| 1234567890 | V01PAK | 03 | With Services + GoGreen | Domestic | Bulky goods + GoGreen combined |
| 1234567890 | V53WPAK | 01 | Standard | EU | EU shipping |
| 1234567890 | V53WPAK | 01 | Standard | International | Worldwide |
With this configuration, the Contract Resolver automatically selects:
- → Domestic shipment without extras: 12345678900101
- → Domestic shipment with bulky goods: 12345678900102
- → Domestic shipment with GoGreen Plus: 12345678900104
- → Domestic shipment with bulky goods + GoGreen: 12345678900103
- → EU shipment: 12345678905301
Sandbox Data
In sandbox mode, the setup wizard automatically creates all four service variants with the official DHL test participation codes (01, 02, 03, 04). You do not need to extend the sandbox configuration manually.
Actions
| Action | Description |
|---|---|
| Contract Lines | Opens the contract lines for the selected profile |
| Set as Default | Marks the selected profile as the default |
Notes
Profile Name = User Group Profile
The Code of the profile must exactly match the name of the user group profile in the DHL business customer portal. This is passed to the DHL API as billingInformation.customerReference.billerUserGroupProfileName when creating labels.
Simplest Starting Point
For most merchants, one profile with one contract line per product and zone is sufficient. Service variants only need to be configured when you actually want to book value added services such as bulky goods or GoGreen Plus. The setup wizard creates Standard variants by default — extend as needed.
Migration from Version 1.0.0.0
In version 1.0.0.0, a static billing number was entered in the setup field. This field has been replaced by the profile system. After upgrading to 1.0.0.1, profiles and contract lines must be set up manually.