TL;DR : notre module d'OCR lit vos factures fournisseurs en PDF et remplit la saisie à votre place : fournisseur, numéro, dates, lignes de détail avec quantités et prix, taxes appliquées. Vous relisez, vous comptabilisez. L'analyse passe par le modèle d'IA de votre choix, jusqu'à un modèle local qui ne sort rien de votre réseau, et la validation finale reste toujours humaine. Le code du module est public.
Le 28 du mois, la pile est toujours là. Douze, vingt, quarante factures fournisseurs en PDF dans une boîte de courriel, et quelqu'un de votre équipe qui les ouvre une à une pour retaper le numéro, la date, le montant avant taxes, la TPS, la TVQ, le total. C'est le même rituel chaque mois, et personne ne s'est jamais levé le matin motivé par la ressaisie de factures.
La ressaisie, faites le calcul
Chronométrez-vous une fois : une facture fournisseur bien saisie, avec la ventilation des taxes et les bonnes lignes de détail, prend de cinq à huit minutes. À trente factures par mois, c'est environ trois heures de travail qui n'apporte rigoureusement rien : aucune analyse, aucune décision, juste du transfert de chiffres d'un PDF vers des champs.
Et c'est trois heures avec un risque bien réel : une inversion de chiffres dans un montant, une taxe mal ventilée, et c'est votre rapport de taxes qui hérite du problème. La saisie manuelle n'est pas juste lente, elle est fragile.
Le concept
Vous créez la facture fournisseur en brouillon, vous y déposez le PDF, et un bouton « Scanner OCR » lance l'analyse. Quelques secondes plus tard, les champs sont remplis : fournisseur, numéro de facture, dates, devise, et les lignes de détail avec leurs quantités et leurs prix. Quand il reconnaît un de vos produits, le module l'attache à la ligne plutôt que d'y laisser du texte libre.
Un mot sur les taxes, parce que la nuance compte : le module ne recopie pas les montants imprimés sur la facture. Il monte les lignes, leur applique votre taxe d'achat par défaut (au Québec, le groupe TPS+TVQ) et laisse Odoo recalculer les totaux. C'est plus solide qu'une retranscription, mais ça veut dire qu'une facture hors Québec, en TVH ou détaxée demande votre œil : la taxe par défaut ne sera pas la bonne, et c'est à vous de la corriger.
Le module reconnaît vos fournisseurs même quand le nom sur la facture ne correspond pas exactement à votre fiche : il recoupe le numéro d'entreprise, le domaine du courriel, le téléphone, l'historique de vos scans précédents. Et chaque scan affiche un score de confiance. Attention à ce qu'il est vraiment : c'est le modèle qui évalue sa propre lecture, pas une mesure d'exactitude. Prenez-le comme un ordre de lecture, pas comme un feu vert.
Ensuite, le principe non négociable : vous validez. Le scan ne comptabilise rien. Il remplit un brouillon, et rien ne devient une écriture tant que vous n'avez pas confirmé la facture vous-même, comme d'habitude dans Odoo. Une tâche planifiée passe aussi toutes les heures et scanne d'avance, par vingtaines, les factures en attente qui ont un PDF : le matin, elles sont déjà lues, et il ne vous reste qu'à les relire et à les confirmer, en lot au besoin.
Et les services comme Dext?
Des services infonuagiques comme Dext (anciennement Receipt Bank, aujourd'hui dans le giron d'IRIS Software Group) font ce travail très bien depuis des années, par abonnement mensuel dont le prix est plafonné au volume de documents traités : dépassez le quota du mois, et vos documents cessent d'être lus jusqu'à la prochaine facture. La différence est structurelle : avec ces services, vos factures vivent sur leur plateforme, et votre comptabilité dans un autre système, avec une synchronisation entre les deux.
Avec le module, tout se passe à un seul endroit : la facture arrive dans votre Odoo, se fait lire dans votre Odoo, et devient une écriture là où votre comptable travaille déjà. Pas de plateforme intermédiaire à payer, à synchroniser et à documenter dans votre registre de sous-traitants. Si vous êtes encore à magasiner le système comptable lui-même, on a aussi comparé les solutions comptables libres et commerciales.
Parlons franchement d'IA
L'analyse du PDF est faite par un grand modèle de langage, appelé depuis votre propre serveur, et le document lui est transmis le temps de la lecture. Vous choisissez le fournisseur : Anthropic, OpenAI, ou un modèle local compatible OpenAI (Ollama, llama.cpp) qui tourne chez vous et ne sort rien de votre réseau. La clé d'API, elle, est chiffrée au repos dans votre base.
Quand vous passez par un fournisseur commercial, ce sont les conditions de son API qui excluent l'entraînement sur vos documents : c'est un de nos critères de sélection, pas un détail. Une précision qui a son importance : ces conditions visent l'API, pas les forfaits grand public du même fournisseur, qui eux peuvent servir à entraîner ses modèles.
Pour la grande majorité des factures fournisseurs, des montants, des taxes, des descriptions de produits, c'est un compromis très raisonnable. Pour les documents vraiment sensibles, deux options : les exclure du scan et les saisir à la main, ou faire tourner tout le module sur un modèle d'IA local hébergé chez vous. On en discute selon votre réalité.
Autres limites à connaître : le module lit des PDF, jusqu'à 20 Mo, et pas des photos de factures prises au téléphone. Certains scans échouent, et le module vous le dit plutôt que de deviner. Et il n'apprend pas de vos corrections d'une fois à l'autre : chaque scan repart à neuf, avec la même consigne et rien d'autre que le PDF en cours. L'historique dont il se sert pour reconnaître un fournisseur, lui, ne quitte jamais votre base Odoo : c'est une recherche locale, jamais envoyée au modèle.
Pour partir du bon pied :
- Commencez par vos cinq plus gros fournisseurs récurrents : c'est là que les heures se récupèrent.
- Gardez la validation humaine, même quand le score de confiance est élevé : c'est votre comptabilité.
- Ouvrez l'œil sur les factures hors Québec : la taxe appliquée par défaut ne sera pas la bonne.
- Identifiez d'avance les documents sensibles à exclure ou à diriger vers un modèle local.
Chez nous
Nos propres factures fournisseurs passent par ce module. Le réflexe a changé en quelques semaines : on ne « saisit » plus une facture, on la scanne, on relit, on confirme. La fin de mois comptable s'est raccourcie d'autant, et les fautes de frappe dans les numéros et les dates ont disparu, tout simplement parce que plus personne ne les retape.
Si votre fin de mois ressemble encore à une pile de PDF à retaper, explorons ça ensemble.
Sources
- bf_invoice_ocr : le code du module, sur notre dépôt GitHub
- Dext : le service de référence dans cette catégorie, dont la tarification est étagée par volume de documents
- Conditions commerciales d'Anthropic : « Anthropic may not train models on Customer Content from Services »
- Mise à jour des conditions grand public d'Anthropic : la distinction entre les forfaits grand public et l'usage par API
- Notre page modules : la fiche du module OCR de factures