AstroBaaS

Orders & fulfilment

DHL Connector

Paid pluginsize Mplanned, not built

Indicative price, not an offer: €24/mo; credential: we manage your DHL account, rate negotiation

Generated from docs/plan/paid/dhl-connector/PLAN.md in the AstroBaaS repository. Nothing described below is implemented — it is the written plan for it.

A paid carrier plugin providing real-time DHL Europe shipping rates and label generation, integrated into the carrier-integrations module.

The problem

Merchants using DHL Europe need live rates for zones and labeling; without this, they use manual quoting.

What it does

  • Register DHL API credentials
  • Query live rates for DHL zones in Europe
  • Generate shipping labels (PDF/ZPL)
  • Track shipments via DHL API
  • Cache rates by route/weight for 24h
  • Support multiple DHL accounts
  • Error handling: fallback to shipping-rules-engine if unavailable
  • Audit all rate queries, label generations, tracking lookups

What it deliberately does NOT do

Each boundary carries its reason. A boundary without a reason gets crossed by the next person who reads this.

  • DHL parcel pickup scheduling (optional upsell) — not included. Reason: requires carrier SLA.
  • DHL commercial invoices for customs (separate feature) — not included. Reason: per-country compliance.

Data model

Handled by carrier-integrations module; DHL plugin adds CarrierAccount entry with carrierId=‘dhl’.

API

  • POST /api/carriers/dhl/accounts
  • POST /api/carriers/dhl/quote
  • POST /api/carriers/dhl/label

Every route added here must also appear in src/pages/openapi.json.ts — a test fails the build if it does not.

Admin

Via carrier-integrations admin UI; DHL-specific: account number, service tier.

The seam — why this is paid

Core owns: shipping interface. Paid owns: DHL API key, credential management, rate caching, label storage.

Credential: DHL API key management, carrier relationship support

Dependencies

  • carrier-integrations (parent module)

Acceptance checks

Each of these must be able to fail. Before claiming this is done, break the code deliberately and watch each one go red.

  • Rate query for EU destination returns correct DHL zone rate
  • Label generated with valid barcode
  • Webhook tracking supported

Risks

Rate staleness; API downtime; mitigation: same as UPS.

Commercial context

Suggested price€24/mo; credential: we manage your DHL account, rate negotiation
Rival anchorShopify: €10-20/mo (Oberlo); Magento: ~€25/extension

The anchor is what the nearest equivalent charges on Shopify or Magento today. It is context for a pricing decision, not the decision.


Generated from the commerce plan. See docs/COMMERCE-PLAN.md for the full catalogue and ../../AI-GUIDE.md for how to work on this repository.