Intégrer les sociétés de livraison algériennes à votre boutique : la liste de contrôle
Connecter ZR Express, Maystro ou toute société de livraison algérienne, ce n'est pas qu'un appel d'API. Correspondance des statuts, création d'expédition sans doublon, données par wilaya et rapprochement du paiement à la livraison.
Dernière mise à jour : septembre 2026. Les API des sociétés de livraison évoluent : référez-vous à leur documentation à jour pour les points d'accès et les champs.
En Algérie, la plupart des commandes en ligne finissent chez un livreur, et très souvent en paiement à la livraison. L'intégration de la livraison fait donc partie de votre système de paiement. J'ai intégré ZR Express et Maystro dans des boutiques en production ; voici la liste de contrôle que je donnerais à quiconque fait la même chose, quelle que soit la société de livraison.
1. Une seule interface pour toutes les sociétés de livraison
Chaque société a son API, ses noms de statuts et ses particularités. Votre code de commande ne doit pas savoir à laquelle il parle :
interface Courier {
createShipment(order: Order): Promise<{ trackingNumber: string }>
getStatus(trackingNumber: string): Promise<CourierStatus>
cancelShipment(trackingNumber: string): Promise<void>
}
Ajouter une société de livraison revient alors à écrire une classe, sans toucher au tunnel de commande, à l'administration ni à la page de suivi du client.
2. Traduire leurs statuts dans les vôtres
Gardez votre propre petit ensemble d'états — par exemple created, picked_up, in_transit, out_for_delivery, delivered, failed_attempt, returning, returned, cancelled — et faites correspondre chaque statut du livreur à l'un d'eux. Conservez aussi le statut brut. Quand un statut inconnu apparaît, journalisez-le et alertez au lieu de planter, et laissez la commande dans son dernier état connu.
3. Créer les expéditions sans doublon
Le moment critique est l'appel qui crée l'expédition. S'il expire, a-t-il fonctionné ?
- Enregistrez la ligne d'expédition avant d'appeler le livreur, avec une clé unique par commande.
- Si l'API accepte votre propre référence, envoyez cette clé pour qu'une nouvelle tentative ne crée pas un second colis.
- En cas d'expiration, vérifiez si l'expédition existe avant de réessayer.
- Faites l'appel dans un job en file d'attente, avec reprises, pas pendant la requête du client.
4. La géographie, ce sont des données
Tarifs, disponibilité (domicile ou point relais) et délais varient selon la wilaya, souvent selon la commune, et d'un livreur à l'autre. Stockez-les comme des données modifiables, pas comme des constantes, et affichez le prix au client avant la confirmation.
5. Suivre sans harceler
Utilisez les webhooks du livreur quand ils existent ; sinon, interrogez les expéditions ouvertes à intervalles réguliers, de moins en moins souvent avec l'âge du colis. Arrêtez dès qu'un état final est atteint, et respectez les limites de débit.
6. Rapprocher le paiement à la livraison à part
« Livré » ne veut pas dire « encaissé ». Le livreur collecte l'argent, puis vous le reverse plus tard, moins ses frais. Suivez trois choses par commande :
- le montant à encaisser,
- si le livreur le déclare encaissé,
- dans quel reversement il a été inclus.
Un rapport hebdomadaire « livré mais pas encore reversé » et « reversé mais montant différent » attrape la plupart des problèmes tant qu'ils sont petits.
7. Les retours sont un parcours, pas une exception
Les tentatives échouées et les retours sont normaux avec le paiement à la livraison. Décidez à l'avance ce qu'il advient du stock, du statut de la commande et de la possibilité pour le client de recommander, et permettez à l'administrateur de confirmer la réception du colis retourné.
8. Montrer au client ce que sait le livreur
Une chronologie de suivi sur la page de commande, en arabe et en français, évite une grande partie des messages « où est ma commande ? » et prévient le client de l'appel du livreur.
Je construis des boutiques et des intégrations de livraison pour le marché algérien : voir la création de site e-commerce en Algérie et le guide pour accepter le paiement en ligne en Algérie.
Vous avez un projet similaire ?
Expliquez-moi où vous en êtes et ce qui vous bloque. Réponse rapide sur WhatsApp, devis gratuit.