Format Factur-X : spécifications techniques
Le format Factur-X est le standard de facturation électronique retenu en France. Specifications techniques, profils, intégration et conformité.
Format Factur-X : spécifications techniques
Le format Factur-X est le standard de facturation électronique mixte retenu par la France et l’Allemagne pour la dématérialisation des factures entre entreprises. Il combiné un fichier PDF lisible par l’humain et un fichier XML structuré lisible par les systèmes d’information, dans un seul document PDF/A-3. Ce format est au coeur de la réforme de la facturation électronique obligatoire et constitue l’un des trois formats acceptés par le portail public de facturation. Cet article détaille les spécifications techniques, les différents profils, les exigences d’implémentation et les points d’attention pour les entreprises.
Origine et cadre normatif
Un standard franco-allemand
Factur-X est le fruit d’une collaboration entre le Forum National de la Facturation Electronique (FNFE-MPE) en France et le Forum elektronische Rechnung Deutschland (FeRD) en Allemagne. La première version a été publiée en 2017. Le standard est également connu sous le nom ZUGFeRD 2.0 en Allemagne. Les deux dénominations désignent le même format technique, avec des spécificités mineures de profils.
Conformité à la norme européenne EN 16931
Factur-X est conforme à la norme européenne EN 16931, adoptée par le Comité européen de normalisation (CEN) en exécution de la directive 2014/55/UE sur la facturation électronique dans le cadre des marchés publics. Cette norme définit un modèle semantique de données pour les éléments essentiels d’une facturé électronique. Factur-X implémenté ce modèle semantique dans un format mixte PDF/XML, conforme au standard technique UN/CEFACT Cross Industry Invoice (CII).
Le cadre réglementaire français
L’ordonnance n° 2021-1190 du 15 septembre 2021 et ses décrets d’application prévoient l’obligation de facturation électronique entre assujettis à la TVA. Le format Factur-X fait partie des formats acceptés par le portail public de facturation (PPF) et les plateformes de dématérialisation partenaires (PDP). Les autres formats acceptés sont le format UBL (Universal Business Language) et le format CII pur (sans enveloppe PDF). Pour le calendrier de mise en oeuvre, consultez notre article dédié.
Architecture technique du format
Le principe du format mixte
La spécificité de Factur-X réside dans son architecture mixte. Un seul fichier PDF/A-3 contient deux representations de la même facturé.
La représentation visuelle est le document PDF lui-même, lisible par tout utilisateur avec un lecteur PDF standard. Il contient la mise en page traditionnelle de la facturé (logo, adressés, tableau des lignes, totaux, mentions légales). Cette représentation permet la lecture humaine, l’impression et l’archivage visuel.
La représentation structurée est un fichier XML embarque dans le PDF en tant que pièce jointe conforme à la norme PDF/A-3. Ce fichier XML, nommé factur-x.xml, contient les données de la facturé dans un format structuré, lisible par les systèmes d’information. Il suit la syntaxe UN/CEFACT Cross Industry Invoice (CII).
Cette dualite présente un avantage considérable : le même document est exploitable par les humains (lecture du PDF) et par les machines (extraction automatique des données XML), sans conversion ni ressaisie. C’est la raison pour laquelle le format est dit “mixte” ou “hybride”.
Le standard PDF/A-3
Le conteneur PDF/A-3 (ISO 19005-3) est un format d’archivage à long terme qui autorise l’incorporation de fichiers de tout type en pièce jointe. Contrairement au PDF/A-1 et PDF/A-2, le PDF/A-3 permet d’embarquer le fichier XML structurant la facturé. Le respect de la norme PDF/A-3 est essentiel pour la validité du format Factur-X et pour la conservation des factures électroniques sur les durées légales.
Les exigences du PDF/A-3 incluent l’incorporation des polices de caractères, l’absence de contenu dynamique (JavaScript, vidéo), la présence de metadonnees XMP (Extensible Metadata Platform), et la conformité avec les profils de couleurs ICC.
La syntaxe XML CII
Le fichier XML embarque utilise la syntaxe UN/CEFACT Cross Industry Invoice (CII), définie par le schéma XML rsm:CrossIndustryInvoice. Ce schéma définit les éléments de données, leur cardinalite (obligatoire, conditionnel, facultatif) et leurs types. Les principaux blocs du schéma sont :
- ExchangedDocumentContext : contexte du document, identifiant du profil Factur-X utilise.
- ExchangedDocument : informations générales (numéro, date, type de document).
- SupplyChainTradeTransaction : corps de la facturé (parties, lignes, conditions de paiement, totaux, TVA).
Les profils Factur-X
Hierarchie des profils
Factur-X définit plusieurs profils correspondant à des niveaux croissants de détail dans les données XML. Chaque profil inclut les données du profil précédent et ajouté des éléments supplémentaires.
Le profil Minimum contient les données essentielles : numéro de facturé, date, vendeur (nom, adressé, SIREN), acheteur (nom, adressé, SIREN), montant total HT et TTC, devise, et référence de l’ordre d’achat. Ce profil est suffisant pour les besoins de l’administration fiscale et du PPF dans le cadre de l’e-invoicing.
Le profil Basic WL (Without Lines) ajouté les conditions de paiement, les informations bancaires, les références contractuelles et les totaux de TVA détaillés par taux, mais sans le détail des lignes de facturé.
Le profil Basic ajouté le détail des lignes de facturé : description, quantité, prix unitaire, montant, taux de TVA par ligne.
Le profil EN 16931 (ou Comfort) est le profil de conformité à la norme européenne. Il inclut l’ensemble des éléments obligatoires et conditionnels de la norme EN 16931, permettant l’interopérabilité européenne.
Le profil Extended ajouté des éléments supplémentaires non prévus par la norme EN 16931, utiles pour certains secteurs ou processus métier (informations logistiques, références spécifiques).
Choix du profil
Le choix du profil dépend du contexte d’utilisation. Pour la conformité avec le PPF dans le cadre de la réforme, le profil Minimum est le seuil requis. Toutefois, pour l’automatisation des processus comptables (rapprochement automatique des factures avec les bons de commande, intégration automatique dans le système comptable), les profils Basic ou EN 16931 sont nécessaires car ils contiennent le détail des lignes.
Les PDP et le PPF acceptent les trois formats (Factur-X, UBL, CII) et doivent convertir les formats si nécessaire. Le choix du profil doit être validé avec les partenaires commerciaux et la plateforme retenue.
Implémentation technique
Generation de factures Factur-X
La génération d’une facturé Factur-X impliqué plusieurs étapes techniques. D’abord, générer le fichier XML CII conforme au profil retenu à partir des données de facturation du système d’information. Ensuite, générer le fichier PDF de la facturé avec la mise en page souhaitée. Puis, convertir le PDF en PDF/A-3, en incorporant les polices et les metadonnees XMP. Enfin, incorporer le fichier XML en tant que pièce jointe du PDF/A-3 avec les metadonnees associées (relationship : “Alternative”, type MIME : “text/xml”).
Des bibliotheques open source facilitent cette génération. En Java, la bibliotheque Mustang (ZUGFeRD/Factur-X) gère l’ensemble du processus. En Python, la bibliotheque factur-x (anciennement facturx) permet la création et la lecture de fichiers Factur-X. En .NET, des bibliotheques comme ZUGFeRD-csharp sont disponibles.
Validation des factures Factur-X
Avant émission, chaque facturé doit être validée sur deux plans. La validation XML vérifié la conformité du fichier XML au schéma XSD du profil retenu et aux règles métier (Schematron). La validation PDF vérifié la conformité du conteneur PDF au standard PDF/A-3, incluant la présence et la bonne incorporation du fichier XML.
Des outils de validation sont disponibles : le validateur du FNFE-MPE, les validateurs fournis par les PDP, et des outils open source comme KoSIT Validator. La validation doit être intégrée dans le processus d’émission pour détecter les erreurs avant transmission.
Integration avec les ERP et logiciels comptables
L’intégration de Factur-X dans les systèmes existants nécessité des adaptations. Les ERP majeurs (SAP, Oracle, Sage, Cegid) proposent des modules ou des mises à jour supportant Factur-X. Les logiciels comptables doivent pouvoir extraire les données du fichier XML pour les intégrer automatiquement dans la comptabilité. Pour les TPE, des solutions simplifiées existent – consultez notre article sur la facturation électronique et les TPE.
Mentions obligatoires et conformité
Les mentions obligatoires de la facturé
Le format Factur-X doit intégrer les mentions obligatoires de la facturé électronique prévues par l’article 242 nonies A de l’annexe II au Code général des impôts, auxquelles s’ajoutent les mentions spécifiques à la réforme (numéro SIREN, adressé de livraison, catégorie de l’opération). Le profil Minimum couvre les mentions essentielles, mais les profils superieurs permettent d’inclure l’ensemble des mentions obligatoires de manière structurée.
La conformité fiscale
La validité fiscale de la facturé Factur-X dépend du respect de trois exigences cumulatives : l’authenticité de l’origine (l’identité de l’émetteur est garantie), l’intégrité du contenu (la facturé n’a pas été modifiée), et la lisibilité (la facturé peut être lue). Le format PDF/A-3 et la signature électronique ou la transmission via une PDP/PPF garantissent ces exigences. L’alternative de la piste d’audit fiable reste disponible pour les factures transmises hors du circuit PDP/PPF.
La conformité RGPD
Les factures Factur-X contiennent des données personnelles (noms, adressés, coordonnées des contacts, SIREN d’entrepreneurs individuels). Le traitement de ces données est soumis au RGPD. Les entreprises doivent documenter ce traitement dans leur registre, respecter les durées de conservation légales et les principes de minimisation. Pour une analyse complète, consultez notre article sur les données personnelles dans les factures et le RGPD ainsi que notre guide général sur la facturation électronique et le RGPD.
Interopérabilité et écosystème
Conversion entre formats
Le PPF et les PDP doivent assurer la conversion entre les formats acceptés (Factur-X, UBL, CII). Un émetteur utilisant Factur-X peut envoyer des factures à un destinataire dont le système attend du UBL, la plateforme assurant la conversion. Cette interopérabilité est un atout majeur de la réforme. Toutefois, les conversions entre profils (par exemple, d’un profil Minimum vers un profil EN 16931) ne sont pas possibles car les données manquantes ne peuvent pas être générées automatiquement.
Archivage à valeur probante
Le format PDF/A-3 est conçu pour l’archivage à long terme. La conservation des factures Factur-X doit respecter les durées légales (six ans en matière fiscale, dix ans en matière commerciale) et garantir l’intégrité du document pendant toute cette durée. Les systèmes d’archivage électronique (SAE) doivent supporter le format PDF/A-3 et conserver les fichiers XML embarques. Les obligations de conservation sont détaillées dans notre article dédié.
FAQ
Factur-X est-il obligatoire pour la facturation électronique en France ?
Factur-X n’est pas le seul format accepté. La réforme de la facturation électronique accepté trois formats : Factur-X (PDF/A-3 + XML CII), UBL (XML Universal Business Language) et CII pur (XML UN/CEFACT sans enveloppe PDF). Le choix du format dépend des capacités techniques de l’émetteur et du recepteur, et la plateforme (PPF ou PDP) assure la conversion si nécessaire. Factur-X est néanmoins le format le plus accessible pour les entreprises car il conservé la représentation visuelle PDF familiere tout en ajoutant les données structurées.
Quel profil Factur-X choisir pour mon entreprise ?
Le choix dépend de vos objectifs. Le profil Minimum est suffisant pour la conformité réglementaire de base. Le profil Basic est recommandé si vous souhaitez permettre l’intégration automatique des lignes de facturé dans le système comptable de vos clients. Le profil EN 16931 est le choix optimal pour l’interopérabilité européenne et l’automatisation complète. Le profil Extended n’est nécessaire que pour des besoins sectoriels spécifiques. En cas de doute, le profil Basic constitue un bon compromis entre simplicité et fonctionnalité.
Comment valider qu’un fichier Factur-X est conforme ?
La validation passe par deux niveaux. La validation PDF/A-3 vérifié que le conteneur respecte la norme ISO 19005-3 (outils : veraPDF, Adobe Preflight). La validation XML vérifié que le fichier factur-x.xml est conforme au schéma XSD et aux règles Schematron du profil déclaré (outils : validateur FNFE-MPE, KoSIT Validator). La validation doit être intégrée dans le processus de génération et exécutée avant chaque émission. Les PDP proposent généralement un service de validation intègre. Le site du FNFE-MPE fournit les schémas et les outils de référence.