Skip to main content
DHL Express Shipping Connector for Odoo — Build-to-order Odoo module connecting DHL Express for live rates, PDF/ZPL labels, t — 1/1Illustrative preview

Build-to-order Odoo module connecting DHL Express for live rates,

PDF/ZPL labels, tracking and pickup booking on your delivery orders.

What is DHL Express Shipping Connector for Odoo?

Build-to-order Odoo module connecting DHL Express for live rates, PDF/ZPL labels, tracking and pickup booking on your delivery orders. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Live DHL Express rate quotes via MyDHL API, shown directly on sale orders and delivery orders with transit time and product-code options (e.g. Express Worldwide, Economy Select)
Automatic air waybill and shipment label generation as Odoo attachments — PDF for laser printers and ZPL for Zebra thermal label printers, printed straight from the delivery order
Real-time shipment tracking: a scheduled cron / automated action polls DHL and posts status milestones (picked up, in transit, cleared customs, delivered) into the stock.picking chatter
Multi-piece and multi-package shipment support — split one delivery order into multiple parcels, each with its own dimensions, weight and piece/tracking ID stored on a dhl.express.shipment line
Pickup scheduling: book, amend or cancel a DHL courier pickup from Odoo, with confirmation number written back to the picking
Automated customs paperwork — commercial invoice and packing list rendered via QWeb with HS/commodity codes, incoterms, dutiable value and country of origin per line
Billable-weight computation with @api.depends compute fields (greater of actual vs dimensional weight) so quoted and charged costs match DHL's real basis
Secure credential vault: DHL API key, secret and account number(s) stored on res.company / res.config.settings, never hardcoded, with per-company multi-account support
Shipment cancellation / void support that calls DHL to cancel a waybill and reverses the linked landed cost in Odoo
Rate caching and error handling with retry/back-off so DHL API rate limits and timeouts never block a warehouse from printing a label
Proprietary product-code and service-option mapping (insurance/shipment value protection, signature on delivery, Saturday delivery where offered) selectable per shipment
XML-RPC / JSON-RPC exposure so an external storefront, marketplace connector or middleware can request rates and create DHL shipments headlessly
Landed-cost integration writing the DHL charge back onto the delivery so shipping cost is visible in margin and profitability reports
Full audit trail — every rate request and API response logged to a restricted model for troubleshooting and dispute resolution
Sandbox-first configuration with a one-toggle switch from DHL test to production credentials in res.config.settings

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your Odoo.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

Odoo Compatibility
Odoo 17, Odoo 18, Odoo 19
Editions
Enterprise & Community
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
PostgreSQL 12+

About this Product

This is a build-to-order Odoo module engineered, installed and supported by ECOSIRE — not an instant apps.odoo.com download. After purchase, our Odoo engineers build the DHL Express Shipping Connector against your database, your DHL Express account and your fulfillment workflow, then deploy it on Odoo 17, 18 or 19 (Community or Enterprise). Typical delivery is one working week from confirmed scope and access.

The connector turns Odoo's native Inventory and Delivery flow into a full DHL Express control panel. It plugs into MyDHL API (DHL Express's official REST API) to pull live rates onto sale orders and delivery orders, generate compliant air waybills and labels, push customs paperwork, and stream tracking events straight back into the stock.picking chatter — so warehouse and customer-service teams never leave Odoo to ship internationally.

Under the hood we implement a proper Odoo delivery carrier: a new delivery.carrier provider (dhl_express) with its own rate, send, tracking and cancel methods, secure credential storage on res.company / res.config.settings, and a dhl.express.shipment model (models.Model) that stores the waybill number, piece IDs, label documents and status. Computed fields with @api.depends keep landed cost, billable weight (the greater of actual vs dimensional weight) and totals in sync. Access is locked down through ir.model.access.csv plus record rules so only shipping and inventory roles can create shipments or view rate logs. Labels are produced as attachments (PDF for laser and ZPL for Zebra thermal printers), and QWeb is used for the packing list and commercial invoice layouts. Automated actions and scheduled crons poll DHL for tracking updates and post them to the picking. Everything is exposed over Odoo's XML-RPC/JSON-RPC API too, so headless storefronts or a middleware layer can request rates and book shipments programmatically.

ECOSIRE handles the DHL onboarding gotchas that break most DIY builds: MyDHL API credential provisioning and account-number mapping, product/piece dimensional-weight rules, dutiable vs non-dutiable shipment logic, ISO country and currency mapping, HS/commodity codes on the commercial invoice, sandbox-to-production cutover, and rate-limit/retry handling. You receive clean, upgrade-safe code in your own repository, full documentation, a hand-over training session, and a warranty support window.

What you get

  • Custom Odoo module source code (the dhl_express addon) delivered to your Git repository, structured with __manifest__.py, models, views, security and QWeb reports — upgrade-safe and yours to keep
  • Full installation and deployment on your Odoo 17, 18 or 19 environment (Community or Enterprise), including sandbox and production configuration
  • DHL Express account integration setup: MyDHL API credentials wired in, account-number mapping, service/product-code and dutiable-shipment rules configured to your business
  • ir.model.access.csv access rights and record rules configured for your shipping, inventory and customer-service roles
  • Written documentation: an admin configuration guide, a warehouse operator how-to (rate → label → pickup → track), and technical notes for your in-house developers
  • A live hand-over and training session for warehouse and customer-service staff, plus a recording
  • Post-launch support window (warranty period) covering bug fixes, DHL API-change adjustments and questions
  • Test evidence: end-to-end validation in the DHL sandbox (rate, label, tracking, cancel) and sign-off checklist before go-live

