Skip to content

Documentation English

GitLabCI edited this page Oct 30, 2023 · 68 revisions

Post & DHL Shipping for Magento 2

The Post & DHL Shipping extension for Magento 2 enables merchants with shipping origin in Germany to fulfill shipments with DHL Parcel and Deutsche Post. Shipping labels can be booked and cancelled. Delivery progress can be followed using the built-in tracking feature. Return shipment labels can be created by the merchant or the customer.

Installation

The Post & DHL Shipping extension for Magento 2 consists of multiple packages. As an integrator, you acquire the Composer metapackage dhl/shipping-m2 from the Magento Marketplace which defines the composition of required packages. Proceed with the installation via Magento Extension Manager or follow the command line installation procedure.

It is advised to install the additional package netresearch/module-shipping-inventory if you experience issues with Magento Inventory (MSI) stock deductions when creating shipping labels.

Migration from DHL Shipping Version 1

When upgrading DHL Shipping to version 2, then most of the data is migrated automatically:

  • configuration settings
  • product attributes
  • order data

Nevertheless it is recommended to check the module configuration if everything is in place:

Stores → Configuration → Sales → Shipping Settings
Stores → Configuration → Sales → Post & DHL Shipping

Production Requirements

The extension communicates with several web services. The DHL Parcel Germany integration can be tested using the extension's sandbox mode.

The Deutsche Post Internetmarke web services do not offer sandbox access.

In order to use the DHL Parcel Germany features in production mode, a DHL Business Customer contract is required. An account with DHL Parcel Germany can be set up using the DHL registration form.

The following account data needs to be entered in the module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Account Settings
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany Returns → Account Settings
  • User name
  • Password (signature)
  • EKP (account number)
  • Participation numbers

en__account_settings

In order to use the Deutsche Post Internetmarke features, a "Portokasse" (prepaid wallet) postage account is required. An account can be set up using the Deutsche Post Portokasse registration form.

Stores → Configuration → Sales → Post & DHL Shipping → Deutsche Post Internetmarke → Account Settings

Once the Portokasse credentials are configured, import shipping products and available page formats in the Basic Setup group.

en__dpim_basic_settings

Scenarios

The following section describes common use-cases of shipping fulfillment. The individual chapters describe common requirements and how to achieve them.

How to check out with DHL Parcel Germany

Store configuration

The extension supports shipping from Germany only. It is essential to have the store configuration set up accordingly:

Stores → Configuration → General → General → Store-Information
  • Store Name
  • Store Contact Telephone
Stores → Configuration → Sales → Shipping Settings → Origin
  • Country (must be Germany)
  • Region / State
  • ZIP / Postal Code
  • City
  • Street Address

Note that all addresses must be valid. Data like "test street 123" will not work.

Rates configuration

In order to offer shipping with DHL to customers, at least one shipping method must be configured and linked to the extension. To configure a shipping method, navigate to the Shipping Methods section. The following example uses the built-in Flat Rate shipping method.

Navigate to the Flat Rate shipping method configuration:

Stores → Configuration → Sales → Shipping Methods → Flat Rate

The shipping cost is subject to your individual contract. Configure the rates according to the method's capabilities. This sets the shipping price which will be collected from the customer. Make sure the method itself (in this example Flat Rate) is not enabled.

en__flatrate_settings

Module configuration

Navigate to the DHL Parcel Germany shipping method configuration.

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany

Activate the extension in the section General Settings → Enabled.

In the Checkout Presentation group, select the offline shipping method to be used for rates calculation (in this example: Flat Rate).

en__paket_checkout_presentation

How to use Cash on Delivery

DHL Parcel Germany offers to collect payment on parcel delivery (Cash on Delivery / CoD). The collected amount will be transferred to the default bank account configured in the DHL Business Customer Portal.

Set up bank account

In the DHL Business Customer Portal, navigate to:

Parcel & goods → Ship → Settings → Cash on delivery

en__cod_bank_account

To assign incoming payments to orders, a Reason for Payment with placeholders can be set in the module configuration. This information will be visible on the bank account statement.

Stores → Configuration → Sales → Shipping Settings → Parcel Processing → Cash on Delivery Reason for Payment

