Skip to main content
AccueilBlogGuidesComment intégrer une API de suivi des expéditions à votre boutique e-commerce

Comment intégrer une API de suivi des expéditions à votre boutique e-commerce

17TRACK

Pour intégrer une API de suivi des expéditions à votre boutique e-commerce, connectez votre système de commandes au fournisseur de suivi, envoyez les données d'expédition et du transporteur via une requête sécurisée côté serveur, enregistrez les événements de suivi normalisés et affichez le statut obtenu dans les interfaces destinées aux clients et au support. Une mise en œuvre fiable ne consiste pas simplement à ajouter un champ de numéro de suivi : elle doit gérer la sélection du transporteur, les mises à jour de statut, les incidents de livraison, les nouvelles tentatives, la confidentialité et la manière dont les clients utilisent réellement les informations après l'achat.

Comment intégrer une API de suivi des expéditions à votre E

Ce guide présente une approche pratique de l'intégration destinée aux propriétaires de boutiques, aux développeurs et aux équipes opérationnelles. Il s'appuie sur la documentation officielle de l'API de suivi de 17TRACK comme référence, mais les mêmes principes de planification s'appliquent lors de l'évaluation d'un autre fournisseur multi-transporteurs.

Déterminez ce que l'intégration doit accomplir

Commencez par le résultat commercial plutôt que par le point de terminaison de l'API. La plupart des boutiques souhaitent réduire les demandes du type « Où est ma commande ? », offrir aux acheteurs une vue claire de la livraison et aider les équipes opérationnelles à repérer les expéditions retardées avant qu'un client ne se plaigne. Ces objectifs nécessitent des données et des flux de travail différents.

  • Visibilité pour le client : afficher le statut actuel de l'expédition, les informations de livraison estimée lorsqu'elles sont disponibles, les détails du transporteur et le dernier événement significatif.
  • Visibilité opérationnelle : permettre au personnel de trouver les expéditions retardées, bloquées, retournées ou faisant l'objet d'un incident, quel que soit le transporteur.
  • Communication automatisée : déclencher des notifications approuvées par e-mail, SMS ou tout autre moyen lorsqu'une expédition atteint un état défini.
  • Cohérence des données : convertir les différents libellés d'événements des transporteurs en un ensemble plus restreint de statuts que votre boutique peut utiliser de manière fiable.

Définissez ces résultats avant de choisir une méthode d'implémentation. Une API de suivi peut fournir les données d'expédition, mais elle ne décide pas automatiquement quels événements justifient une notification client ni comment votre boutique doit gérer un problème d'adresse.

Choisissez la bonne architecture d'intégration

Une architecture classique comporte quatre couches : la plateforme e-commerce, un service d'intégration, le fournisseur de suivi et l'expérience destinée aux clients. Le service d'intégration peut être une application backend, un système de gestion des commandes ou un workflow serverless. Il est généralement plus sûr de conserver cette logique sur le serveur plutôt que de placer les identifiants de l'API dans le code du navigateur.

Le flux de base se présente comme suit :

  1. Une commande payée est traitée et reçoit un numéro de suivi ainsi qu'un transporteur.
  2. Votre backend envoie les détails de l'expédition au fournisseur de suivi.
  3. Le fournisseur renvoie un identifiant de suivi ou des données de suivi conformément à la conception de son API.
  4. Votre système enregistre la référence du fournisseur et associe les événements d'expédition à des statuts internes.
  5. Un processus de mise à jour planifié ou une notification d'événement prise en charge actualise l'expédition.
  6. Votre boutique, la page de commande, les outils de support et le service de notification lisent leurs données normalisées.

Ne faites pas appeler le transporteur ou l'API de suivi à chaque affichage de page. Cette conception peut entraîner une expérience client lente, des requêtes en double, des problèmes de limitation de débit et des résultats incohérents. Enregistrez le dernier état de suivi accepté dans votre base de données et actualisez-le via des tâches en arrière-plan contrôlées ou le mécanisme de mise à jour pris en charge par le fournisseur.

Vérifiez la documentation du fournisseur avant de coder

