DZBuild supports the major Algerian couriers. Once you link a courier in your dashboard, DZBuild can push new orders to the courier's API, return tracking numbers to your customer, and pull rates and stop-desk lists straight from the provider.
🎬 Video
Supported couriers
Courier | Slug | Notes |
| All 58 wilayas, large stop-desk network, mature API | |
37 courier tiles ( | There is no | |
| One merged tile. Paste either credential pair — DZBuild works out whether you are on the new platform or the legacy Procolis API | |
| Strong nationwide coverage, single-token API | |
| API Token + User GUID; tight Algeria coverage | |
Abex Express |
| Same Procolis API shape as legacy ZR Express, but its own Token + Key |
Zimou Express |
| Standalone courier API with Algeria-wide coverage |
Colivraison |
| Standalone courier API |
Ecom Delivery |
| Standalone courier API |
Elogistia |
| Single API Key field; one of only two families whose own PDF bordereau prints from the dashboard |
delivery type + addon | Customer pickup at courier offices; works with any linked provider |
The Yalidine API service also works with Yalitec, Guepex, and Easy & Speed — they share the same API shape and are exposed under their own slugs in the dashboard.
DHD and Conexlog are EcoTrack tenants, not separate integrations — they just live on their own hosts (platform.dhd-dz.com and app.conexlog-dz.com) instead of *.ecotrack.dz. See the EcoTrack page for the full 37-courier list.
Where to link a courier
Couriers are linked at /dashboard/link-shipping — in the sidebar, Paramètres de livraison → « Connecter un transporteur » (« ربط شركة التوصيل »). The page is a searchable grid of courier tiles. From there you can:
Link a courier: click Lier / ربط on its tile, fill the credentials, and save.
Manage an already-linked courier: the tile's button becomes Gérer / إدارة.
Set one linked courier as the store's default (Définir comme transporteur par défaut / تعيين كشركة افتراضية).
Pause a courier or Délier / إلغاء الربط it at any time without losing your existing orders.
Tile chips show link state, not a live credential check: green chips mean the courier is linked / default / active / paused. A red API expirée (« بيانات API منتهية ») pill only appears after repeated authentication failures over the last 30 days. To check credentials right now, open the tile and click Tester la connexion.
The separate page /dashboard/shipping (« Tarifs de livraison » / « أسعار الشحن ») is the per-wilaya shipping-price table. That is where you find:
The home price and the desk price for each of the 58 wilayas, plus the per-wilaya desk-delivery switch.
Sync rates from provider — pulls each wilaya's home + desk rates from the linked courier.
📝 Note
Shipping pages do not exist for digital-product stores (the digital theme redirects both pages to the dashboard). Team members need the shipping.view permission to open them and shipping.edit to change anything, and the store's subscription must be active.
If your business model needs per-product shipping prices (heavy items, size-based fees, free-shipping flags on specific SKUs), enable the Custom Product Shipping addon. It requires the Pro plan or higher (activating it on Free is refused with « هذه الإضافة تتطلب خطة pro »), is unavailable on the digital theme, and has its own page at /dashboard/addons/custom-shipping. It gives you a per-product flat rate or per-wilaya pricing, per-product free shipping, highest-price-wins for mixed carts, and a "copy from store rates" shortcut.
What gets synced from the courier
Data | Yalidine | EcoTrack | ZR Express | Maystro | Noest |
Wilayas list | ✅ | ✅ | ✅ | ✅ | ✅ |
Communes per wilaya | ✅ | ✅ | ✅ | ✅ | ✅ |
Home + desk rates | ✅ | ✅ | ✅ | ✅ | ✅ |
Stop desk list | ✅ | ✅ | New platform ✅ / legacy: no desk list | ✅ (pickup points) | ✅ |
No linked provider is excluded from rate syncing. Maystro prices per commune, so each wilaya is quoted from its centre commune; Noest returns one home price and one desk price per wilaya.
The legacy ZR Express (Procolis) platform publishes no desk list: a whole wilaya counts as desk-eligible whenever its Stopdesk price is above zero, the customer sees a generic commune-level "ZR Express agency" option, and ZR picks the actual pickup point on dispatch. The new ZR platform returns a real hub list.
Refreshing provider data
All of the above refreshes automatically overnight, once a day. To force it for one courier — the fix for "my new courier shows no desks or communes yet" — open the courier's tile at /dashboard/link-shipping and click Actualiser (« تحديث البيانات ») inside the modal. The button only appears for an already-linked courier and has a 5-minute cooldown per courier.
What happens when an order is sent to the courier
You confirm the order in
/dashboard/orders.In the send-to-delivery modal you pick which linked courier ships it, and DZBuild calls that courier's API with the customer's name, phone, address, item list and the COD amount.
The courier returns a tracking number, saved on the order.
The order moves to
processing— but only if it waspendingorconfirmed; a later status is left alone. DZBuild also stores the tracking number, the courier name, and the send timestamp.The order becomes
shippedon its own once the tracking sync sees a pickup or transit status, thendelivered(orreturned/cancelled).
The payload differs per courier family, and this is the part merchants most often get wrong:
What is sent | Yalidine family | EcoTrack family | ZR Express (legacy) | ZR Express (new) | Maystro | Noest |
COD amount |
|
|
|
|
|
|
Desk reference |
|
|
|
|
|
|
Weight | ✅ | ✅ | not sent | not sent | not sent |
|
Declared value | ✅ | — | — | — | — | — |
Yalidine is the only family that receives a declared value and a stopdesk_id, and the only one whose COD amount is the subtotal rather than the order total (Yalidine bills the delivery fee separately).
Printing labels
Print label fetches the courier's own PDF bordereau only for EcoTrack-family couriers and Elogistia (whose bordereau comes in three sizes — 15×20, 10×15 and 10×10 cm, with 10×15 as the default). For every other courier it prints DZBuild's own HTML bordereau. Yalidine, Maystro and Noest label URLs are captured and stored on the order, but no dashboard button opens them today — print those from the courier's own portal.
Tracking sync
DZBuild checks each linked courier automatically for the orders it has in flight and moves them along on its own: processing → shipped → delivered, or returned / cancelled. A status change on the courier's side usually shows up on your order within a few minutes. Returns and cancellations restore stock automatically.
Two things worth knowing:
A courier status DZBuild does not recognise leaves the order untouched.
A parcel the courier cannot find is never cancelled automatically — it is left as-is and re-checked next cycle. Only an explicit
cancelledstatus from the courier cancels an order.
Weight surcharge
Parcels heavier than 5 kg add a surcharge on top of the wilaya rate at checkout: 50 DA per extra kg, rising to 100 DA per extra kg for the 13 deep-south wilayas (Adrar, Béchar, Tamanrasset, El Bayadh, Illizi, Tindouf, Naâma, Timimoun, Bordj Badji Mokhtar, Béni Abbès, In Salah, In Guezzam, Djanet) when the courier is Yalidine, Yalitec or Guepex. Easy & Speed is deliberately excluded from the deep-south rate.
The surcharge is computed from your products' weights and is added to what the customer pays — it does not appear as a line in the shipping-rates table, so a wilaya priced at 600 DA can quote more than 600 DA for a heavy cart.
Linking flow (high level)
Open
/dashboard/link-shippingand search the tile grid for your courier.Click Lier / ربط on its tile.
Paste the credentials the courier issued you (token, ID, GUID — depends on the courier; see each per-courier page).
Click Tester la connexion (« اختبار الاتصال »).
Click Lier et enregistrer (« ربط وحفظ »). Optionally tick Définir comme transporteur par défaut.
Go to
/dashboard/shippingto sync per-wilaya rates from the provider or set them by hand.
Frequently asked
Q: Can I link more than one courier? A: Yes — link as many as you want, and flag one as the store's default. When you send an order (single or in bulk) you choose the courier from a dropdown in the send-to-delivery modal, and DZBuild ships it through that courier's API. Nothing has to be shipped manually. For desk orders, couriers with no desk in the customer's commune are greyed out in that dropdown and labelled « لا يوجد مكتب ».
Q: How do COD payouts work? A: COD is collected by the courier at delivery and settled to your bank/CCP on the courier's schedule (usually weekly). DZBuild does not handle the cash leg — see Cash on Delivery.
Q: My courier isn't on the list — can I still use DZBuild? A: Yes. Ship manually: confirm the order, hand the parcel to the courier, then mark the order shipped in /dashboard/orders. You won't get automatic tracking, but everything else works. Before assuming you need a custom integration, ask your courier whether they run on EcoTrack — 37 EcoTrack couriers already have their own tile, and the Custom EcoTrack tile covers any other EcoTrack tenant if you have its API URL.