Who this is for

International E-commerce Fulfillment Manager

Runs Odoo-based order fulfillment shipping cross-border daily and needs DHL Express as a primary carrier — wants live rates at checkout and on delivery orders, one-click labels and automatic tracking so the warehouse never re-keys data into MyDHL.

B2B Operations / Warehouse Lead

Manages picking, packing and dispatch of multi-piece B2B shipments with customs paperwork. Needs dimensional-weight-correct quotes, commercial invoices, pickup booking and a clean audit trail — all inside Odoo, without a second shipping portal.

Odoo Administrator / IT Manager

Owns the Odoo instance and cares about clean, upgrade-safe code, proper security (record rules, credential storage), multi-company DHL accounts and an XML-RPC/JSON-RPC surface for the storefront — not a black-box app that breaks on the next Odoo upgrade.

How DHL Express Shipping Connector for Odoo Compares

CriterionECOSIRECustom BuildCompetitorOdoo Native
DHL Express (MyDHL API) live rates on ordersBuilt in, on sale + delivery ordersPossible but you build the API layerSometimes; often generic or partialNot available — no DHL Express provider
PDF + ZPL thermal label generationBoth, printed from OdooMust implement label handling yourselfVaries; ZPL often missingNo carrier label output
Multi-piece shipments + customs (commercial invoice)Full multi-piece + QWeb customs docsSignificant custom workOften single-piece or limited customsNot supported
Real-time tracking synced into stock.pickingAutomated cron posts milestones to chatterYou build polling + postingSometimes, quality variesManual — no carrier tracking sync
Pickup scheduling from OdooBook/amend/cancel with confirmationExtra build effortRarely includedNot available
Fitted to your accounts, workflow & Odoo versionBuilt to spec for v17/18/19, your DHL accountsYes, but on your time and costGeneric; you adapt to itN/A
Security: record rules + credential vaultir.model.access.csv, record rules, secured credsDepends on your implementationInconsistentN/A
Support window + source ownershipWarranty support + full source in your repoYou maintain everythingVendor-dependent; upgrade lag riskCore support only, no DHL feature

Frequently Asked Questions about DHL Express Shipping Connector

How long does delivery take and is this an instant download?

No — this is a build-to-order module, not an instant apps.odoo.com download. After purchase, ECOSIRE's engineers build the connector against your database, DHL Express account and workflow, then install it. Typical lead time is one working week depending on scope (number of DHL accounts, customs complexity, multi-company). You'll get a scoped timeline at kickoff and progress checkpoints along the way.

What support and updates do I get after go-live?

Every build includes a post-launch support window (warranty period) covering bug fixes, questions and adjustments if DHL changes the MyDHL API. Because you receive the full source in your own repository, your team can extend it too. We also offer optional extended support and maintenance retainers, and we test the module against your target Odoo version before handover.

Which Odoo versions and editions does it support?

Odoo 17, 18 and 19, on both Community and Enterprise. We implement a standard delivery.carrier provider and use only supported APIs (models/ORM, ir.model.access.csv, record rules, QWeb, automated actions), so the module stays upgrade-friendly. Tell us your exact version and edition at kickoff and we'll target it precisely.

Do I need my own DHL Express account and API credentials?

Yes. You need an active DHL Express business account and MyDHL API access (API key/secret and account number). ECOSIRE helps you provision and wire in the credentials, map your account numbers, and switch from the DHL sandbox to production — but the DHL contract and negotiated rates remain yours.

Can it handle customs paperwork and multi-piece international shipments?

Yes. The connector supports multi-piece/multi-package shipments (each parcel with its own dimensions, weight and tracking ID) and generates the commercial invoice and packing list via QWeb, with HS/commodity codes, incoterms, dutiable value and country of origin. Billable weight is computed as the greater of actual vs dimensional weight so your quotes match what DHL charges.

Can external systems request rates or create shipments programmatically?

Yes. All functionality is available over Odoo's XML-RPC/JSON-RPC API, so a headless storefront, marketplace connector or middleware layer can request live DHL rates and book shipments without a user in the Odoo UI. We can scope specific integration endpoints for your stack during the build.

How is it different from just building it myself or using a free carrier module?

A DIY build means you own the entire DHL API surface — dimensional weight, dutiable logic, customs fields, rate limits, sandbox cutover and every future API change. A generic off-the-shelf module rarely maps to your exact accounts and customs rules and often lags Odoo/DHL updates. ECOSIRE ships production-tested, secured, documented code fitted to your workflow, plus a support window — without the black-box risk.

Request a quote

DHL Express Shipping Connector

Build-to-order Odoo module connecting DHL Express for live rates, PDF/ZPL labels, tracking and pickup booking on your delivery orders.

  • Live DHL Express rate quotes via MyDHL API, shown directly on sale orders and delivery orders with transit time and product-code options (e.g. Express Worldwide, Economy Select)
  • Automatic air waybill and shipment label generation as Odoo attachments — PDF for laser printers and ZPL for Zebra thermal label printers, printed straight from the delivery order
  • Real-time shipment tracking: a scheduled cron / automated action polls DHL and posts status milestones (picked up, in transit, cleared customs, delivered) into the stock.picking chatter
  • Multi-piece and multi-package shipment support — split one delivery order into multiple parcels, each with its own dimensions, weight and piece/tracking ID stored on a dhl.express.shipment line

Request a Quotation

Tell us about your DHL Express Shipping Connector requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.