Avant l'implémentation, consultez la documentation officielle de l'API du fournisseur concernant l'authentification, les formats de requête, les champs de réponse, les transporteurs pris en charge, le comportement en cas d'erreur, les mécanismes de mise à jour et les exigences liées au compte. 17TRACK fournit une page produit dédiée à l'API de suivi ainsi qu'une documentation destinée aux développeurs. Considérez ces pages comme la référence faisant autorité pour le comportement actuel de l'API, plutôt que de vous fier à des exemples copiés depuis des forums ou d'anciens tutoriels d'intégration.

Établissez une courte liste de vérification des exigences à partir de la documentation :

  • Comment les identifiants de l'API sont-ils délivrés, stockés, renouvelés et révoqués ?
  • La requête nécessite-t-elle un code transporteur ou le service peut-il identifier le transporteur à partir du numéro de suivi ?
  • Quels champs de réponse identifient l'expédition, le statut, le lieu, les horodatages et le message d'incident ?
  • Comment les mises à jour asynchrones sont-elles transmises, si le compte les prend en charge ?
  • Quelles sont les limites de requêtes documentées, les règles de facturation, les délais d'attente prévus et les codes d'erreur ?
  • Comment traiter les numéros de suivi en double, les numéros invalides, les transporteurs inconnus et les expéditions livrées ?

Ne déduisez pas une fonctionnalité du nom d'un produit. Par exemple, « temps réel » peut décrire un positionnement commercial plutôt que garantir que chaque événement du transporteur apparaît immédiatement. Votre implémentation doit préciser que les scans du transporteur peuvent être retardés et qu'une API ne peut pas créer un scan que le transporteur n'a pas signalé.

Préparez les données de commande et d'expédition

Le moment le plus pertinent pour créer le suivi est généralement l'expédition, et non la création de la commande. Une commande peut être payée mais pas encore emballée, et un numéro de suivi peut être généré avant que le colis ne soit accepté par le transporteur. Déterminez quel événement de votre workflow d'exécution doit créer l'enregistrement de suivi.

Au minimum, votre enregistrement d'expédition interne doit distinguer les valeurs suivantes :

  • ID de commande interne et ID d'exécution
  • Numéro de suivi
  • Nom ou code du transporteur
  • Pays ou région de destination, lorsque cela est nécessaire sur le plan opérationnel
  • ID de suivi du fournisseur ou référence d'abonnement, si elle est renvoyée
  • Statut normalisé actuel
  • Horodatage du dernier événement et horodatage de la dernière synchronisation
  • Réponse brute du fournisseur ou référence d'audit contrôlée

Conservez séparément les données de commande et les données d'expédition. Une commande peut contenir plusieurs colis, des expéditions fractionnées ou différents transporteurs. L'hypothèse d'une correspondance entre une commande et un seul numéro de suivi échoue souvent lorsqu'un entrepôt expédie les articles séparément.

Utilisez un processus idempotent. Si le système d'exécution réessaie la même requête, l'intégration doit mettre à jour l'expédition existante plutôt que créer des abonnements ou des messages client en double. Une clé d'idempotence pratique peut combiner votre ID d'exécution interne, l'identifiant du transporteur et le numéro de suivi, sous réserve des exigences propres au fournisseur.

Normalisez les statuts des transporteurs pour les clients

Les transporteurs utilisent des libellés et des séquences d'événements différents. Votre boutique doit conserver un petit modèle de statuts internes, comme Informations reçues, En transit, En cours de livraison, Livré, Incident et Retourné. Conservez l'événement original du transporteur pour le personnel du support, mais utilisez le statut normalisé pour la logique de la boutique.

Les règles de normalisation doivent être explicites. Un événement « étiquette créée » ne doit pas être présenté comme la preuve que le colis est en mouvement. « Livré » doit être considéré comme un événement signalé par le transporteur, et non comme la garantie que le client a effectivement trouvé le colis. Un incident ne doit pas être converti silencieusement en « en transit » simplement parce que l'expédition pourrait se poursuivre ultérieurement.

