✔ Émission + Réception Factur-X EN 16931
✔ Validation XSD automatique contre les schémas officiels
✔ Compatible Odoo Community 13 à 19
✔ Aucune dépendance Odoo Enterprise
Facturation électronique obligatoire 2026–2027
À partir de septembre 2026, toutes les entreprises françaises devront émettre et recevoir des factures électroniques au format Factur-X (EN 16931).
Grandes entreprises & ETI → Septembre 2026
PME & TPE → Septembre 2027
Préparez votre Odoo Community dès maintenant.
Ce module vous permet de générer ET recevoir des factures Factur-X conformes EN 16931
(PDF/A-3 avec XML embarqué) directement depuis Odoo Community.
299 € HT – Licence perpétuelle – Code source inclus
Investissement unique – Mises à jour incluses
Testez le module en conditions réelles avant d'acheter
▶ Demander une démoÉmission Factur-X
Générez des factures Factur-X conformes en 1 clic
- ✔ Génération PDF/A-3 avec XML EN 16931 embarqué
- ✔ Validation XSD automatique à chaque génération (schémas officiels Factur-X 1.08)
- ✔ Profils : Minimum, Basic WL, Basic, EN 16931
- ✔ Mapping TVA conforme UNTDID 5305 (S, Z, E, AE, K, G, O) — configurable par taxe
- ✔ Motif d'exonération obligatoire pour E, AE, K, G, O (BT-120)
- ✔ SIREN (schemeID 0002) et SIRET (schemeID 0009) conformes EAS
- ✔ Gestion des remises (AllowanceCharge) avec prix brut, net et raison
- ✔ Type d'opération bien / service / mixte (réforme 2026)
- ✔ Factures et avoirs (TypeCode 380 / 381)
- ✔ Validation SIRET/SIREN intégrée (algorithme de Luhn)
Réception des factures fournisseurs
4 modes d'import automatisés — un seul écran centralisé pour toutes vos factures entrantes
📄 1. Upload manuel
Drag & drop d'un PDF Factur-X ou XML dans Odoo. Parsing instantané, création de la facture fournisseur en 3 clics.
📧 2. Réception email automatique
Le fournisseur envoie à facturx@votre-domaine.fr, l'email est récupéré (IMAP/POP), le PDF est extrait et parsé automatiquement. Zéro saisie.
📁 3. Dossier surveillé
Déposez vos PDF dans un dossier réseau (Samba, NFS, OneDrive...). Un cron scanne toutes les 10 min et importe les nouveaux fichiers. Idéal pour scanner papier automatisé.
📱 4. API REST
Endpoint HTTP sécurisé par token Bearer pour pousser des factures depuis un DMS, une PDP ou un autre ERP. Réponse JSON instantanée.
Traitement automatique commun aux 4 modes
- ✔ Import PDF Factur-X, XML CII, XML UBL et ZIP
- ✔ Import par lot via ZIP — jusqu'à 500 factures traitées en un seul upload, avec protections anti-ZIP-bomb natives (ratio 100:1, 500 MB max, fichiers cachés ignorés)
- ✔ Extraction automatique : fournisseur, lignes, montants, TVA, dates
- ✔ Validation XML de conformité (XSD)
- ✔ Rapprochement fournisseur intelligent (SIRET, TVA, nom)
- ✔ Auto-création du fournisseur si inconnu (SIRET + TVA + adresse)
- ✔ Détection des doublons multi-critères
- ✔ Hash SHA-256 pour preuve d'intégrité (audit fiscal)
- ✔ Vue unifiée avec badges colorés par origine (4 canaux dans un seul écran)
- ✔ Gestion des avoirs (TypeCode 381)
- ✔ Workflow 7 états avec traçabilité complète dans le chatter
- ✔ Actions batch et filtres par origine
Automatisations intelligentes
Le module travaille pour le comptable, pas l'inverse
- 🔔 Notifications comptable — chaque facture importée automatiquement (email/dossier/API) crée une activité « À faire » pour les utilisateurs configurés. Pas de spam pour les imports manuels.
- 🔖 3-way match avec bons de commande — la facture est rapprochée automatiquement au bon de commande Odoo (module
purchase). Message « Linked to purchase order » dans le chatter. Alerte â ï¸ « Amount differs from PO » si le montant facturé diffère du montant commandé. Dégradation gracieuse si le module purchase n'est pas installé. - 🔗 Génération automatique à la validation (option) — Factur-X créé au moment de la confirmation de la facture client, sans action manuelle.
- 🛡 Blocage préventif — si un motif d'exonération manque, si le XML n'est pas conforme XSD, le module refuse la génération avec un message clair. Aucun XML invalide ne sort du système.
- 📃 Traçabilité audit — email expéditeur, sujet, PDF source, XML extrait et hash SHA-256 conservés sur chaque facture pour répondre à un contrôle fiscal.
Le module en action
1. Configurez en 30 secondes (SIRET + profil)
2. Créez votre facture normalement
3. Cliquez → Factur-X généré et validé XSD automatiquement
4. Résultat : PDF/A-3 conforme avec XML intégré
Pour qui est ce module ?
PME / TPE
françaises B2B
Freelances
indépendants
Cabinets comptables
multi-clients
Intégrateurs Odoo
Community
Si vous utilisez Odoo Community en France, ce module est fait pour vous.
Pourquoi choisir ce module ?
Les modules gratuits :
- ✘ Ne garantissent pas la conformité
- ✘ Pas de validation XSD
- ✘ Pas de réception
- ✘ Pas de support
Ce module :
- ✔ Émission + réception complète
- ✔ Validation XSD automatique
- ✔ 14 tests automatisés de conformité
- ✔ Support réactif
Modules complémentaires (optionnels)
| facturx_chorus_pro 199 € HT |
Connecteur Chorus Pro pour le secteur public (B2G). Envoi via API PISTE, suivi de statut, service code et engagement juridique. |
| facturx_pdp À venir |
Connecteurs vers les PDP (Plateformes de Dématérialisation Partenaires) certifiées. |
Ce module génère et reçoit des fichiers au format Factur-X / EN 16931 conformes aux spécifications techniques publiées par le FNFE-MPE et la DGFiP.
La conformité complète à la réforme française 2026 implique également une transmission certifiée via une PDP (Plateforme de Dématérialisation Partenaire) immatriculée par l'État, des flux d'e-reporting, et une gestion des statuts de cycle de vie. Ces éléments ne sont pas couverts par ce module et relèvent d'une PDP ou d'un service tiers.
ModulesFR suit en continu l'évolution des spécifications et publie des mises à jour à chaque évolution des normes.
Détails techniques
| Compatible | Odoo Community 13, 14, 15, 16, 17, 18, 19 (7 versions supportées) |
| Dépendances Odoo | account, l10n_fr, base_vat, mail |
| Dépendances Python | factur-x, requests, phonenumbers |
| Émission | PDF/A-3 avec XML Factur-X EN 16931 intégré — 4 profils (Minimum, Basic WL, Basic, EN 16931) |
| Réception | PDF Factur-X, XML CII, XML UBL, ZIP — 4 canaux (manuel, email, dossier, API REST) |
| Standard | Factur-X 1.08 / EN 16931 / CII / UBL |
| Validation | XSD automatique contre schémas officiels Factur-X 1.08 (bloquante) |
| Matching fournisseur | 3 niveaux : SIRET, TVA intracommunautaire, nom |
| Codes TVA | UNTDID 5305 (S, Z, E, AE, K, G, O) avec motif d'exonération |
| Modes de paiement | UNTDID 4461 (virement, prélèvement, carte, etc.) |
| Unités | UN/ECE Rec 20 (40+ unités) |
| API REST | Authentification Bearer token, endpoints push + status |
| 3-way match | Rapprochement automatique facture ↔ bon de commande (optionnel, via module purchase) |
| Sécurité | Protection XXE, ZIP bomb (4 niveaux), hash SHA-256, isolation multi-société, token API |
| Tests | 32 tests automatisés de conformité + scénario manuel 16 tests |
| Architecture | Modulaire — Chorus Pro (B2G) dans un module séparé optionnel |
| Licence | LGPL-3 – code source inclus |
Installation
Étape 1 — Installer les dépendances Python
Le module a besoin de 3 librairies Python à installer dans l'environnement Python utilisé par Odoo :
factur-x | Génération du XML EN 16931 + embedding PDF/A-3 |
requests | Appels API (Chorus Pro, validation SIRET) |
phonenumbers | Dépendance Odoo 18+ (via account_peppol) |
Méthode recommandée (via le requirements.txt fourni) :
sudo -u odoo /opt/odoo/venv/bin/pip install -r requirements.txt
Méthode manuelle :
sudo -u odoo /opt/odoo/venv/bin/pip install factur-x requests phonenumbers
Cas Docker :
docker exec -it <nom_container_odoo> pip install factur-x requests phonenumbers
sudo systemctl cat odoo | grep ExecStartSi vous hébergez plusieurs versions d'Odoo, installez les libs dans chaque environnement Python séparément.
Étape 2 — Installer le module
- Placez le dossier
facturx_communitydans votre répertoire addons Odoo - Redémarrez votre serveur Odoo
- Apps → Mettre à jour la liste des Apps
- Recherchez « Factur-X » et cliquez sur Installer
- La configuration par défaut pour chaque société
- L'alias email
facturxpour la réception par email - Le cron de scan du dossier surveillé (toutes les 10 min)
processed/ (créé automatiquement pour archiver les fichiers traités).
sudo mkdir -p /tmp/facturx_watched /tmp/facturx_watched/processed sudo chown -R odoo:odoo /tmp/facturx_watched sudo chmod -R 755 /tmp/facturx_watchedSans ces droits, le cron plante avec
PermissionError: [Errno 13] Permission denied. Adaptez le chemin et le user Odoo à votre installation (ex : odoo16, odoo-user…).
Durée d'installation
5 à 10 minutes pour un intégrateur expérimenté. Le support est inclus sur les premières installations (packs intégrateur).
Please log in to comment on this module