Pour réconcilier des statuts de livraison incohérents, comparez chaque colis attendu à une source de suivi identifiée, puis traitez les écarts avant de modifier la commande. Le dernier message reçu ne représente pas nécessairement le dernier événement survenu. Et un colis livré ne signifie pas que toute la commande l’est.
Cette méthode s’adresse à une PME qui expédie des produits depuis une boutique ou un ERP. Elle produit un relevé vérifiable : colis concernés, état observé, preuve, responsable et prochaine action. Un tableur peut suffire pour le premier contrôle; il n’est pas nécessaire de reconstruire l’intégration.
Quand les statuts méritent un rapprochement
Un client voit « en transit » alors que le transporteur affiche « livré ». Une commande composée de deux colis semble terminée après la livraison du premier. Un ancien événement remet une expédition à l’étape précédente. Ces symptômes justifient une vérification, mais ne prouvent pas à eux seuls une panne.
Commencez par les éléments techniques disponibles : historique du suivi, identifiant du colis, journaux de réception et résultat du traitement. Distinguez quatre situations : événement absent chez la source, événement existant mais non reçu, événement reçu mais rejeté, et état enregistré mais mal présenté. Sans ces traces, consignez « cause à confirmer ».
Préparer les accès et le périmètre
Réunissez un export des commandes et quantités à expédier, la liste des expéditions et colis, puis un accès en lecture au suivi du transporteur ou au système choisi comme référence. Ajoutez les journaux du connecteur si vous les avez, ainsi qu’une personne des opérations capable de confirmer les colis réellement préparés.
Un export existant et un tableur déjà disponible peuvent éviter un achat pour cet exercice. L’accès API, un connecteur, la conservation des historiques ou l’intervention d’un spécialiste peuvent néanmoins dépendre d’une licence ou entraîner des coûts. Vérifiez ces conditions dans votre contrat; aucun prix ni délai universel n’est proposé ici.
Fixez une heure de relevé, une période d’expédition et un transporteur pour le premier essai. Incluez les dossiers ouverts plus anciens et les exceptions connues : regarder seulement les expéditions du jour ferait disparaître les colis bloqués de votre contrôle. Utilisez des références internes dans le fichier de travail, sans recopier les adresses des destinataires.
Construire une ligne par colis attendu
Reliez la commande aux articles et quantités, puis aux expéditions et aux colis. Shopify permet par exemple plusieurs objets Fulfillment pour une commande; ces objets contiennent notamment les lignes concernées et les informations de suivi. Il faut donc vérifier les relations réelles plutôt que supposer « une commande = un colis ». Source : documentation Shopify, consultée le 3 novembre 2026.
Pour votre relevé, prévoyez ces colonnes :
- Référence de commande, référence interne d’expédition et identifiant interne du colis.
- Articles et quantités couverts, avec les quantités restant à expédier.
- Transporteur, compte concerné et numéro de suivi conservé comme texte.
- État brut de chaque système, heure de l’événement à la source et heure de consultation.
- État interprété, écart, référence de la preuve, responsable et décision.
Ne rapprochez pas deux dossiers uniquement parce que leur numéro de suivi se ressemble. Confirmez le contexte et le lien d’expédition. Si le numéro manque, correspond à plusieurs dossiers ou n’existe pas dans votre registre, laissez la ligne à vérifier au lieu d’inventer un colis.
Un registre de colis incomplet peut produire une fausse conclusion : tous les colis connus seraient livrés alors qu’un article n’a jamais été expédié. Réconciliez aussi les quantités commandées, expédiées, annulées et restantes selon vos règles d’affaires.
Comparer des états qui veulent dire la même chose
Conservez le libellé brut avant de le traduire dans votre vocabulaire interne. Voici une grille de travail, à adapter au transporteur et à votre logiciel :
| Observation | Interprétation à conserver | Conclusion à éviter |
|---|---|---|
| Étiquette créée | Étiquette créée; préparation physique et prise en charge à confirmer. | Le colis est déjà dans le réseau. |
| Disponible au point de retrait | Le destinataire peut récupérer le colis. | Le destinataire l’a déjà récupéré. |
| Livré selon le transporteur | Livraison signalée pour ce colis. | Toute la commande est livrée, sans contrôler les autres colis. |
| Exception, retour ou état inconnu | Conserver le motif et ouvrir une vérification. | Forcer l’état dans une étape normale de progression. |
UPS distingue les renseignements d’une étiquette de la prise en charge du colis, et l’arrivée à un point de retrait de sa récupération. Ses définitions de suivi sont une référence pour ses propres statuts. Shopify précise aussi qu’une commande traitée, ou fulfilled, n’est pas nécessairement en transit ou livrée. Source : pages de statut Shopify.
Évitez une règle générale « ne jamais reculer ». Un retour ou une redirection peut survenir après une étape avancée. Postes Canada distingue ces exceptions dans son suivi professionnel. La recommandation de conception est de conserver leur sens et l’historique, plutôt que d’attribuer un simple rang numérique à chaque statut. Un retour commercial avec un nouveau suivi doit rester lié à un parcours distinct. Source : exceptions dans Intelligence 360.
Rapprocher en lecture seule, puis décider des corrections
- Figer le relevé. Notez les valeurs avant correction et l’heure de consultation. Si un système change pendant le contrôle, gardez les deux observations; ne présentez pas une comparaison à des heures différentes comme une vérité simultanée.
- Confirmer le colis et la source. Consultez le suivi autorisé pour ce colis. Une source inaccessible et un colis sans observation sont deux résultats différents. Aucun des deux ne signifie automatiquement « perdu ».
- Examiner l’ordre réel des événements. Pour un même colis et une source comparable, utilisez l’heure ou la version documentée par cette source. Une heure de réception tardive ne rend pas un ancien événement plus récent. Si les horodatages ne sont pas comparables ou si deux états contradictoires ont la même heure, demandez une vérification. Le guide des dates et fuseaux horaires détaille cette partie.
- Reconnaître les répétitions. Utilisez la clé de déduplication prévue par le fournisseur. Une répétition identique ne doit pas produire une deuxième action; un même identifiant associé à des contenus contradictoires doit être examiné. Chez Shopify, la documentation distingue l’identifiant de livraison du webhook de celui de l’action marchande. Ne les confondez pas avec le numéro du colis. Source : vérification des webhooks Shopify.
- Classer chaque écart. Inscrivez par exemple « mise à jour absente », « ancien événement reçu tard », « code inconnu », « correspondance ambiguë » ou « source inaccessible ». Affectez un responsable et une prochaine vérification, selon l’engagement de service et le contexte opérationnel, pas un seuil arbitraire.
- Corriger le périmètre validé. Après revue, utilisez la fonction de correction ou de reprise soutenue par vos outils. Gardez l’avant, l’après et le motif. Recontrôlez les colis concernés et les effets possibles sur notifications, stocks, facturation et retours; le rapprochement ne doit pas relancer ces actions par accident.
Les webhooks sont des notifications de changement, pas une preuve d’exhaustivité. Shopify ne garantit ni leur ordre ni leur livraison et recommande un rapprochement périodique par lecture. Cette lecture complète le traitement des messages; sa fréquence dépend de vos opérations et des limites de l’API. Source : fonctionnement des webhooks Shopify. Pour la conception générale du connecteur, consultez notre guide d’intégration ERP et CRM.
Exemple illustratif : deux colis, une seule livraison
Une commande fictive comporte deux colis attendus, P1 et P2, couvrant toutes ses quantités. La source indique P1 livré à 12 h et P2 en transit à 10 h. Un ancien événement de transit de P1 arrive ensuite, suivi d’une répétition de son événement de livraison. Ces heures sont comparables dans le jeu d’essai.
Le résultat attendu reste « livraison partielle : 1 colis sur 2 ». P1 ne repasse pas en transit parce que le message est arrivé plus tard, et le doublon ne compte pas comme un deuxième colis livré. Si P2 n’a aucune observation, le dossier devient « couverture incomplète à vérifier ». Si P2 attend au point de retrait, il reste en attente de récupération.
Il s’agit d’un exemple synthétique, pas d’un incident ou d’un résultat client de Services Hamdi.
Ce qui a été testé, et comment vérifier votre résultat
Le 3 novembre 2026, un essai local en Python 3.12.14 a exécuté 14 assertions réussies sur un registre et des événements fictifs : étiquette, retrait, désordre, doublon identique, livraison partielle, colis sans observation, code inconnu, conflit simultané, retour ultérieur, source inaccessible, numéro ambigu, rapprochement par contexte, numéro absent du registre et identifiant répété avec contenu contradictoire.
L’essai calcule une proposition d’état en lecture seule. Il suppose un registre attendu complet et ne vérifie ni API de transporteur, ni authentification des webhooks, ni stockage persistant, ni concurrence, ni notifications. Ses champs fictifs ne sont pas un schéma à copier dans une API réelle. Un statut transporteur ne tranche pas non plus une contestation de réception physique.
Pour votre contrôle, réexécutez le rapprochement sur le même relevé : la proposition doit rester identique, sans nouvelle action externe. Vérifiez séparément que chaque colis attendu possède une correspondance unique, que les quantités restantes sont explicites et que les exceptions restent visibles. Sur plusieurs relevés comparables, suivez les écarts non résolus et leur ancienneté. Une diminution n’est crédible que si le périmètre et les règles n’ont pas changé. Intégrez ces cas à votre recette utilisateur.
Checklist avant de fermer un écart
- La commande, ses quantités et tous les colis attendus sont rapprochés.
- Les états bruts, sources et heures de consultation sont conservés.
- Étiquette, retrait, livraison et retour restent distincts.
- Les répétitions n’entraînent pas de seconde action; les ambiguïtés restent à vérifier.
- La correction est limitée, tracée et contrôlée dans les systèmes concernés.
Si vos équipes rapprochent régulièrement ces états à la main, notre offre d’applications et intégrations au Québec et au Canada peut aider à cadrer ce flux. Un relevé anonymisé des écarts et la liste des outils utilisés constituent un point de départ concret.

