Je reprends le sujet de l’IA, que j’ai beaucoup trop délaissé depuis un moment, pour m’attaquer à une fonction qui me fait gagner énormément de temps. Et qui, pour cette raison, pourrait aussi t’intéresser.
Dans cet article, je vais t’expliquer comment comparer les factures logistiques d’un ecommerce avec tes estimations précédentes, afin de pouvoir d’abord observer les différences puis agir, par exemple en parlant avec l’agence ou en corrigeant le problème si l’erreur vient de toi.
Quelques éléments à garder en tête :
- Nous allons prendre une facture en PDF et la comparer avec un CSV / Excel. Si nous comparions deux fichiers Excel, il n’y aurait presque rien d’intéressant à faire (sauf s’ils contenaient des cellules fusionnées, auquel cas ce système nous aiderait aussi).
- Je pars du principe que tu enregistres dans ta base de données une estimation du coût de chaque envoi. Si tu ne le fais pas, arrête de lire cet article et va voir comment t’y prendre. Tu contrôleras bien mieux tes marges et éviteras les mauvaises surprises.
- J’utilise ce processus pour analyser des PDF de factures, mais le système peut aussi te servir à utiliser les PDF comme cela t’arrange. Dans ce sens, dans de prochains articles, je t’expliquerai comment prendre un PDF fournisseur avec plusieurs références et créer différentes fiches produit.
- Je vais utiliser ChatGPT 4 et 4o pour cela. Je n’ai pas testé d’autres assistants.
Les problèmes des factures logistiques en ecommerce
Je ne t’apprends rien en disant que dans un ecommerce multimarque de produits, la logistique sera le deuxième ou le troisième poste de dépenses le plus important, juste derrière l’achat de marchandises et, éventuellement, les salaires.
Il est donc clair que c’est un sujet qui mérite de l’attention. Beaucoup d’argent est en jeu et cela se répercute directement sur la marge bénéficiaire.
Le problème, c’est que même si tu sais à quel point c’est important, contrôler les factures des entreprises logistiques prend du temps.
Au moins si tu réalises plusieurs dizaines d’envois par jour. N’en parlons même pas lorsqu’il y en a des centaines ou des milliers.
Et oui, certaines agences, en plus de la facture PDF, ont la gentillesse de nous envoyer un CSV avec le détail de chaque envoi.
Parfait, mais nous ne pourrons presque jamais utiliser ce CSV tel quel, car il contiendra des cellules fusionnées, vides… Quoi qu’il en soit, si tu te débrouilles un minimum avec Excel, tu te prépares une macro une fois et c’est réglé. À partir de là, tu compares ce fichier avec le tien contenant les estimations extraites du CMS.
Tu me diras aussi qu’il est possible de développer une fonctionnalité sur ton site qui lit un PDF et le transforme en CSV téléchargeable.
Je sais.
Nous l’avons essayé. Un développeur a mis trois jours à mettre la fonctionnalité en place.
Mais, malheureusement, les factures des fournisseurs changent de format, et 9 mois plus tard, elle ne fonctionnait plus.
En plus, c’était pour une seule agence. Imagine devoir développer un système similaire pour 8 ou 9 agences différentes. Multiplie les jours de développement.
Tu pourrais aussi me dire qu’en prenant X commandes au hasard (selon le volume global) et en les comparant, cela peut suffire statistiquement.
Et oui, c’est possible, je ne vais pas contredire les statistiques. Mais si tu disposes d’une formule simple pour obtenir TOUTES les valeurs, vas-tu vraiment te contenter d’un pourcentage inférieur ? Surtout si, probablement, tu passes plus de temps à vérifier manuellement cet échantillon de commandes qu’à utiliser le système que je te propose ici.
Pour toutes ces raisons, cela faisait longtemps que je réfléchissais à la manière d’accélérer ce travail.
Et ChatGPT est arrivé.
Le processus pour comparer des factures avec l’IA
Je vais t’expliquer pas à pas le processus que je suis.
Je te rappelle que, pour le suivre, tu n’auras besoin que de trois choses :
- Une facture d’une agence de transport en PDF incluant le coût de chaque envoi.
- Un CSV / Excel extrait de la base de données de notre CMS / SGA / ERP avec notre estimation des coûts de chaque envoi.
- ChatGPT.
Au travail.
#1. Je donne des instructions de contexte à ChatGPT
J’ouvre ChatGPT (rappelle-toi, version 4 ou 4o) et je colle ce prompt, qui n’est pas de moi : je l’ai trouvé en fouillant sur Internet. Je ne me souviens plus où, donc je ne peux pas attribuer le crédit à qui de droit :
MISSION
Act as Professor Synapse, a conductor of expert agents. Your job is to support me in accomplishing my goals by gathering context, then you MUST init:
*Synapse_CoR* =
"(emoji): I am an expert in [role&domain]. I know [context]. I will reason step-by-step to determine the best course of action to achieve [goal]. I can use [tools] and [relevant frameworks] to help in this process. I will help you accomplish your goal by following these steps: [reasoned steps] My task ends when [completion]. [first step, question]"
INSTRUCTIONS
1. 🧙🏾♂️, gather context, relevant information and clarify my goals by asking questions
2. Once confirmed you are MANDATED to init Synapse_CoR
3. 🧙🏾♂ and [emoji] support me until goal is complete
COMMANDS
/start=🧙🏾♂️,introduce and begin with step one
/ts=🧙🏾♂️,summon (Synapse_CoR*3) town square debate
PERSONA
-curious, inquisitive, encouraging
-use emojis to express yourself
RULES
-End every output with a question or reasoned next step.
-You are MANDATED to start every output with "🧙🏾♂️:" or "[emoji]:" to indicate who is speaking
- After init organize every output
“🧙🏾♂️: [aligning on my goal]
[emoji]: [actionable response]."
-🧙🏾♂️, you are MANDATED to init Synapse_CoR after context is gathered.
- You MUST Prepend EVERY Output with a reflective inner monologue in a markdown code block reasoning through what to do next prior to responding.
- Always answer in FRENCH
Cela nous sert, entre autres, à terminer chaque interaction par une question de ChatGPT. Ici, on voit qu’il nous demande quelques informations supplémentaires, dans un style un peu Yoda:

#2. Nous importons la facture en PDF et lui donnons des instructions
Avant de voir ma réponse, je veux te montrer le PDF que je vais importer afin que tu comprennes le prompt en question.
Voici le format de la facture en PDF :

Sur l’image, tu peux voir deux envois. Je t’indique en rouge les deux champs qui m’intéressent pour chacun :
- La référence de la commande, qui est une chaîne de texte contenant l’ID de commande de notre CMS. Attention, il s’agit de notre ID, pas de celui de l’agence de transport (nous verrons plus tard un autre exemple).
- Le coût total de l’envoi, que nous comparerons à notre estimation.
Avec cette explication, tu peux comprendre le prompt que je colle, qui tient compte du format particulier de la facture :
Je vais t’envoyer une facture en PDF. Fais une liste de toutes les références du PDF avec le prix total. Dans le numéro de référence, seuls les chiffres situés avant le # sont valides ; par exemple, pour cette référence : 80052#1-1, la référence valide est : 80052.
Je joins la facture en PDF au prompt et j’envoie le tout à ChatGPT.
Voici sa réponse :

#3. Nous importons nos estimations
Avant de continuer avec ChatGPT, j’ai besoin que tu voies le CSV que je vais lui transmettre ensuite, qui contient les deux mêmes champs que ceux récupérés dans la facture. Rappelle-toi :
- ID de nos commandes.
- Coût d’expédition estimé.

Bon, maintenant tu es en mesure de comprendre le prompt suivant :
Je vais t’envoyer un fichier Excel avec le récapitulatif des commandes. Fais une liste de tous les « numéro de commande » avec leur « coût d’expédition estimé ».
Nous joignons à cela le fichier Excel contenant nos estimations et nous l’envoyons.
Voici la réponse de ChatGPT :

#4. Nous comparons les valeurs
Attention, c’est ici que la magie opère.
Nous saisissons ce prompt :
Une fois que tu as tout, compare les données du pdf, « références » et « prix total », avec les données des « numéro de commande » et « coût d’expédition estimé » et vérifie s’il existe des écarts. L’objectif est de vérifier si, pour une même référence ou un même numéro de commande, les coûts correspondent. S’il n’y a aucun écart, dis : Tout est ok, il n’existe aucun écart. S’il existe des écarts, crée un excel avec le résultat numérique des écarts
Structure l’Excel de la manière suivante :
Colonne A : Référence
Colonne B : Prix total PDF
Colonne C : Coût total Excel
Colonne D : Écarts
Regarde cette merveille (et en plus il ajoute une colonne que je n’ai pas demandée) :

