Convertissez vos devis PDF en Excel — Extraction par sens, pas par mise en page
Un devis d'un fournisseur ne ressemble en rien à celui d'un autre. L'un intègre ses prix dans un tableau en page 2. L'autre écrit « votre prix est de 4 750 €, livraison incluse » dans un paragraphe narratif. Les chiffres sont tous là — mais lequel est le prix proposé, lequel est la remise, et lequel est la taxe ? L'extraction par nom de colonne identifie chaque champ par ce qu'il signifie, et non par son emplacement sur la page.
Enterprise-grade security · TLS 1.3 encrypted
Ce que vous pouvez extraire d’un devis fournisseur
Saisissez les noms de colonnes dont vous avez besoin — l’IA retrouve ces valeurs dans n’importe quelle mise en page de devis, que les prix figurent dans un tableau structuré, un paragraphe narratif, ou un mélange des deux.
Champs d’en-tête et de synthèse
Champs de ligne et financiers
Ce n’est pas une liste exhaustive — saisissez tout champ présent dans vos devis. L’IA lit le document pour trouver ce que vous demandez.
Pourquoi extraire les données d’un devis est plus difficile que celles d’une facture
Les factures suivent une norme souple. Chaque facture a un total, une adresse de facturation et une date d’échéance. Les devis n’ont pas de telle convention. Une seule page contient un numéro de devis, une date de validité, peut-être vingt lignes, une structure de remise appliquée par paliers de quantité, un taux de taxe qui peut ou non inclure le transport, un total général avec un fret séparé, et des conditions de paiement allant de « Net 30 » à « 50 % d’acompte ». Le défi n’est pas de lire le document — c’est de savoir quel nombre correspond à quoi.
Le problème
Un devis contient généralement cinq à huit valeurs monétaires : prix unitaire, totaux par ligne, sous-total, remise (en pourcentage ou en valeur absolue), TVA, frais de port, et total général. Le fournisseur A place la remise entre le sous-total et la TVA. Le fournisseur B applique la remise directement au prix unitaire et n'affiche que les totaux de ligne remisés, sans ligne de remise distincte. Le fournisseur C écrit « votre prix est de 12 450 €, livraison et TVA incluses » dans un paragraphe — un seul nombre portant trois niveaux de sens. Un humain qui lit le devis comprend la différence. Un OCR basé sur des templates, qui associe des coordonnées de pixels à un modèle préconfiguré, extrait le nombre qui se trouve à ces coordonnées — juste ou faux — sans faire la différence entre la remise et les frais de port. Les équipes achats sur Reddit r/procurement citent régulièrement « l'extraction de données à partir de formats fournisseurs non standard » comme source principale d'erreurs de comparaison.
Un fournisseur industriel génère un devis depuis son ERP — chaque ligne d'article dans un tableau clair avec les colonnes Description, Qté, Prix unitaire et Montant. Un prestataire IT rédige le sien dans un document Word : « Baie serveur 42U : 2 unités à 1 200 € chacune — 2 400 € » en texte courant. Un sous-traitant du BTP remplit un formulaire imprimé à la main et envoie un scan. Les outils basés sur des templates nécessitent un modèle distinct pour chaque format. Avec trois fournisseurs, cela fait trois templates à créer et à maintenir. Avec dix fournisseurs par cycle d'appel d'offres, la charge de maintenance des templates dépasse le temps gagné par l'extraction.
Le fournisseur A propose 10 000 $ avec une remise de 5 % par ligne et une taxe appliquée au sous-total après remise. Le fournisseur B propose 9 500 $ forfaitaires, taxes incluses. Le fournisseur C propose 9 200 $ avec une remise de 3 % pour paiement anticipé et un fret séparé. Ces trois offres produisent des valeurs différentes pour chaque champ financier. Si votre extraction manuelle traite par erreur le prix TTC du fournisseur B comme le sous-total hors taxe, la comparaison est faussée du taux de taxe (5 à 28 % selon la juridiction). L'erreur se propage dans toutes les analyses suivantes — notation, classement et recommandation finale d'attribution — et devient invisible une fois les chiffres dans un tableur, car le tableur les présente comme des faits.
Comment l’extraction par colonnes personnalisées résout ce problème
L'extraction personnalisée de colonnes — mécanisme central d'ImageToTable.ai — vous permet de saisir les noms de champs souhaités : « Sous-total », « Remise », « Taxe », « Total général ». L'IA lit le document et identifie chaque valeur en comprenant sa signification dans le contexte du document. Elle reconnaît que le nombre à côté de « Sous-total » dans un devis structuré en tableau et le nombre décrit comme « le total avant taxes et fret » dans un devis narratif correspondent au même champ — Sous-total. Pas besoin de dessiner des rectangles autour de chaque valeur. Pas besoin de configurer des modèles par fournisseur. Vous nommez les champs une fois, et la même définition fonctionne pour tous les formats de devis de vos fournisseurs — tabulaire, narratif, scanné, ou toute combinaison des trois.
Définissez vos colonnes d'extraction une fois : Nom du fournisseur, Numéro de devis, Date du devis, Valide jusqu'au, Description de l'article, Quantité, Prix unitaire, Total ligne, Sous-total, Remise, Taxe, Total général, Conditions de paiement, Conditions de livraison. Utilisez cette même liste de colonnes pour chaque devis fournisseur que vous traitez. L'IA lit chaque document indépendamment et trouve les valeurs correspondantes par leur sens — le fournisseur dont les prix sont dans un tableau et celui dont les prix sont dans un paragraphe produisent des lignes de résultat avec la même structure de colonnes. Lorsqu'un nouveau fournisseur envoie un devis dans un format que vous n'avez jamais vu, les mêmes colonnes fonctionnent sans aucune nouvelle configuration. Pour les équipes achats qui gèrent des cycles de demande de prix auprès de 5 à 15 fournisseurs, cela élimine la charge de maintenance des modèles qui rend l'OCR traditionnel économiquement non viable en dessous de très gros volumes d'achats.
Lorsque vous traitez tous les devis fournisseurs en un seul lot, chaque ligne de chaque fournisseur occupe une rangée dans le tableau de sortie — avec tous les champs demandés renseignés. Le résultat est un tableau plat où chaque ligne identifie le fournisseur, l'article et toutes les composantes financières de cette ligne. Comme la même définition de colonne a été appliquée à chaque devis, la colonne Sous-total sur la ligne du fournisseur A et celle du fournisseur B contiennent le même champ — le sous-total avant taxes et remises, tel que calculé (ou imprimé) par ce fournisseur. Cela vous permet de charger directement la sortie dans un tableur de comparaison et d'y appliquer une logique analytique — notation, classement, normalisation — à partir de données structurées et vérifiées, plutôt que de chiffres saisis manuellement. Pour des conseils sur la construction du flux de comparaison à partir des données extraites, consultez l'approche détaillée dans notre guide sur l'extraction des données de devis fournisseurs pour une comparaison côte à côte dans Excel.
Des devis PDF à un Excel prêt à comparer : comment ça marche
Si vous recevez des devis fournisseurs en PDF et devez comparer les prix entre fournisseurs — que ce soit pour un cycle d'appel d'offres unique ou un approvisionnement continu — voici à quoi ressemble le flux d'extraction.
Importez des devis PDF — de n'importe quel fournisseur, dans n'importe quel format, en une seule fois
Déposez des devis PDF de toute provenance : PDF générés par ERP avec tableaux structurés, exports Word vers PDF avec prix rédigés en paragraphes, formulaires de devis scannés, pièces jointes d'e-mails ou photos de devis imprimés. L'outil accepte JPG, PNG, WebP et PDF — y compris les devis multipages où le tableau des prix s'étend sur plusieurs pages. Utilisez le traitement par lots pour importer toutes les réponses des fournisseurs pour un cycle d'appel d'offres en une seule fois et consolider les résultats dans un fichier unique. Pour collecter des devis de fournisseurs absents de votre système d'achat, générez un Lien de collecte : une URL partageable où les fournisseurs peuvent déposer leurs devis directement dans votre file de traitement en saisissant un code de vérification court — sans inscription ni connexion requise de leur côté.
Définissez les colonnes nécessaires — une fois, pour tous les fournisseurs
Saisissez les noms des champs à extraire : « Nom du fournisseur », « Numéro de devis », « Date du devis », « Valable jusqu'au », « Description de l'article », « Quantité », « Prix unitaire », « Total ligne », « Sous-total », « Remise », « Taxe », « Total général », « Conditions de paiement », « Conditions de livraison ». Ce sont vos noms de colonnes — l'IA localise chaque valeur en comprenant son rôle sémantique dans le document, que cette valeur apparaisse dans une cellule de tableau, une phrase ou une note de bas de page. Utilisez une Colonne déduite comme « Type de prix (options : Fixe/Estimé/À ne pas dépasser) » pour que l'IA classe chaque devis en fonction du langage qu'elle lit dans le document. Utilisez une Colonne calculée comme « % de remise (Remise / Sous-total) » pour calculer le taux de remise effectif lors de l'extraction — utile lorsqu'un fournisseur propose une remise en euros et un autre un pourcentage, et que vous avez besoin d'une base commune de comparaison. Enregistrez la configuration des colonnes comme modèle après connexion et réutilisez-la pour chaque cycle d'appel d'offres.
Téléchargez le fichier Excel unifié — chaque ligne d'article est une ligne, chaque champ financier est détaillé
Chaque ligne d'article de chaque devis fournisseur devient une ligne dans votre fichier de sortie. Un devis avec 15 lignes d'article produit 15 lignes — chacune avec le nom du fournisseur, le numéro de devis, la description de l'article et tous les champs financiers demandés. Un lot de cinq devis fournisseur avec une moyenne de 12 lignes d'article chacun produit environ 60 lignes — le tout dans un seul tableur, structuré de manière identique. Exportez en XLSX, CSV ou JSON. Comme les champs Sous-total, Remise, Taxe et Total général sont extraits séparément — et pas seulement le prix final — vous pouvez comparer les composantes de prix entre fournisseurs directement dans Excel, appliquer votre propre logique de normalisation et construire l'analyse comparative à partir de données sources vérifiées. La sortie est structurée pour être importée dans SAP, Oracle, NetSuite, Coupa ou votre modèle de comparaison d'achats.
Quand ça fonctionne le mieux — et quand vérifier les résultats
Quand ça fonctionne le mieux
Devis fournisseurs générés par ERP avec tableaux de prix structurés. Les devis exportés depuis SAP, Oracle, Microsoft Dynamics ou des ERP spécifiques aux fournisseurs sont extraits avec une grande précision. Les lignes formatées automatiquement, les champs d'en-tête et les résumés financiers correspondent proprement aux noms de colonnes. Les devis multipages avec continuation de lignes entre les pages sont traités correctement — l'IA comprend que le tableau de la page 2 est la suite de celui de la page 1.
Traitement par lots de formats mixtes entre fournisseurs avec différentes mises en page de devis. Quand un fournisseur utilise un format ERP structuré, un autre rédige ses prix dans des paragraphes Word, et un troisième envoie un formulaire scanné — la même définition de colonne extrait les données des trois. C'est l'avantage principal par rapport à l'OCR basé sur des modèles, qui nécessiterait trois modèles distincts pour ce seul cycle d'appel d'offres.
Désambiguïsation des remises et taxes lorsque les deux sont présentes. L'IA distingue une remise appliquée avant impôt, une remise appliquée après impôt, un prix hors taxes et un prix TTC — en lisant le texte environnant et le contexte numérique. Cette désambiguïsation sémantique est ce que l'extraction par nom de colonne offre et que l'OCR par coordonnées ne peut pas : la compréhension de la structure financière, et pas seulement la reconnaissance de texte.
Quand vérifier les résultats
Devis avec tarification complexe par paliers sur plusieurs seuils de quantité. Quand un fournisseur facture 12 €/unité pour 1 à 99 unités, 10 €/unité pour 100 à 499, et 8,50 €/unité pour 500+, et présente cela dans un tableau de paliers avec les lignes d'articles, vérifiez que chaque prix unitaire extrait est associé au bon palier de quantité. L'IA capture toutes les valeurs mais peut nécessiter un nom de colonne spécifique comme « Prix unitaire (palier 100-499) » pour un mappage sans ambiguïté dans des structures de paliers très imbriquées.
Devis manuscrits à faible contraste ou avec une notation inhabituelle. Les formulaires papier scannés remplis à la main — courants dans la construction, la fabrication spécialisée et les devis de services sur site — sont lisibles, mais la précision dépend de la qualité du scan et de la clarté de l'écriture. Un scan propre à 300 DPI d'un formulaire imprimé avec des lettres en caractères d'imprimerie donne des résultats fiables. Une photo basse résolution d'une écriture cursive inclinée prise avec un téléphone peut nécessiter une vérification manuelle des champs financiers.
Devis où le même nombre peut être interprété comme deux champs différents. Un devis qui indique « Sous-total : 5 000 € — Taxe (10 %) : 500 € — Total général : 5 000 € » (parce que le devis est exonéré de taxe mais affiche la ligne de taxe à titre indicatif) peut perturber l'extraction de l'égalité entre Taxe et Total général. Lorsque le langage du document décrit un article listé mais non facturé, ajoutez une colonne comme « Taxe appliquée (O/N) » en tant que colonne déduite pour vérification — l'IA lit le contexte environnant pour déterminer si la ligne de taxe a réellement été incluse dans le total général.
Questions fréquentes
Comment l'IA distingue-t-elle le prix unitaire, la remise, le sous-total, la taxe et le total général, surtout quand la mise en page varie considérablement d'un fournisseur à l'autre ?
L'extraction par nom de colonne résout ce problème en demandant à l'IA de trouver les champs sémantiquement, et non géométriquement. Lorsque vous saisissez le nom de colonne « Remise », l'IA cherche dans le document le nombre qui fait office de remise — le montant soustrait avant la taxe — que le fournisseur A le place sous le sous-total dans un tableau ou que le fournisseur B le mentionne dans une phrase comme « Remise de 10 % appliquée ». La même logique s'applique à la Taxe, au Sous-total et au Total général. Cette approche sémantique permet à une même définition de colonne de fonctionner sur des devis de différents fournisseurs, secteurs et pays, sans configuration par fournisseur. Pour les devis où la remise est intégrée au prix unitaire (sans ligne de remise distincte), l'IA extrait le prix unitaire tel quel et vous pouvez appliquer une formule dans Excel pour recalculer la remise implicite — l'extraction préserve la distinction entre « remise indiquée sur le document » et « remise que vous dérivez analytiquement ».
Puis-je extraire des devis fournisseurs dont les prix sont rédigés en paragraphes narratifs plutôt que dans des tableaux ?
Oui — c'est l'un des principaux avantages par rapport à l'OCR basé sur des modèles. Lorsqu'un fournisseur écrit « le prix unitaire du rack serveur est de 1 200 $, avec une remise de 5 % pour les commandes de 3 ou plus », l'IA lit la phrase en langage naturel, identifie 1 200 $ comme le prix unitaire et reconnaît 5 % comme une remise conditionnelle. Les outils basés sur des modèles qui ne fonctionnent que sur des PDF structurés en tableaux échouent sur ces devis au format narratif. Les mêmes noms de colonnes produisent des résultats cohérents, que les prix soient dans un tableau, une phrase récapitulative ou un mélange des deux. Pour les devis de services informatiques, les propositions de conseil et les devis de fabrication sur mesure qui utilisent fréquemment des prix en paragraphes, cette fonctionnalité élimine l'étape de recherche manuelle des chiffres dans les paragraphes.
Comment l'outil gère-t-il les devis de plusieurs fournisseurs avec des mises en page complètement différentes en un seul lot ?
Le traitement par lots accepte tous les fichiers de devis fournisseurs en une fois — PDF de systèmes ERP, devis papier scannés, PDF convertis par e-mail avec des prix en paragraphes — quel que soit le format et la mise en page. Chaque fichier est traité indépendamment en utilisant la même définition de colonne. Les prix sous forme de tableau du fournisseur A et les prix en paragraphes du fournisseur B produisent des lignes structurées de manière identique dans le même tableur de sortie. Pour un cycle de demande de prix avec huit fournisseurs, vous téléchargez les huit fichiers de devis, définissez vos colonnes de comparaison une fois et recevez un fichier Excel avec chaque ligne d'article de chaque fournisseur. L'étape d'extraction est totalement indépendante du format. Pour le workflow complet de création d'une comparaison de fournisseurs à partir de données extraites, consultez l'approche étape par étape pour extraire par lots les devis fournisseurs dans un tableau de comparaison unique.
Que se passe-t-il lorsqu'un devis fournisseur inclut des remises conditionnelles — comme des conditions de paiement anticipé, des paliers de volume ou une tarification groupée ?
L'IA extrait chaque valeur liée aux remises telle qu'elle apparaît sur le document. Si le devis indique « Prix standard : 1 200 $/unité » et « Remise sur volume (100+ unités) : 15 % — 1 020 $/unité », les deux valeurs sont capturées. Utilisez plusieurs définitions de colonnes pour capturer chaque palier : « Prix unitaire (standard) », « Prix unitaire (palier 100+) », « % de remise sur volume ». L'IA lit la relation entre les paliers et extrait les valeurs — mais la décision du palier à utiliser dans la comparaison vous appartient. Cette séparation rend l'étape d'extraction mécanique et l'étape analytique délibérée, plutôt que d'intégrer des hypothèses sur le palier applicable. Pour les devis avec des structures de remise complexes, une Colonne calculée comme « % de remise effective (1 - Total ligne / (Qté × Prix unitaire standard)) » peut calculer le taux de remise implicite lors de l'extraction, vous donnant une valeur normalisée pour la comparaison entre fournisseurs ayant différentes conventions de présentation des remises.
L'extraction préserve-t-elle le libellé original des conditions — comme les conditions de paiement, les conditions de livraison et les périodes de validité — ou les standardise-t-elle ?
Les champs tels que Conditions de paiement et Conditions de livraison sont extraits tels qu'écrits sur le document — « Net 30 », « 50 % d'avance, 50 % à la livraison », « FOB Destination » — préservant le libellé exact du fournisseur. C'est intentionnel : la standardisation des conditions est une tâche de comparaison, pas d'extraction, et doit être effectuée par vous dans Excel où la transformation est visible et vérifiable. Pour les champs numériques comme Date du devis et Valable jusqu'au, l'IA standardise le format en AAAA-MM-JJ quel que soit le format source (MM/JJ/AAAA, JJ-MM-AAAA, « 24 octobre 2024 »), afin que ces colonnes soient directement comparables sans normalisation manuelle du format de date. Le principe est : extraire exactement ce que dit le document, standardiser uniquement là où la conversion mécanique n'a aucune ambiguïté d'interprétation.
En savoir plus sur l'extraction de données de devis fournisseur
Le défaut caché de toute comparaison manuelle de devis fournisseur
Comment la saisie manuelle intègre des hypothèses non vérifiées dans les tableurs de comparaison — et pourquoi séparer l'extraction de l'analyse est important.
Extraire des données de devis fournisseur pour une comparaison côte à côte dans Excel : la partie dont personne ne parle
L'étape avant la comparaison : obtenir des données structurées à partir de PDF non structurés sans transcription manuelle.
Extraire par lots des devis fournisseur pour comparer les prix dans Excel : un tableau, n'importe quel format
Comment le traitement par lots transforme un appel d'offres multi-fournisseurs en un seul tableur prêt à comparer en une seule opération.
Ce que la comparaison de devis fournisseur coûte à votre équipe en heures par mois
Un modèle de coût trimestriel de la comparaison manuelle de devis — et où les heures sont réellement dépensées.