Définissez également la priorité des statuts et la gestion des régressions. Un flux de données retardé du transporteur peut arriver dans le désordre. Comparez les horodatages des événements lorsqu'ils sont disponibles, enregistrez l'événement brut et évitez de remplacer un état « livré » plus récent par un état « en transit » plus ancien. Si les horodatages sont absents ou ambigus, signalez l'enregistrement pour une mise à jour prudente plutôt que d'inventer une séquence.

Créez le flux de requêtes côté serveur

Votre backend doit valider les données d'exécution reçues avant d'appeler le fournisseur de suivi. Vérifiez que le numéro de suivi est présent, supprimez les espaces accidentels, validez le format attendu lorsque cela est approprié et confirmez que la valeur du transporteur est acceptable. Ne rejetez pas des numéros de suivi inhabituels mais valides uniquement parce qu'ils ne correspondent pas à un modèle local trop restrictif.

Un flux de requête indépendant du fournisseur peut être représenté comme suit :

receive fulfillment event
validate order and shipment fields
check for an existing idempotency key
send the documented tracking request from the server
store the provider response and internal shipment record
queue a refresh or process the supported update event
publish only approved fields to the storefront

Utilisez des délais d'attente courts, des tentatives limitées et une temporisation exponentielle pour les défaillances temporaires. Ne réessayez pas chaque erreur. Une erreur d'authentification, une requête invalide ou un transporteur non pris en charge nécessite généralement une correction plutôt que des appels répétés. Consignez un ID de corrélation, le résultat de la requête et la catégorie d'erreur du fournisseur, mais évitez d'écrire les clés d'API, les adresses complètes des clients ou les informations personnelles inutiles dans les journaux de l'application.

Conservez la réponse du fournisseur séparément du modèle destiné aux clients. Il sera ainsi plus facile de changer de fournisseur, de corriger une règle de correspondance et de limiter les informations exposées par une page de commande publique.

Concevez l'expérience de suivi pour les clients

Une page de suivi doit répondre rapidement à trois questions : quel est l'état actuel, que s'est-il passé récemment et que doit faire le client ensuite ? Affichez la référence de commande, le numéro d'expédition sous une forme respectueuse de la confidentialité, le nom du transporteur, l'heure du dernier événement et une explication claire des incidents.

Ne présentez pas une chronologie vide comme s'il s'agissait d'une défaillance technique. Avant le premier scan du transporteur, expliquez que les informations d'expédition ont été reçues et que le déplacement peut ne pas être encore visible. En cas d'incident, fournissez une explication en langage courant uniquement lorsque les données sources le permettent. Si le transporteur signale un problème d'adresse, fournissez un lien vers le processus de support ou l'action du service client que votre entreprise peut réellement proposer.

Pour les boutiques construites sur Shopify ou une autre plateforme e-commerce, vérifiez comment la plateforme expose les événements d'exécution, les comptes clients, les pages de statut des commandes et les modèles de notification. La documentation officielle destinée aux développeurs de Shopify comprend des ressources sur les webhooks et les données d'exécution. Les API des plateformes et leur documentation versionnée peuvent changer ; confirmez donc la version utilisée par votre application avant tout travail destiné à la production.

Utilisez les notifications avec discernement

Les événements d'expédition sont des déclencheurs utiles, mais envoyer un message pour chaque scan du transporteur peut provoquer une fatigue liée aux notifications. Définissez des règles commerciales, par exemple une notification lors de la création de l'expédition, d'une progression significative en transit, du passage en cours de livraison, de la livraison et de certains incidents. Supprimez les doublons et ajoutez un intervalle minimal pour les messages de retard répétés.

Séparez les alertes opérationnelles des notifications destinées aux clients. Une équipe de support peut avoir besoin de savoir qu'une expédition n'a pas évolué depuis plusieurs jours, tandis qu'un client peut ne nécessiter un message que lorsque le transporteur signale un incident concret. Le seuil de temps doit tenir compte du niveau de service, de la destination, du transporteur et du mode d'expédition, plutôt que d'un nombre universel dépourvu de base opérationnelle.

Testez avec des scénarios de livraison réels

