OdooWiki OCA HUB

Delivery DHL Parcel

delivery_dhl_parcel folder_open OCA/l10n-spain open_in_new
Stock License: AGPL-3

Este módulo integra la API de DHL Parcel con Odoo. No es válido para otras integraciones de DHL como el Express, que usan otras APIs.

IMPORTANTE: Hay varias APIs distintas para DHL España y DHL Parcel, esta API solo funciona para una de ellas. Para notificar y pedir las credenciales correctas a tu comercial de integración, se puede pasar el documento que hay en /doc para indicar exactamente cuál es la API que se quiere usar. El formato de las credenciales que se usan en esta es el siguiente:

Usuario: 11000000EMPRESA Pass: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Puede que se acepte algún otro formato, pero no ha sido posible verificarlo.

DISCLAIMER: This app is independently developed and is not affiliated with, endorsed by, verified by, certified by, or approved by DHL. DHL is a trademark of DHL International GmbH and is referenced only to describe compatibility with DHL services.

auto_awesome What this module does

AI-generated from the code · Odoo 19.0

Connect Odoo to the DHL Parcel shipping API so you can send parcels, print labels, track deliveries, hold or release shipments and close the day, all from the delivery method and the transfer screen.

This module adds DHL Parcel as a delivery carrier option in Odoo. On the delivery method form you get a "DHL Parcel Configuration" tab where you enter your DHL Parcel user, password, customer code, incoterms, product type (B2B or B2C), label format (PDF, ZPL or EPL) and optional services such as cash on delivery, pre 13:30 delivery and insured shipment.

When a transfer is validated, Odoo sends the shipment to DHL Parcel, stores the tracking reference and posts the label and shipping details in the transfer's chatter. From the transfer you can print the DHL Parcel label, hold a shipment so it is not processed, or release it again; the transfer shows whether the shipment is currently on hold.

Tracking updates pull the latest events from DHL Parcel and fill the tracking history and delivery status of the transfer. Shipments can also be cancelled.

A "End day" button on the delivery method opens a small wizard where you close the day for one, several or all customer accounts and save the resulting PDF report on the carrier.

Business rules: cash-on-delivery carriers are hidden from the website checkout, the declared cash-on-delivery amount comes from the linked sales order total, the insured value is computed from the sales order lines of the transfer, and the shipping weight is rounded and never below 1 kg. Delivery rates are not calculated by DHL Parcel, so another pricing method must be used.

Models and fields (4)
  • sale.order · extends an existing model
  • stock.picking · extends an existing modeldhl_parcel_shipment_held (DHL Parcel shipment on hold)
  • delivery.carrier · extends an existing modeldelivery_type, dhl_parcel_uid (DHL Parcel UID), dhl_parcel_product (DHL Product), dhl_parcel_incoterm (DHL Parcel incoterms), dhl_parcel_password (DHL Parcel Password), dhl_parcel_pre_1330 (Pre 13:30), dhl_parcel_insurance (Insured shipment), dhl_parcel_label_format (Label format), dhl_parcel_customer_code (DHL Parcel customer code), dhl_parcel_cash_on_delivery (Cash on delivery DHL), dhl_parcel_insurance_expenses (Insurance expenses), dhl_parcel_last_end_day_report (DHL Parcel last manual end day report), dhl_parcel_last_end_day_report_name (Filename)
  • dhl.parcel.endday.wizard · new modelcarrier_id (DHL Parcel Service), customer_accounts (Customer codes to end day for), all_customer_accounts (All customer accounts)

Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 6 confirmed, 3 with no information of 9 versions.

Sources · Odoo 17.0

Confirmed on 2026-11-03 in branch 17.0 of OCA/l10n-spain.

terminal Installation and usage

OCA documentation · Odoo 19.0

Depende de los módulos de OCA/delivery-carrier delivery_package_number y delivery_state.

La API de DHL Parcel no provee métodos de cálculo de precio, de modo que para poder calcular los costes de envío sería recomendable instalar el módulo delivery_price_method.

Para configurar el transportista:

  • Vaya a Inventario \> Configuración \> Entrega \> Método de envío y cree uno nuevo.
  • Escoja DHL Parcel Como proveedor.
  • Configure los datos de servicio que tiene contratados y el producto de envío que desea utilizar.

El código de cliente es el UID con un guión y sin letras al final i.e. UID = 08100000AB, tu Código de cliente sería 08-100000

Estas son las distintas operaciones posibles con este módulo:

Grabar servicios

> 1. Al confirmar el albarán, el servicio se grabará en DHL Parcel. > 2. Con la respuesta, se registrará en el chatter la referencia de > envío y las etiquetas correspondientes. > 3. Para gestionar los bultos del envío, se puede utilizar el campo de > número de bultos que añade delivery_package_number (ver el README > para mayor información) o bien el flujo nativo de Odoo con > paquetes de envío. El módulo mandará a la API de DHL Parcel el > número correspondiente y podremos descargar las etiquetas en PDF > con su correspondiente numeración.

Cancelar servicios

> 1. Al igual que en otros métodos de envío, en los albaranes de salida > podemos cancelar un servicio determinado mediante la acción > correspondiente en la pestaña de Información Adicional, sección > Información de entrega una vez el pedido esté confirmado y la > expedición generada. > 2. Podremos generar una nueva expedición una vez cancelado si fuese > necesario.

Obtener etiquetas

> 1. Si por error hubiésemos eliminado el adjunto de las etiquetas que > obtuvimos en la grabación del servicio, podemos obtenerlas de > nuevo pulsando en el botón "Etiqueta DHL Parcel" que tenemos en la > parte superior de la vista formulario del albarán.

Seguimiento de envíos

> 1. El módulo está integrado con delivery_state para poder recabar la > información de seguimiento de nuestros envíos directamente desde > la API de DHL Parcel. > 2. Para ello, vaya al albarán con un envío DHL Parcel ya grabado y en > la pestaña de Información adicional verá el botón Actualizar > seguimiento para pedir a la API que actualice el estado de este > envío en Odoo.

Cierre del día

> 1. Desde un smart button en el formulario del transportista, se puede > cerrar el día manualmente.

Depuración de errores

> 1. Es importante tener en cuenta que solo funcionará con códigos > postales de España (por lo menos para el consignatario). > 2. También puede activar Odoo con --log-level=debug para registrar > las peticiones y las respuestas en el log.

Contrareembolso

> 1. Al crear un envío con un método que tiene marcado el check de > contrareembolso, asumirá que hay un pedido vinculado al albarán y > usará el importe total del pedido como importe del > contrareembolso. Métodos de envío con este check no se encontrarán > disponibles en la web si se está usando.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.