Factur-X, UBL et CII sont les trois formats du socle de la facture électronique française. Un dirigeant qui demande « quel est le nouveau format » attend souvent un seul fichier. Il y en a trois, et ils ne se lisent pas de la même façon. Le calendrier, lui, est déjà écrit ailleurs : réception depuis le 1er septembre 2026, émission des PME au 1er septembre 2027.
Ce guide dit ce que chaque format contient, ce qu'Odoo produit vraiment, et pourquoi coller un PDF dans un convertisseur ne fabrique pas une facture du socle. Le raccordement — référentiel, sortie, réception — est décrit sur la page Odoo et la facture électronique. JAIKIN est une agence Odoo, près de Strasbourg. L'agence n'est pas une plateforme agréée.
Les dates et les amendes sont dans le guide des échéances et des amendes. Le choix de l'opérateur est dans le guide pour choisir une plateforme agréée quand l'ERP est déjà là. Ici, le sujet est le fichier.
Qu'est-ce que Factur-X, et comment la reconnaît-on ?
Factur-X est le standard franco-allemand de facture mixte. Le FNFE-MPE, page consultée le 28 septembre 2026, le présente comme le même standard que ZUGFeRD. La version publiée le 4 août 2026 est Factur-X 1.09.2, alignée sur ZUGFeRD 2.5.2. L'humain voit un PDF. Le logiciel lit un XML joint.
Techniquement, le PDF suit la norme ISO 19005-3 (PDF/A-3). Le XML s'appelle factur-x.xml et utilise la syntaxe UN/CEFACT CII. Ouvrir le fichier dans un lecteur montre la facture imprimable. Cela ne prouve pas que l'XML est là. On reconnaît une Factur-X à la pièce jointe, ou à la pastille de profil que le FNFE fournit, pas à la mise en page.
Le FNFE liste cinq profils de données : MINIMUM, BASIC WL, BASIC, EN 16931 et EXTENDED. MINIMUM correspond, selon le même texte, aux données d'en-tête et de pied, du niveau d'une extraction. BASIC ajoute les lignes essentielles. EN 16931 vise la norme sémantique européenne. EXTENDED ajoute des données. Un profil pauvre reste un Factur-X. Il ne permet pas un rapprochement ligne à ligne.
Que signifie UBL ?
UBL signifie Universal Business Language. La norme AFNOR XP Z12-012, dans le dossier hébergé par impots.gouv.fr (page modifiée le 2 juillet 2026), retient la syntaxe XML ISO/IEC 19845, c'est-à-dire OASIS UBL 2.1. Il n'y a pas de PDF. Le fichier est du XML. Un éditeur de texte l'ouvre. Un lecteur de factures le rend lisible. Un double-clic qui ne montre qu'une page blanche indique souvent que l'association de fichier manque, pas que le fichier est vide.
CII signifie Cross Industry Invoice. La même norme retient UN/CEFACT CII, modèle SCRDM, en version de langage D22B pour la réforme. Factur-X embarque cette syntaxe CII dans le PDF. UBL est l'autre syntaxe, sans habillage PDF. Confondre « le XML » et « le format » mélange les trois. Un CII seul n'est pas une Factur-X. Une Factur-X n'est pas un UBL.
Quel est le format de socle, et est-il obligatoire ?
Il n'y a pas un format de socle. Il y en a trois. Le texte AFNOR publié via impots.gouv.fr le dit : UBL, CII et Factur-X constituent le socle du message Facture. Chacun implémente deux profils de données pour la France : EN 16931, présenté comme une CIUS française de la norme européenne, et EXTENDED-CTC-FR, une extension française. La page des spécifications externes renvoie à la norme XP Z12-012 pour ces formats, et à XP Z12-014 pour les cas d'usage.
Factur-X n'est donc pas « le » format obligatoire à l'exclusion des deux autres. Le FNFE écrit qu'il est l'un des trois formats du socle minimal, obligatoire en réception pour les entreprises et les plateformes agréées. Une entreprise qui reçoit doit pouvoir prendre les trois. Une entreprise qui émet en produit un, celui que sa plateforme et son ERP sortent proprement. Imposer Factur-X à un client qui lit l'UBL, ou l'inverse, n'est pas une exigence du socle.
Les profils MINIMUM, BASIC WL et BASIC existent dans Factur-X. Ils ne sont pas les deux profils que le texte AFNOR place au cœur du socle. JAIKIN ne les choisit pas par confort d'affichage. Quand la facture naît dans Odoo, les lignes, la taxe et le SIREN sont déjà saisis : les appauvrir dans un MINIMUM, c'est jeter ce que l'ERP sait. Le profil de sortie se décide au paramétrage, pas dans un convertisseur en bout de chaîne.
Qui est soumis, sans refaire le calendrier ?
La documentation Odoo 19.0 résume la réforme comme elle s'applique aux sociétés assujetties en France : réception pour toutes au 1er septembre 2026, émission et e-reporting des grandes entreprises et des ETI à la même date, puis des PME et micro-entreprises au 1er septembre 2027. Le détail des tailles et des amendes n'est pas repris ici. Une facture entre deux assujettis établis en France relève de ce circuit. Une vente à un particulier ou une opération transfrontalière non.
La même documentation exclut les opérations exonérées des articles 261 à 261 E. Ce n'est pas un format : c'est le champ de la réforme. Si une ligne du groupe est dans ce cas, on le fait qualifier par l'expert-comptable avant de la pousser sur le réseau. Le format ne crée pas l'obligation, et il ne l'efface pas.
Que produit Odoo : réception, émission, contrôles ?
La documentation France d'Odoo 19.0, consultée le 28 septembre 2026, est explicite. Le module France - E-Invoicing (nom technique l10n_fr_pdp) sert à émettre et recevoir via la plateforme agréée d'Odoo. Odoo reçoit des documents en Factur-X, UBL et CII. Il les envoie exclusivement en UBL. JAIKIN s'aligne sur cette phrase, pas sur une plaquette qui promettrait les trois formats en sortie.
Conséquence pour un dirigeant : un client qui exige « le PDF Factur-X » ne le recevra pas de cette émission Odoo. Il recevra de l'UBL. S'il a besoin du lisible, c'est un autre flux, à trancher avec la plateforme, pas en renommant un PDF. Le module inscrit aussi l'entreprise sur Peppol une fois l'enregistrement au réseau fait. Ce n'est pas une seconde inscription à lancer à la main.
L'enregistrement, toujours selon cette page, passe par l'e-mail d'un représentant légal, une vérification d'identité, puis la signature d'une attestation de désignation de plateforme agréée. Le champ Identifier doit contenir le SIREN. L'annuaire devient effectif le lendemain. JAIKIN ne signe pas cette attestation à la place du dirigeant : c'est son nom, sa pièce, son SIREN. Nous préparons la société dans Odoo pour que le SIREN affiché soit le bon avant qu'il ne clique.
L'ordre de paramétrage avant le premier envoi
La page d'offre décrit cinq chantiers, et le format n'est que le deuxième : référentiel des tiers, format de sortie, flux entrant, statuts, piste d'audit. Sur le format, la documentation Odoo ajoute un ordre plus court, que nous ne sautons pas. Le connecteur n'est pas le premier geste. Une fiche sans identifiant d'entreprise échoue au contrôle « Verify », avant même que l'UBL ne parte.
- Société française : pays du client à France, identifiant d'entreprise (SIREN) renseigné. Odoo le recopie dans l'adresse électronique FRCTC.
- Bouton Verify sur la fiche. Le libellé attendu est « Partner is in the annuaire ». Sans cela, pas d'envoi.
- Chaque ligne de facture porte au moins un produit ou un libellé, et exactement une taxe. Deux taxes sur la même ligne, ou aucune, bloquent l'envoi documenté.
- Facture confirmée : le statut de facturation électronique passe à « Ready to send ». L'envoi se fait avec l'option French E-Invoicing, pas avec un simple PDF joint.
- Après envoi, le statut « Done » confirme la remise à la plateforme du client. Une erreur de l'administration s'écrit dans le chatter. On la lit. On ne renvoie pas à l'aveugle.
Les factures fournisseurs arrivent en brouillon, plusieurs fois par jour, dans le journal d'achats choisi à la configuration. Les confirmer ou les refuser avec un code motif fait partie du flux, pas d'une seconde saisie. Le détail des statuts et de la plateforme se lit dans le guide déjà cité. Ici, le point de format est celui-ci : ce qui entre peut être du Factur-X, de l'UBL ou du CII. Ce qui sort, avec ce module, est de l'UBL.
| Fichier | Ce qu'un humain ouvre | Données | Chez Odoo 19, module l10n_fr_pdp |
|---|---|---|---|
| Factur-X | PDF/A-3 | factur-x.xml en CII, profils MINIMUM à EXTENDED | Reçu. Pas le format d'émission documenté |
| UBL 2.1 | XML | Syntaxe OASIS, profils EN 16931 et EXTENDED-CTC-FR | Reçu, et seul format d'envoi documenté |
| CII D22B | XML | UN/CEFACT, mêmes profils français | Reçu. Pas le format d'émission documenté |
| PDF simple | Aucune, ou un texte non structuré | Ni émission ni réception du socle |
Besoin d'un accompagnement expert ?
Un diagnostic gratuit de 30 minutes pour analyser vos besoins et vous proposer une solution sur mesure.
Peut-on convertir un PDF en Factur-X ou en UBL ?
Un PDF simple est une image de la facture. Factur-X exige un PDF/A-3 et un factur-x.xml cohérent avec ce PDF. UBL exige un XML complet, sans page à côté. Renommer le fichier, ou l'importer dans un outil qui « devine » les cases, produit au mieux un en-tête. Le FNFE compare justement le profil MINIMUM à une extraction d'en-tête et de pied. Ce n'est pas le contenu qu'un acheteur rapproche à la commande.
JAIKIN refuse ce chantier quand la facture est déjà née dans Odoo. La bonne opération est de régénérer l'UBL depuis la pièce comptable, après les cinq contrôles ci-dessus. Passer par le PDF, c'est perdre la taxe unique par ligne, le SIREN et le lien avec le bon de livraison. La piste d'audit du code général des impôts relie la facture à l'opération. Un XML recollé sur un PDF ne la reconstitue pas.
Une facture fournisseur encore en PDF, parce que l'émetteur n'est pas au format, reste un PDF. On ne la convertit pas en UBL. On la saisit, ou on la laisse dans le circuit encore ouvert pour cet émetteur, et on branche la réception structurée pour ceux qui émettent déjà. Le guide e-reporting couvre les flux qui ne sont pas des factures entre assujettis français.
Et un tableur ?
Un tableur peut encore sortir un PDF qui porte les mentions d'une facture, tant que l'entreprise n'est pas tenue d'émettre au format électronique. Pour une PME, cette échéance est le 1er septembre 2027. Ce PDF n'est pas Factur-X, ni UBL, ni CII. Le jour de l'échéance, le circuit entre assujettis français passe par une plateforme agréée. Le tableur ne devient pas illicite pour autant comme brouillon interne. Il cesse d'être le canal d'émission.
Quand les factures naissent dans le tableur et qu'Odoo ne tient que le stock, le sujet n'est pas le format. C'est l'endroit où la facture naît. La page d'offre le dit : ramener la facture dans l'ERP coûte moins que deux raccordements. Nous le chiffrons après l'état des lieux : dès 2 000 € pour un raccordement, 8 000 à 25 000 € pour une intégration. La réponse au premier message se fait sous 24 h.
Ce que nous voyons en intégration
Le piège le plus fréquent n'est pas le sigle. C'est un PDF que l'équipe appelle déjà Factur-X parce qu'il « a l'air officiel ». Nous ouvrons les pièces jointes. S'il n'y a pas de factur-x.xml, nous le disons, et nous ne paramétrons pas une réception sur une impression. Le deuxième piège est l'inverse : exiger d'Odoo une émission Factur-X alors que la 19.0 documente l'UBL seul en sortie. Promettre les trois formats en émission contredit la page de l'éditeur.
Troisième piège, sur les lignes. La règle « exactement une taxe par ligne » casse les factures où une remise, un éco-participation et la TVA ont été empilés sur la même ligne pour « faire tenir le PDF ». Nous séparons les lignes avant le premier envoi de test. Ce n'est pas un détail de mise en page. C'est la condition documentée pour que le statut passe à Ready to send.
EBMC, au Luxembourg, est client Odoo de JAIKIN. Cela établit un socle Odoo, pas un flux Factur-X : une société luxembourgeoise ne se règle pas avec le module France. Pour une PME française, le paramétrage se fait dans Odoo, par une agence Odoo en France. Les taxes se lisent dans l'avis sur Odoo Comptabilité. Nous ne mélangeons pas un avis de module et un format.
Enfin, nous ne lançons pas l'envoi le jour où le représentant légal signe l'attestation. L'annuaire est effectif le lendemain, d'après la documentation. Un test le soir même échoue pour une raison administrative, et l'équipe conclut à tort que le format est faux. L'ordre reste : SIREN juste, inscription, nuit, puis une facture réelle vers un client déjà dans l'annuaire.
Questions fréquentes
Qu'est-ce que le format Factur-X ?
Factur-X est le standard franco-allemand de facture mixte, identique à ZUGFeRD selon le FNFE-MPE (page consultée le 28 septembre 2026). Le lecteur affiche un PDF/A-3. Une pièce jointe nommée factur-x.xml porte les données en syntaxe CII. La version publiée le 4 août 2026 est la 1.09.2. C'est l'un des trois formats du socle, avec UBL et CII, pas le seul. Un PDF sans cette pièce jointe n'est pas une Factur-X, quelle que soit sa mise en page.
Que signifie UBL, et comment ouvre-t-on le fichier ?
UBL signifie Universal Business Language. Pour la réforme française, la norme AFNOR XP Z12-012 retient OASIS UBL 2.1, syntaxe XML ISO/IEC 19845. Le fichier s'ouvre dans un éditeur XML ou un outil de facture, pas dans un lecteur PDF. CII, Cross Industry Invoice, est l'autre syntaxe XML, en version UN/CEFACT D22B. Factur-X embarque du CII dans un PDF. UBL n'a pas cet habillage. Confondre les trois produit des rejets que le réseau n'explique pas.
Factur-X est-il obligatoire ?
Non comme unique format. Le socle comprend Factur-X, UBL et CII. Le FNFE-MPE indique que Factur-X est obligatoire en réception, au même titre que les deux autres : une plateforme et une entreprise qui reçoivent doivent les accepter. À l'émission, l'entreprise en produit un. Avec le module français documenté en Odoo 19.0, la sortie est l'UBL, pas Factur-X. Exiger Factur-X en émission parce que « c'est le format français » contredit cette documentation.
Peut-on transformer un PDF en Factur-X ou en UBL ?
Pas de façon fiable. Un PDF simple n'a pas de factur-x.xml, et un UBL est un XML complet, pas une page scannée. Une extraction automatique se rapproche du profil MINIMUM, que le FNFE compare à un en-tête. JAIKIN ne convertit pas le PDF quand la facture est née dans Odoo : l'UBL se régénère depuis la pièce, après contrôle du SIREN, de l'annuaire et d'une seule taxe par ligne. Recoller un XML sur une impression casse la piste d'audit.
Quel format Odoo envoie-t-il ?
La documentation Odoo 19.0, consultée le 28 septembre 2026, indique une réception en Factur-X, UBL et CII, et un envoi exclusivement en UBL, via le module l10n_fr_pdp et la plateforme agréée d'Odoo. L'inscription Peppol suit cet enregistrement, sans démarche séparée. JAIKIN paramètre cette sortie. JAIKIN n'est pas la plateforme. Le statut attendu avant envoi est Ready to send, puis Done quand la plateforme du client a reçu la facture.
Un tableur suffit-il pour facturer ?
Un tableur peut produire un PDF avec les mentions d'une facture tant que l'entreprise n'a pas l'obligation d'émettre au format électronique. Pour une PME, cette date est le 1er septembre 2027. Ce PDF n'est ni Factur-X, ni UBL, ni CII. À l'échéance, l'émission entre assujettis établis en France passe par une plateforme agréée. Le tableur peut rester un brouillon. Il n'est plus le canal. Si les factures naissent hors d'Odoo, le chantier est de les y ramener, pas de convertir le fichier.

