A native Frappe app that connects ERPNext to the DHL Express MyDHL API for live rate shopping, label and commercial-invoice generation, and real-time tracking straight from your Delivery Notes. Built to order, installed, and supported by ECOSIRE. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $249.00 USD; request a quote for a scoped proposal.
Illustrative previewA native Frappe app that connects ERPNext to the DHL Express MyDHL API for live rate shopping,
label and commercial-invoice generation, and real-time tracking straight from your Delivery Notes. Built to order, installed, and supported by ECOSIRE.
No DIY setup — a working app, built, installed and supported by ECOSIRE.
Start with a one-time build price. We scope it with you at kickoff.
ECOSIRE builds, configures and installs it on your ERPNext.
You go live in about 2–4 weeks, with a post-launch support window.
If you ship internationally with DHL Express, ERPNext leaves you doing the hardest part by hand. Stock ERPNext has a Shipment DocType and rudimentary parcel-service scaffolding, but no real DHL Express connectivity: no live rates at quote time, no label PDFs, no commercial invoice, no customs line data, and no tracking that flows back to the order. Teams end up re-keying every shipment into the MyDHL+ portal, copying tracking numbers into a Delivery Note comment, and reconciling freight cost after the fact. That double entry is slow, error-prone on HS codes and declared values, and it hides true landed shipping cost from your margins.
ECOSIRE builds a proper Frappe app — its own module with versioned migrations, not a pile of loose customizations — that wires ERPNext directly into the DHL Express MyDHL API. We add a DHL Express Settings DocType for OAuth/account credentials and per-Company account numbers (encrypted via Frappe's password fieldtype), plus a DHL Shipment DocType that links back to the source Delivery Note and Sales Order. Rate shopping is exposed through a whitelisted method (@frappe.whitelist()) and a client script button so users see live, all-in DHL rates on the Sales Order or Delivery Note before they commit. On submit, hooks.py doc events call the MyDHL shipment endpoint to book the pickup, return the label as PDF or ZPL for thermal printers, generate the paperless commercial invoice from your item and customs data, and write the AWB and piece IDs back onto the record.
Tracking is closed-loop. We register a DHL webhook (or a scheduler event polling the tracking endpoint on a cron interval for accounts without push) that updates a status field and appends events to the timeline, so support and finance see delivery milestones without leaving ERPNext. Multi-piece shipments are modeled as a child table with per-piece weight and dimensions; dutiable shipments carry HS code, country of origin, and declared value pulled from the Item and its customs fields so the customs invoice validates on the first try. Everything respects ERPNext permissions — we ship a role profile so warehouse users can rate and print while only authorized staff can void or refund a shipment, and every API call is logged for audit.
Because this is build-to-order, you are not downloading a generic marketplace plugin and hoping it fits. We start with a short scoping call, confirm your DHL account structure, incoterms, item/customs data model, and print workflow, then build against Frappe/ERPNext v15 (and v16 where you are already on it). Typical delivery is 2 to 4 weeks from confirmed scope. You get the installable source, a staging UAT, a documented go-live, and the git repository handed to you — no lock-in, no black box.
Runs international fulfillment on ERPNext and is tired of re-keying every parcel into MyDHL+. Needs live rates at order time, one-click labels, and tracking inside ERPNext so the warehouse stops copy-pasting AWB numbers.
Wants true landed freight cost captured on the Delivery Note and Sales Order for margin reporting, plus an audit trail of every DHL API call and a clean customs invoice that clears on the first attempt.
Needs a properly structured Frappe app — not loose customizations — that survives `bench migrate`, respects role permissions, and ships with source and docs so it can be maintained on v15/v16 in-house.
Prints dozens of labels a day and needs ZPL output on Zebra printers, multi-piece support with per-box dimensions, and a status field showing which shipments are booked, in transit, delivered, or in exception.
| Criterion | ECOSIRE | Custom Build | Competitor | ERPNext Native |
|---|---|---|---|---|
| Fit to your DHL workflow | Built to your accounts, incoterms, and print process from a scoping call | Fully bespoke but you own all analysis and risk | Generic feature set, fit whatever ships | No DHL Express connectivity at all |
| Live rates in ERPNext | All-in DHL rates on Sales Order / Delivery Note via whitelisted method | Possible, must be designed and built yourself | Sometimes, if the app exposes it | None — rates only in MyDHL+ portal |
| Labels & customs docs | PDF + ZPL labels and paperless commercial invoice from item data | Whatever you scope and implement | Usually PDF label; customs invoice varies | Manual entry in the DHL portal |
| Tracking back into ERPNext | Webhook push with scheduler-poll fallback onto the timeline | Build the ingestion and polling yourself | Often status field only, limited events | Copy-paste AWB into a comment |
| Source code & ownership | Full git repo handover, no lock-in | You own it entirely | Usually closed/licensed, no source | N/A |
| Version support & upgrades | Built for v15/v16 as a migratable Frappe app, supported on request | You maintain compatibility yourself | Depends on vendor's release cadence | Core release cycle only |
| Timeline | 2–4 weeks from confirmed scope | Weeks to months depending on team | Instant install, but integration/testing still on you | Available now, but no DHL features |
| Support model | Post-go-live window + optional retainer from the team that built it | Internal team or contractor dependent | Vendor tickets, generic priority | Community forums / your own admin |
No. This is a build-to-order product. ECOSIRE builds the DHL Express connector against your ERPNext version and DHL account structure, then installs and supports it. There is no instant download — every engagement starts with a scoping call to confirm your DHL accounts, incoterms, item/customs data, and print workflow.
Typical delivery is 2 to 4 weeks from confirmed scope. The exact timeline depends on how many DHL products/services you use, your customs data readiness, and any multi-company or multi-currency requirements. We give you a firm estimate after the scoping call and deliver on a staging bench for UAT before go-live.
We build for Frappe/ERPNext v15, and v16 where you are already running it. The app ships as a standard Frappe app with versioned patches, so it survives `bench update` and `bench migrate`. Tell us your exact version at scoping and we target it directly.
You need a DHL Express business account and access to the MyDHL API (the modern REST API that replaces the legacy XML-PI/SOAP services). We configure your API key/secret and account numbers per Company inside a `DHL Express Settings` DocType, with credentials stored using Frappe's encrypted password fieldtype. We build and test against DHL's sandbox first, then switch to production.
Where your DHL account supports push notifications, we register a webhook that lands on a whitelisted endpoint and updates the shipment status and document timeline in real time. For accounts without push, we run a Frappe scheduler event on a cron interval that polls the DHL tracking endpoint. Either way, milestones appear on the `DHL Shipment` and its linked `Delivery Note` without anyone leaving ERPNext.
Every build includes a post-go-live support window for bug fixes and configuration adjustments. Because you receive the full git repository and source, your team can also maintain and extend the app independently. Beyond the included window, ECOSIRE offers ongoing support and enhancement retainers — including updates when DHL revises the MyDHL API or when you upgrade ERPNext.
Yes. Multi-piece shipments use a child table with per-piece weight and dimensions mapped to the DHL pieces array. Dutiable shipments pull HS/tariff code, country of manufacture, and declared value from your `Item` customs fields to generate a paperless commercial invoice that validates before booking, reducing customs holds and rejected labels.

A build-to-order ERPNext app that lets 3PL operators bill each client for storage, handling, and value-added services with strict multi-owner inventory segregation and automated periodic invoicing. ECOSIRE builds, installs, and supports it for your warehouse.

A build-to-order ERPNext app that turns demand signals, supplier lead times and MOQs into an optimized, simulate-before-you-commit purchase order plan. ECOSIRE scopes, builds, installs and supports it on your bench.

A bin-level warehouse management layer for ERPNext that adds directed putaway, wave and zone picking, and FEFO/FIFO enforcement. ECOSIRE builds it to your operation's rules, installs it on your Frappe bench, and supports it after go-live.

A build-to-order Frappe app that scores every ERPNext order against your live carrier mix and recommends the optimal carrier and service by cost, transit time, lane reliability, and RTO risk. ECOSIRE designs, builds, installs, and supports it for your specific carriers and rules.
A native Frappe app that connects ERPNext to the DHL Express MyDHL API for live rate shopping, label and commercial-invoice generation, and real-time tracking straight from your Delivery Notes. Built to order, installed, and supported by ECOSIRE.