en__cod_reason_for_payment

Note that the DHL Parcel Germany web service accepts a maximum of 70 characters here. Configure the placeholders so that the total length will not exceed that limit, otherwise parts of the Reason for Payment will be cut off.

Assign payment methods

In the module configuration, the desired payment method(s) must be linked to Cash on Delivery payments. If the customer places an order with one of these methods, a CoD indicator (black triangle) will be visible on the shipping label, and the courier will collect the payment from the recipient.

Stores → Configuration → Sales → Shipping Settings → Parcel Processing → Cash on Delivery Payment Methods

In the General Settings group, select your desired Cash on Delivery payment methods.

en__cod_payment_methods

The payment methods marked as Cash on Delivery will automatically be disabled in checkout if

  • CoD payment is not supported in the customer destination country, or
  • incompatible value-added services are selected (e.g. delivery to a neighbor).

Note that orders with CoD payment cannot be split into multiple partial shipments.

How to create a domestic shipping label

When the module configuration is completed, orders can be placed using the DHL shipping method.

en__orders_grid

In order to retrieve a shipping label, a shipment must be created in the admin panel.

Navigate to the New Shipment page, select the items to ship, and check the Create Shipping Label shipment option.

Sales → Orders → View → Ship

en__new_shipment

When clicking the Submit Shipment… button, the DHL packaging popup opens. This form allows to allocate the shipment's items to parcels and specify the parameters.

en__packaging_popup_domestic

Note that item allocation to different parcels will result in multiple shipping labels with no reference to each other. So-called multi-colli shipments are currently not supported by DHL Parcel Germany.

The DHL packaging popup is prefilled with default values from the catalog (product attributes) and store configuration. If everything is set up properly, the shipping label is just one click away: Review the package parameters and submit using the Create Shipping Label button.

For domestic shipments, the most important parameters are

  • item weight
  • shipping product
  • package tare weight
  • package dimensions (optional)

The item weight can be managed in the product catalog:

Catalog → Products → Edit → Weight

The shipping product default value can be set in the module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipment Defaults → Shipping Products

For domestic orders, the following products are available:

  • National Shipment (Paket National) for parcels up to 31.5 kg
  • Merchandise Shipment (Warenpost) for smaller/low weight goods
  • Deutsche Post Internetmarke products for smaller/low weight goods

The availability of Deutsche Post shipping products depends on the value-added services chosen for the order and vice versa.

Packaging weight and dimensions can be configured in the module configuration:

Stores → Configuration → Sales → Shipping Settings → Parcel Processing → Packages

If a shipment has already been created without booking a DHL shipping label, the packaging popup can be accessed again from the shipment details page:

Sales → Shipments → View → Shipping and Tracking Information → Create Shipping Label...
Sales → Orders → View → Shipments → View → Shipping and Tracking Information → Create Shipping Label...

How to create international shipping labels with customs declaration

Creating a cross-border (international) shipment is similar to domestic shipments. When a shipment requires a customs declaration, the DHL packaging popup displays additional form fields:

  • Item customs value
  • Tariff number (HS code)
  • Country of origin
  • Item export description
  • Package customs value
  • Package description
  • Terms of trade
  • Content type
  • Content description
  • Postal charges / fees
  • Place of committal
  • Permit number
  • Attestation number
  • Sender's customs reference
  • Addressee's customs reference
  • Electronic export notification (yes / no)

en__packaging_popup_customs

The additional parameters are prefilled with default values from the catalog (product attributes) and store configuration.

Catalog → Products → Edit → Item Description
Catalog → Products → Edit → HS Code
Catalog → Products → Edit → Country of Manufacture
Stores → Configuration → Sales → Post & DHL Shipping → General Configuration → Shipment Defaults
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipment Defaults
  • Customs values are derived from the catalog prices and tax configuration
  • Postal charges are taken from the order's shipping amount
  • Export description, HS code, and country of origin can be managed in the product catalog
  • The package description and customs value are derived from the contained items
  • The remaining parameters can be configured in the module configuration

The sender's Customs Reference Numbers can be configured per destination country, e.g. VOEC registration number for export to Norway, EORI number for EU countries.