Une réponse réussie pour un seul numéro de suivi ne suffit pas pour un lancement en production. Créez une matrice de test comprenant plusieurs transporteurs, pays, types d'expédition et états d'événement. Testez au moins :

  • Une expédition nouvellement créée sans scan du transporteur
  • Une expédition normalement en transit
  • Une expédition en cours de livraison
  • Une expédition livrée
  • Un incident ou un événement lié à l'adresse
  • Une expédition retournée
  • Un numéro de suivi invalide
  • Un événement d'exécution en double
  • Une réponse retardée du fournisseur ou un délai d'attente dépassé
  • Un événement reçu dans le désordre

Mesurez davantage que la disponibilité de l'API. Vérifiez si la bonne commande est mise à jour, si le client voit un langage compréhensible, si les notifications en double sont supprimées et si le personnel du support peut identifier l'événement original du transporteur. Commencez par un déploiement limité, conservez une solution de secours opérationnelle et surveillez les catégories d'erreurs après la mise en production.

Sécurité, confidentialité et maintenance

Stockez les identifiants dans un gestionnaire de secrets ou une variable d'environnement protégée, et non dans le code du thème, le code mobile, le contrôle de version ou les requêtes du navigateur. Limitez l'accès aux données d'expédition selon les rôles, utilisez HTTPS et vérifiez pendant combien de temps les réponses brutes et les champs liés aux clients sont conservés.

Consultez régulièrement la documentation du fournisseur et la version de l'API de votre plateforme e-commerce. La prise en charge des transporteurs, les noms d'événements, les exigences d'authentification et le comportement des webhooks de la plateforme peuvent changer. Gardez les règles de correspondance des statuts configurables, documentez les hypothèses qui les sous-tendent et permettez de rejouer ou de rapprocher une expédition sans envoyer un autre message au client.

L'API de 17TRACK est une option pertinente à évaluer lorsque votre boutique a besoin d'une intégration de suivi dédiée couvrant plusieurs transporteurs. Le choix approprié dépend toutefois des transporteurs que vous utilisez, des pays que vous desservиez, du comportement des mises à jour documenté pour votre compte, du volume de requêtes prévu et des contrôles opérationnels requis par votre équipe. Confirmez ces points dans la documentation officielle et au moyen d'une preuve de concept contrôlée avant de vous engager dans une conception destinée à la production.

FAQ

Le suivi doit-il être créé lors du passage de la commande ?

Généralement non. Créez ou activez l'enregistrement de l'expédition lorsque votre workflow d'exécution dispose d'un transporteur et d'un numéro de suivi. Le créer lors du paiement peut générer des enregistrements pour des commandes qui sont ensuite annulées, non exécutées ou fractionnées.

Une API de suivi peut-elle garantir des informations de livraison en temps réel ?

Non. Aucune API ne peut garantir que chaque scan du transporteur sera visible immédiatement. Le fournisseur dépend des données du transporteur, et les systèmes des transporteurs peuvent signaler les événements avec des retards ou des interruptions. Présentez les horodatages et le langage des statuts avec précision, et évitez de promettre un délai exact d'actualisation, sauf si la documentation et l'accord de service concernés permettent de soutenir cette promesse.

Le navigateur doit-il appeler directement l'API de suivi ?

Dans la plupart des implémentations, non. Utilisez une intégration côté serveur afin que les identifiants restent protégés, que les réponses puissent être normalisées, que les nouvelles tentatives puissent être contrôlées et que les données destinées aux clients puissent être filtrées. La boutique doit normalement lire une vue approuvée de l'expédition depuis votre application.

Comment une boutique doit-elle gérer plusieurs colis dans une même commande ?

Modélisez chaque exécution ou colis comme une expédition distincte tout en conservant l'ID de la commande parente. La page de commande peut afficher un résumé global et des chronologies distinctes pour chaque colis. Cela évite de masquer un colis retardé derrière le statut livré d'un autre colis.

Quelle est la première métrique de production à surveiller ?

Surveillez l'ensemble du flux, depuis la création de l'exécution jusqu'à la mise à jour correcte visible par le client. Le succès de l'API ne suffit pas. Suivez les enregistrements en double, les expéditions obsolètes, les événements non associés, les échecs de notification et le pourcentage d'expéditions nécessitant une correction manuelle.

Sources

Loading