Yalidine is one of the most-used national couriers in Algeria, with coverage in all 58 wilayas, a large stop-desk network, and a stable API. The same DZBuild integration also powers Yalitec, Guepex, and Easy & Speed, which share Yalidine's API structure under their own dashboards.
What you need
You only need two values from your Yalidine merchant dashboard:
API ID
API Token
Both are issued from your Yalidine account; if you don't see them, ask Yalidine to enable API access for your account. Yalidine API access usually requires a verified business account.
Linking Yalidine in DZBuild
Open
/dashboard/link-shippingin your dashboard and search "Yalidine" in the tile grid (or Yalitec / Guepex / Easy & Speed if that's your reseller).Click Lier / ربط on the tile.
Paste your API ID in the first field.
Paste your API Token in the second field.
Click Tester la connexion (« اختبار الاتصال »). The dashboard hits Yalidine live and shows a green check if the credentials are valid.
Click Lier et enregistrer (« ربط وحفظ »). Tick Définir comme transporteur par défaut if Yalidine should be the store's default.
Rates live on the separate page /dashboard/shipping. From there you can:
Sync rates from provider — pulls Yalidine's home + desk fees per wilaya.
Override any wilaya's rate manually if you want to absorb part of the shipping or charge a markup.
⚠️ Warning — Set your store's wilaya first
Rate syncing for the Yalidine family (Yalidine, Yalitec, Guepex, Easy & Speed) needs your store's own wilaya. If it isn't set in your store settings, the sync fails with « يرجى تحديد ولاية المتجر من إعدادات المتجر قبل مزامنة الأسعار. ». The same wilaya is sent as from_wilaya_name on every parcel, and defaults to Alger when unset.
Express vs Économique (Guepex only)
The credential modal shows a delivery-tier selector — Express or Économique — for Guepex only. Yalidine, Yalitec and Easy & Speed always ship Express, because their API rejects the economic parameter outright.
The tier you pick is used both for the rate quoted at checkout and for the parcel you send, so switching it changes what your customer is charged.
What gets synced
Full list of wilayas and communes. Commune names are taken primarily from the synced provider commune list (Yalidine's own spelling), with DZBuild's own built-in commune list as a fallback. A commune that doesn't belong to the wilaya on the order makes the send fail (« البلدية المحددة لا تنتمي إلى الولاية المختارة ») rather than being auto-corrected.
Per-wilaya home delivery rate.
Per-wilaya stop-desk rate.
The list of stop-desks in each wilaya, used by the stop-desk picker.
Product dimensions
The product form shows length / width / height fields only when a Yalidine-family courier is linked — no other family accepts dimensions. If you leave them empty, the parcel goes out as 10 × 10 × 10 cm and 0.5 kg.
What happens when an order ships
When you confirm an order in /dashboard/orders and the store's provider is Yalidine, DZBuild creates the parcel in Yalidine with:
Customer first name, family name, phone (auto-formatted to the local
0Xshape). Only one phone number reaches Yalidine — a second customer phone is stored on the DZBuild order but not forwarded.Address, destination wilaya, destination commune (resolved to the French name).
Origin wilaya (your store's wilaya — used as
from_wilaya_name).Product list summary.
COD amount (
price= subtotal, the customer pays this on delivery).Declared value, length, width, height, weight.
is_stopdeskflag, plus a validstopdesk_idwhen desk delivery is selected.freeshipping,do_insurance, and exchange flags when applicable.
Yalidine returns:
A tracking number (saved on the order).
A label URL (PDF), captured and stored on the order.
📝 Note — Printing the Yalidine label
No button in the DZBuild dashboard opens Yalidine's label URL. Clicking Print label on a Yalidine order prints DZBuild's own HTML bordereau — print Yalidine's official label from the Yalidine portal.
The order moves to processing on send (and only if it was pending or confirmed), and the customer sees the tracking on their order page. It becomes shipped when the automatic tracking sync sees a Yalidine transit status such as « Ramassé », « Expédié » or « En cours de livraison », then delivered (or returned / cancelled).
Product list truncation
Long multi-item orders get their product list shortened to fit Yalidine's 150-character limit. DZBuild degrades in steps: the full a | b | c list, then the same list with variant suffixes in parentheses stripped, then the first few items plus +N, and finally a summary like x8 ORD-12345. The Custom Delivery Label addon (Pro) lets you control what is written there.
Stop desk with Yalidine
Yalidine has the largest stop-desk network in Algeria. When the customer chooses desk delivery at checkout:
The Stop Desk addon shows desks for the selected wilaya with name, address and phone.
The order stores DZBuild's own
desk_id/desk_name. Yalidine'sstopdesk_idis resolved at send time: the desk the customer picked, else any desk in their commune, else any desk in the wilaya. The commune sent with the parcel is then forced to the desk's own commune, so the id and the commune always agree.The send is refused — never downgraded to home delivery — only when the whole wilaya has no Yalidine desk. DZBuild can refuse it even before contacting Yalidine, using the desk data it has already synced.
Common errors and fixes
Message | Cause | Fix |
| Malformed API ID or API Token | Re-copy both values from Yalidine's dashboard. The two fields are easy to swap. |
| Credentials rejected by Yalidine | Same fix — and confirm the account still has API access. |
| Account exists but API is not enabled | Contact Yalidine to enable API access on your account. |
| Too many requests in a short window | Wait a minute and retry; Yalidine rate-limits aggressive callers. |
| The whole wilaya has no Yalidine desk | Refresh provider data from the tile, or switch the order to home delivery. |
| Commune / wilaya mismatch on the order | Fix the commune on the order, then re-send. |
Order created but no tracking returned | Address or commune not recognized | Check the commune spelling on the order, then re-send. |
Tips
Yalidine expects communes in French. DZBuild matches against Yalidine's own synced commune list first and falls back to its built-in commune list, but uncommon spellings can still fail — keep your store's commune list clean, and click Actualiser on the Yalidine tile if the synced list looks stale.
The
pricesent to Yalidine is the subtotal (product price), not the order total with shipping. This is what the courier collects on COD.If you also have a Yalitec / Guepex / Easy & Speed account, link it under its own slug — the API shape is the same but credentials are not interchangeable.