en__shipmentdefaults_customsrefno

If customs duties and taxes were collected from the consumer during checkout, then select the PDDP service to announce that the sender handles import duties instead of the consignee.

How to print a logo on shipping labels

The DHL Business Customer Portal allows to manage address book entries for reuse.

en__dhl_sender_address_book_menu_item

A logo image can be uploaded to address book entries to be printed on the shipping label. In order to use one of the address book entries instead of the Magento shipping origin, set the entry's sender reference in the module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipment Defaults → Sender Address Book Reference

Note that this feature can only be used in production because the merchant address book cannot be accessed in sandbox mode.

How to access shipping labels

Shipping label PDFs can be accessed either individually per shipment or combined for multiple shipments (mass-action).

To access an individual shipment's labels, go to the shipment details page and click the Print Shipping Label button in the Shipping and Tracking Information section.

Sales → Shipments → View
Sales → Orders → View → Shipments → View

en__print_shipping_label

To access the shipping labels for multiple shipments at once:

  • navigate to either the order list or shipment list,
  • select the desired orders or shipments, and
  • execute the Print Shipping Labels mass action.
Sales → Shipments

en__shipments_grid_mass_print

Sales → Orders

en__orders_grid_mass_print

Please note that only shipping labels which are already stored in the shop system can be accessed.

How to e-mail shipping labels

In order to process shipping labels externally, they can be sent to an email address specified in the module configuration.

Stores → Configuration → Sales → Shipping Settings → Parcel Processing → Shipping Label Email

en__shipping_label_email

If the feature is enabled and a shipping label gets updated or added, then an email with the label attached is sent. This can be useful for e.g. email printing.

How to offer value-added services for recipients

DHL Parcel Germany offers value-added services to parcel recipients ("Wunschpaket"). The extension enables merchants to offer these services to the consumer via the module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipping Services in Checkout

The Parcel Announcement service transmits the customer's email address to DHL for delivery progress notifications. The Drop-off Location and Neighbor Delivery services allow customers to declare an alternate storage place for their delivery.

On the contrary, the No Neighbor Delivery option allows customers to instruct a discreet dispatch of sensitive contents by excluding an alternative delivery to the neighbor.

The Delivery Day service allows consumers to specify a day for their delivery. This service has extra costs which can be added to the consumer's order amount. If the additional charge is specified, it will be shown up as separate position in the order totals.

en__service_surcharge

Some international destinations allow delivery to the Closest Drop-Point: a locker or parcel shop close to the given shipping address.

Value-added services are only available for consumers in checkout. They cannot be booked with admin orders. When creating the shipping label, the consumer's selection can only be disabled completely. It is not possible to alter the selected value (i.e. select another Delivery Day).

How to offer pickup location deliveries for recipients

The extension enables consumers to choose a parcel pickup location for delivery. In checkout, an interactive map allows searching for locations where the parcel should be delivered to instead of the regular shipping address.

en__parcel_station_search

To offer pickup location delivery to consumers, configure a MapBox API token for OpenStreetMap and enable the service in module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → General Configuration → Location Finder Settings → MapBox API Token
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipping Services in Checkout → Offer Parcel Station Delivery

DHL Parcel Germany supports the following types of pickup locations for shipping label creation: DHL Packstation, DHL postal outlet (post office) and DHL Parcelshop.

Consumers must provide a Post number (DHL user account number) when Packstation delivery is selected. For DHL postal outlet (post office) and DHL Parcelshop deliveries, an email address is sufficient.

How to book additional services for merchants

Besides the value-added services for consumers (available during checkout), the extension allows merchants to book additional services for shipments:

  • Routing validation (print only if codeable)
  • Visual check of age
  • Return shipment
  • Priority Shipping
  • Postal delivery duty paid (PDDP)
  • Additional insurance
  • Bulky goods
  • Retail outlet routing

When creating a shipping label via the packaging popup, merchants can select which services to book with a shipment:

en__additional_services

To simplify recurring selection of services, default settings can be configured in module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipment Defaults → Print Only If Codeable
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipment Defaults → Additional Services

How to display selected additional services in confirmation emails