Voilà toutes les différences. Et nous parlons d’un PDF de 9 pages d’envois.
Disclaimer : ce processus a été développé par Juan Carlos Carpio, un crack de l’IA et des contenus que nous avons la chance d’avoir chez Yo pongo el hielo.
Il est possible que la facture du fournisseur n’inclue pas l’ID de ta commande.
Le cas est similaire au précédent, mais tu devras, dans l’intégration via API entre ton système et celui de l’agence logistique, récupérer l’identifiant de commande de l’agence, afin de l’ajouter à notre CSV.
Dans ce cas, l’idée est de faire correspondre le PDF et le CSV avec l’ID d’envoi de l’agence au lieu de l’ID de notre CMS.
Ainsi, avec une facture comme celle-ci qui, comme tu le vois, ne contient pas l’ID de commande de notre CMS mais uniquement l’ID d’envoi propre à l’agence :

Et avec un de nos CSV comme celui-ci, dans lequel nous récupérons via API l’ID d’envoi de l’agence et l’exportons :

Nous répétons le processus en adaptant le nom des champs (les en-têtes) dans les prompts, selon les nouveaux fichiers (important pour que ChatGPT ne s’emmêle pas) et nous obtenons ceci :

C’est exactement ce que nous cherchions.
Conclusions
Comme tu le vois, à partir de maintenant, analyser les factures d’expédition de ton ecommerce sera un jeu d’enfant.
Une question, littéralement, de quelques minutes. Avec n’importe quelle agence et sa facture correspondante.
Tu découvriras des choses comme :
- Qu’on te facture le poids volumétrique (avec ou sans raison).
- Qu’il y a sur la facture des éléments dont on ne t’avait pas parlé.
- Qu’on t’a augmenté le tarif sans prévenir.
- Qu’on ne t’a pas appliqué l’offre annoncée.
- Que tu as expédié une palette de 2 tonnes (ce qui ne sera pas vrai si tu ne vends pas des batteries de voiture).
Ce ne sont que quelques cas courants.
L’étape suivante sera de corriger ce qui doit l’être ou de réclamer ce qui correspond à l’entreprise, mais comme ChatGPT ne peut pas encore t’aider avec ça (ça viendra), je te souhaite bonne chance pour le moment.
Si cet article t’a plu, voici d’autres articles sur l’IA appliquée au business digital.
Et si tu veux recevoir mon nouvel article par email chaque jeudi, tu peux t’abonner –et recevoir au passage un petit cadeau– sur cette autre page.
Questions fréquentes
À quoi sert l’analyse des factures logistiques avec l’IA ?
Elle permet de comparer les coûts facturés par l’agence de transport aux estimations enregistrées dans ton ecommerce et de détecter les écarts.
De quels fichiers as-tu besoin pour comparer des factures logistiques avec ChatGPT ?
Il te faut une facture de transport en PDF, un CSV ou un fichier Excel avec les estimations du coût d’expédition et ChatGPT.
Pourquoi est-il important d’enregistrer une estimation du coût de chaque envoi ?
Parce que cela permet de mieux contrôler les marges et de détecter les écarts entre ce que tu pensais payer et ce que l’agence te facture finalement.
Quelles données extrait-on de la facture logistique en PDF ?
Principalement la référence de la commande et le coût total de l’envoi.
Quelles données extrait-on de ton propre CSV ou Excel ?
Le numéro de commande et le coût d’expédition estimé enregistré dans le système interne.
Comment compare-t-on les données du PDF et de l’Excel ?
On demande à ChatGPT de comparer la référence et le prix total du PDF avec le numéro de commande et le coût estimé de l’Excel, puis de créer un tableau des écarts.
Quelles colonnes doit contenir le fichier Excel final des écarts ?
Référence, prix total PDF, coût total Excel et écarts.
Que se passe-t-il si la facture n’inclut pas l’ID de commande de l’ecommerce ?
On peut comparer en utilisant l’ID d’envoi de l’agence, à condition que cet identifiant ait été enregistré auparavant dans ton propre CSV.
Pourquoi ce système peut-il faire gagner du temps ?
Parce qu’il permet de contrôler tous les envois d’une facture au lieu de vérifier manuellement seulement un échantillon.
Quels types d’erreurs peut-il aider à détecter ?
Il peut repérer des écarts dus au poids volumétrique, des frais non annoncés, des hausses de tarif, des offres non appliquées ou des montants anormaux.

Laisser un commentaire