To display additional services chosen by the customer, add the following to your confirmation email template at the desired position:

{{layout handle="sales_email_shipping_services" order_id=$order.entity_id area="frontend"}}

How to track a shipment

The extension enables consumers and merchants to track delivery progress directly within the application. The tracking popup can be accessed through the following paths:

  • Admin panel users:
    Sales → Orders → View → Shipping & Handling Information Section → Track Order
    Sales → Orders → View → Shipments → View → Shipping and Tracking Information Section → Track this shipment
    Sales → Orders → View → Shipments → View → Shipping and Tracking Information Section → [Tracking Number]
    Sales → Shipments → View → Shipping and Tracking Information Section → Track this shipment
    Sales → Shipments → View → Shipping and Tracking Information Section → [Tracking Number]
    
  • Registered users in shop frontend:
    My Account → My Orders → Order Shipments → Track All Shipments
    My Account → My Orders → Order Shipments → Track this shipment
    My Account → My Orders → Order Shipments → [Tracking Number]
    
  • Guests in shop frontend:
    Orders and Returns → Order Shipments → Track All Shipments
    Orders and Returns → Order Shipments → Track this shipment
    Orders and Returns → Order Shipments → [Tracking Number]
    

If a tracking history is available, tracking events will be displayed in the popup. Otherwise (e.g. if the shipping label has been created but not yet been scanned/processed by DHL), an external link to the DHL Track & Trace portal will be shown.

How to batch process shipments

Creating each shipment individually can be time-consuming for merchants with a high shipment volume. To solve this problem, the extension allows to process shipments in a batch, either manually or fully automated.

Both variants require product attributes and module configuration defaults (additional services, customs settings, etc.) to be properly set. Shipments that require merchant interaction (e.g. because item weight is not configured in the catalog) cannot be mass-processed.

Please note the following configuration:

Stores → Configuration → Sales → Shipping Settings → Batch Processing → Shipping Label Automation

Mass action

To process a list of orders in a batch,

  • navigate to the order list,
  • select the orders to process,
  • and use the Create Shipments mass action.

en__orders_grid_mass_create

Interactive mass action

If configuring packaging or shipping product defaults for all orders alike is not applicable, then the interactive mass action offers an additional confirmation step to select these shipping settings per order.

To interactively process a list of orders in a batch

  • enable the feature in the module configuration,
    Stores → Configuration → Sales → Shipping Settings → Batch Processing → Shipping Label Automation → Enable Interactive Mass Action
    
  • navigate to the order list,
  • select the orders to process,
  • and use the Create Shipments mass action.

As opposed to the regular mass action, a form page loads that allows to adjust packaging and shipping product where necessary.

en__interactive_mass_action_form

On form submission, the batch process gets executed with the selected settings instead of the configured defaults.

Cron

To process all pending orders automatically with no interaction,

  • set up cron and
  • configure automated shipping label processing via
    Stores → Configuration → Sales → Shipping Settings → Batch Processing → Shipping Label Automation
    

When using cron for fully automated processing, it is highly recommended to keep an eye on shipment statuses to avoid accumulation of failed label requests.

How to cancel a shipment

Labels created via the DHL Parcel Germany web service are liable for costs as soon as they are manifested – no matter if they end up being used or not. The shipment manifestation happens automatically every day in the DHL Business Customer Portal.

As long as shipment orders are not manifested, they can be cancelled at no charge. To cancel a shipment's labels, go to the shipment details page and click the Cancel Labels button in the main actions toolbar:

Sales → Shipments → View
Sales → Orders → View → Shipments → View

If the cancellation of the shipment's tracking numbers did not entirely fail at the web service, then all DHL labels and tracks created for this shipment will be cancelled and removed. It is not possible to cancel individual labels of a multi-package shipment because Magento does not allow to recreate them individually.

Note that in the rare case of partial success (i.e. some of the shipment's tracking numbers could be cancelled but others could not) the labels and tracks will still be deleted from the system.

How to review order fulfillment status

The Magento order status does not reflect whether or not a shipping label was created for an order. To overcome this, the extension introduces a separate Label Status column to the order list. The possible statuses are:

  • Pending: Shipping labels for the order were either cancelled or not yet created.
  • Partial: Shipping labels were successfully created for some order items.
  • Processed: Shipping labels were successfully created for all order items.
  • Failed: Shipping labels were requested but not successfully created.

To display the label status column, enable it in the Columns grid action:

en__orders_grid_label_status_column

To search for particular statuses, select them in the Filters grid action:

en__orders_grid_label_status_filter

How to export shipment data

The extension collects various data for shipping fulfillment that is not part of the default Magento data schema:

  • Package options: parcel presets, customs values
  • Item options: additional product attributes, customs values
  • Service options: value-added services, incl. service charges

This data is collected from various sources during the order and fulfillment process:

  • user input in checkout
  • catalog data
  • user input in admin panel
  • module configuration

In order to enable third-party systems to fulfill shipments, the extension extends the schema of the Magento order.

Using the {{baseUrl}}/V1/orders/:id REST API call, the additional data relevant for shipping fulfillment can be found in the following fields:

  • extension_attributes.shipping_assignments.shipping.
    • address.extension_attributes.
      • nrshipping_street_name: The name part of the shipping street
      • nrshipping_street_number: The number part of the shipping street
      • nrshipping_street_supplement: Additional street address information
    • total.extension_attributes.
      • nrshipping_additional_fee: The net service charge amount in the store currency
      • nrshipping_additional_fee_incl_tax: The gross service charge amount in the store currency
      • base_nrshipping_additional_fee: The net service charge amount in the base currency
      • base_nrshipping_additional_fee_incl_tax: The gross service charge amount in the base currency
    • extension_attributes.
      • nrshipping_shipping_options.package: Properties describing the parcel, e.g. weight, dimensions, shipping product to use
      • nrshipping_shipping_options.services: Features and services to be booked with the shipment order, e.g. Cash on Delivery, Additional Insurance
  • extension_attributes.shipping_assignments.items[].
    • extension_attributes.
      • nrshipping_country_of_manufacture: The product's country of manufacture
      • nrshipping_hs_code: The product's HS code
      • nrshipping_export_description: The product's customs description
  • extension_attributes.item_applied_taxes[type=nrshipping_fee].applied_taxes[].
    • percent: tax percentage applied on service charges
    • amount: tax amount applied on service charges in the store currency
    • base_amount: tax amount applied on service charges in the base currency

How to offer return shipments

The extension enables merchants and consumers to create return shipment labels, either together with the regular shipping label or on demand.

To use the returns feature in production, the DHL Business Customer account contract must include the Returns feature as well as a billing number for the Returns shipping product.

Enclosed return label

A return shipment label can be requested together with the regular shipping label. This can be achieved per shipment in the packaging popup, or by default via the module configuration.

To book a return shipment label individually per shipment, select the Return Shipment service in the packaging popup.

en__enclosed_return_label_service_selection

To book a return shipment label by default with mass-processed shipments, select the Return Shipment service in the module configuration.

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → Shipment Defaults → Additional Services → Use Return Shipment Service: Yes

en__enclosed_return_label_default_setting

The return shipment label will be available as additional page in the label PDF and can be printed and enclosed in the parcel.

On-demand returns in the admin panel

A return shipment label can be created on demand by merchants after a shipment was created. This option integrates with the native RMA feature on Magento Commerce (formerly Enterprise Edition) but is also available on Magento Open Source (formerly Community Edition). The difference between both platforms is that Magento Commerce requires to authorize a return first, while on Magento Open Source, a return shipment label can be created anytime with no prior authorization. An on-demand return shipment label can be created with DHL Parcel Germany no matter which carrier delivered the original parcel.

To enable on-demand returns, configure the DHL Parcel Germany Returns account credentials:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany Returns

On Magento Commerce, refer to the Magento Commerce RMA user documentation for more information about the native RMA process.

On Magento Open Source, navigate to an order in the admin panel and click the Create Returns button in the main actions toolbar. Confirm the sender address and select the items to return, then submit the form.

The new shipment with its labels can be accessed in the Return Shipments tab on the order details page.

en__return_shipments_grid

On-demand returns in the storefront

On Magento Commerce, a return shipment label can be created on demand by consumers with the native RMA feature.

Stores → Configuration → Sales → Sales → RMA Settings → Enable RMA on Storefront: Yes

If the native RMA feature is not enabled on storefront – or not available on Magento Open Source – then the leaner custom workflow can be enabled in the module configuration:

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany Returns → General Settings → Enabled

This allows the consumer to create return shipment labels from the order details page in the customer account.

My Account → My Orders → View Order → Create Return Label
Orders and Returns → Submit Order Data →  Create Return Label

en__ondemand_return_button_guest

A form opens to review the sender address and select items to return. On form submission, a new page opens with the return shipment label PDF and (in case of domestic shipments) a QR-code image. The QR code image can be used to have the label printed by a courier or a drop-off location (e.g. post office) when handing over the return shipment.

en__ondemand_return_labels

If the customer registered an account, then they can access the documents again in the My Return Labels section.

en__ondemand_my_return_labels_section

In the admin panel, the return shipment documents can be accessed in the Return Shipments tab on the order details page.

Send Return Label Emails

Any return shipment documents, whether created in the admin panel or storefront, can be sent to the customer via email.

Labels for return deliveries are listed in the Return Shipments tab on the order details page in the admin panel. The grid features a Send Return Label action that sends the return shipment documents to the customer email address.

The default email template can be replaced by creating a custom template in Marketing → Email Templates. Give the template a unique name and configure it in the module configuration:

Stores → Configuration → Sales → Shipping Settings → Parcel Processing → Return Label Email Template

The email sender equals the identity configured in the Sales Emails configuration:

Stores → Configuration → Sales → Sales Emails → Shipment → Shipment Email Sender

Data privacy

Data transmission to DHL

The extension sends customer data to the DHL web services for shipping fulfillment:

  • In order to determine possible value-added services in checkout, the consumer's postal code is sent to the DHL Parcel Management API.
  • In order to create a shipping label, the consumer's shipping address is sent to the DHL Business Customer Shipping API.
  • If the Parcel Announcement service was chosen, the consumer's email address is sent to the DHL Business Customer Shipping API to notify the consumer about parcel delivery progress updates.
  • If the Pickup Location Delivery (Packstation or Postfiliale) service was chosen, the consumer's Postnumber is sent to the DHL Business Customer Shipping API to notify the consumer about parcel delivery.
  • If Postfiliale delivery service was chosen and no "Postnumber" was specified, the consumer's email address is sent to the DHL Business Customer Shipping API to notify the consumer about parcel delivery.
  • If the Neighbor Delivery service was chosen, the neighbor's address is sent to the DHL Business Customer Shipping API to have the courier deliver the parcel to an alternate location.
  • In order to book a return shipment label, the consumer's shipping address is sent to the DHL Returns API.

Storage in database

In addition to the Magento database schema, the extension stores consumer data in the following database tables:

  • nrshipping_recipient_street: The sales_order_address.street field, split into parts (street name, street number, address addition)
  • nrshipping_quote_address_shipping_option_selection and nrshipping_order_address_shipping_option_selection: value-added service details specified in checkout, e.g.
    • the consumer's "Postnumber" in case of pickup location delivery or
    • the neighbor's address in case of neighbor delivery.

Storage in log files

If logging has been enabled, the DHL log files in the Magento log directory may also contain the aforementioned data. Logging should be enabled for troubleshooting only, and the log files should be cleared regularly.

Cookies and Local Storage

The extension saves an entry named nrshipping_data_storage in the Local Storage of the browser. This is used to save the selected value-added DHL services (e.g. delivery day) during the checkout process. The extension explicitly does not set cookies in the browser.

Troubleshooting

The Label Status column in the orders grid indicates when a label creation failed. This section describes different ways to track down and fix error causes. In case of any questions not answered in this section, please have a look at the Support Portal (FAQ).

Review response messages

Error responses from the DHL web service are added to the order comments history.

en__error_message_comments_history

The accuracy of the message depends on the type of error. In cases where only a generic error message was added, the exact failure cause of an order with label status Failed can be obtained by processing that particular order individually:

  • When shipping an order manually via the packaging popup, the error message from the web service is immediately visible.

    en__error_message_packaging_popup

  • When shipping via the Create Shipments mass-action, the error cause(s) for the particular order is displayed above the orders listing.

    en__error_message_orders_grid

In rare cases, the communication to the DHL Parcel Germany web service times out after the shipping label has been created in the DHL Business Customer Portal. This is indicated by the following error message:

No response received from web service. If a label was created in the DHL Business Customer Portal, please cancel it and try again.

In this case, it is advised to log in to your DHL business customer account and, if a label was created for the respective order, cancel it there. Afterwards, book the label again in the admin panel to access the PDF file and tracking history from within the Magento instance.

Review log files

The extension can be configured to log web service communication. Navigate to the module configuration and enable logging.

Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → General Settings → Logging: Yes
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany → General Settings → Log Level
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany Returns → General Settings → Logging: Yes
Stores → Configuration → Sales → Post & DHL Shipping → DHL Parcel Germany Returns → General Settings → Log Level
Stores → Configuration → Sales → Post & DHL Shipping → Deutsche Post Internetmarke → General Settings → Logging: Yes
Stores → Configuration → Sales → Post & DHL Shipping → Deutsche Post Internetmarke → General Settings → Log Level

The Log Level setting allows to filter the messages by severity:

  • Errors: Requests that failed to create a label
  • Warnings: Errors + Requests that succeeded to create a label, but with issues solved at the web service
  • Info: Errors + Warnings + Requests that succeeded to create a label with no issues

Log files can be found in the Magento log directory:

  • var/log/dhl_paket.log
  • var/log/dhl_paket_returns.log
  • var/log/deutschepost_internetmarke.log

Resolving errors

Once the error cause is known, the input data can be corrected to successfully create a label. The relevant data sets for shipping label creation are:

  • Module configuration
  • Shipping address
  • Shipping options

In the module configuration, make sure the DHL Business Customer account data (user, password, EKP) are properly configured. Participation numbers must be set according to the account contract positions. The contract position billing number consists of EKP, Procedure and Participation. Example:

Billing Number EKP Procedure Participation
22222222220101 2222222222 01 (V01PAK) 01
22222222225302 2222222222 53 (V53WPAK) 02
22222222220703 2222222222 07 (V07PAK) 03

The consumer's shipping address can be edited in the order's Address Information section. Editing the address will trigger a mechanism to split the street into separate street name and house number fields. If that mechanism fails or does not lead to the desired result, the split address can be edited manually.

en__address_edit

The Print Only If Codeable option controls whether a shipping label should be booked even though address validation errors occur. If this option is enabled, any validation error will prevent the label from being created. If disabled, the DHL web service will attempt to correct minor mistakes in the address, if possible.

Shipping options (e.g. wrong weight or invalid service selections) can be corrected by shipping an order manually using the packaging popup.

Deutsche Post Direkt

DHL Parcel Germany can support German online retailers with maintaining the quality of address data in their system. Deutsche Post Direkt GmbH, a subsidiary of the Deutsche Post DHL Group, offers interesting additional services related to shipping fulfillment:

  • Datafactory AUTOCOMPLETE offers automatic completion of German billing and delivery addresses in the store front.
  • ADDRESSFACTORY analyzes and revises shipping addresses in the system.

Both services can be used optionally, individually or in combination. You can selectively install and use the corresponding modules individually or, if necessary, exclude them from the metapackage installation.

The metapackage dhl/shipping-m2 includes the modules PostDirekt_Autocomplete and PostDirekt_Addressfactory as supplementary modules for using the services of Deutsche Post Direkt.

The modules communicate with the corresponding Deutsche Post Direkt web services. To receive necessary access credentials, a contract must be concluded with the provider.

You can place an offer request here.

You can find detailed documentation about the Deutsche Post Direkt modules' configuration and usage here:

Uninstallation

Please see the file README.md for detailed uninstallation instructions.

Technical Support

In case of questions or problems, please have a look at the Support Portal (FAQ) first: https://dhl.support.netresearch.de

If the problem cannot be resolved, you can contact the support team via the Support Portal or by sending an email to dhl.support@netresearch.de