Profils ZUGFeRD et Factur-X : de MINIMUM à EXTENDED

Le profil détermine la quantité de données dans le XML — et si le fichier vaut seulement facture électronique. Deux des cinq n’en valent pas, tout en passant chaque contrôle.

Un profil ne dit pas si une facture est bonne, mais combien de données se trouvent dans son XML. Même page visible, même montant, même destinataire — et selon le profil le fichier porte une poignée de champs d’en-tête ou chaque ligne avec sa remise, son taux de TVA et son unité.

Le choix n’est pas cosmétique. Deux des profils ne valent pas facture électronique au regard de la TVA, alors même qu’ils passent tous les contrôles techniques. C’est par là que commence cette page.

Comment savoir de quel profil il s’agit

Le profil est inscrit dans le XML lui-même, dans le champ BT-24 (en syntaxe CII, GuidelineSpecifiedDocumentContextParameter). C’est une URN, et elle se lit dès qu’on sait quoi y chercher.

ProfilIdentifiant dans le XML
MINIMUMurn:factur-x.eu:1p0:minimum
BASIC WLurn:factur-x.eu:1p0:basicwl
BASICurn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic
EN 16931urn:cen.eu:en16931:2017
EXTENDEDurn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended
XRECHNUNGurn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0

Trois choses se lisent immédiatement :

  • urn:cen.eu:en16931:2017 est présent — ou non. Pour MINIMUM et BASIC WL, il ne l’est pas. Ces profils ne prétendent pas eux-mêmes suivre la norme.
  • #compliant# signifie CIUS, c’est-à-dire une restriction de la norme. Elle peut rendre des champs obligatoires, raccourcir des listes de codes, ajouter des règles — mais pas inventer de nouveaux champs. BASIC et XRECHNUNG sont construits ainsi.
  • #conformant# signifie une extension. Tout ce que porte la norme est là, plus des champs supplémentaires. EXTENDED est construit ainsi.

Les six profils en un coup d’œil

Échelle des profils de MINIMUM à EXTENDED, avec une ligne séparant MINIMUM et BASIC WL, qui ne valent pas facture électronique, de BASIC, EN 16931 et EXTENDED au-dessus
La ligne est tout l’intérêt de cette échelle : en dessous, il n’y a pas de facture électronique au sens de la TVA, aussi propre le fichier soit-il techniquement.
ProfilLignesVaut facture électronique ?Destiné à
MINIMUMnonnondonnées comptables pour traitement interne
BASIC WLnonnonen-tête avec remises, sans lignes détaillées
BASICoui, réduitesouifactures simples sans particularité
EN 16931oui, complètesouile cas courant en B2B
EXTENDEDoui, plus champs additionnelsouisituations que la norme ne modélise pas
XRECHNUNGoui, complètesouiacheteurs publics allemands

MINIMUM et BASIC WL : techniquement valides, juridiquement pas des factures

Le ministère allemand des Finances l’a acté dans sa circulaire du 15 octobre 2024 et confirmé en 2025 : ce qui est reconnu, c’est ZUGFeRD à partir de la version 2.0.1 à l’exception des profils MINIMUM et BASIC WL. La raison tient au fond, pas à la forme : ni l’un ni l’autre ne porte l’ensemble des mentions obligatoires sous forme lisible par machine. MINIMUM n’a que des données d’en-tête réduites ; BASIC WL n’a aucune ligne de facture — « WL » signifie without lines.

Pourquoi l’erreur est si facile. Un fichier MINIMUM n’est pas bâclé. Il passe la validation, il s’ouvre, il ressemble à une facture électronique — simplement, il n’en est pas une. C’est précisément ce qui rend l’erreur coûteuse : elle n’apparaît pas au moment de créer le fichier, mais chez le destinataire ou lors d’un contrôle. Qui cherche « le plus petit profil qui passe » cherche BASIC, pas MINIMUM.

À quoi servent donc ces deux profils ? Aux cas où aucune facture au sens juridique n’est émise : transmission interne de données comptables, pré-saisie, transport entre systèmes. MINIMUM ne porte même pas la ventilation de TVA — une entreprise assujettie ne peut pas émettre avec lui une facture régulière, ni en Allemagne ni en France.

BASIC — quand la facture est vraiment simple

BASIC est une CIUS de la norme : il rétablit les lignes de facture, mais avec un jeu de champs réduit. Pour une facture de quelques prestations à un seul taux, sans paliers de remise, sans adresse de livraison distincte et sans devise étrangère, cela suffit, et le destinataire peut la comptabiliser intégralement.

L’ennui est pratique plutôt que technique : dès qu’une opération sort du cadre, le champ nécessaire manque dans BASIC — et l’on s’en aperçoit une fois la facture émise. Si vous ne pouvez pas garantir que toutes vos factures resteront simples, EN 16931 est plus reposant.

EN 16931 — le cas courant

Ce profil est la norme européenne elle-même, sans restriction ni ajout. Il couvre tout le modèle sémantique de base : lignes avec quantité, unité et prix unitaire, remises et majorations au niveau ligne comme document, ventilation de TVA par taux et catégorie, conditions de paiement, adresse de livraison distincte, références à la commande et au contrat.

Dans les anciennes versions de ZUGFeRD, ce profil s’appelait COMFORT. Si vous croisez encore ce nom dans un manuel ou un contrat, c’est d’EN 16931 qu’il s’agit. Il a été renommé parce qu’un nom de fantaisie ne laissait pas deviner que c’est justement ce profil-là qui correspond à la norme.

En pratique, EN 16931 signifie que le destinataire reçoit tout ce qu’il lui faut pour comptabiliser automatiquement, et que le fichier passe l’ensemble des règles de gestion. C’est pourquoi c’est le choix par défaut chaque fois que rien d’autre n’est expressément exigé.

EXTENDED — et ce à quoi il ne sert pas

EXTENDED est une extension : tout EN 16931 plus des champs que la norme ne prévoit pas. Les cas typiques sont les renvois à des projets, des métrés et des contrats dans le bâtiment, les données d’emballage et de transport dans le négoce, des rôles de tiers supplémentaires dans les chaînes à plusieurs niveaux.

Une idée fausse très répandue : il faudrait EXTENDED pour plusieurs taux de TVA ou pour des remises. C’est faux. Plusieurs taux dans un même document, remises et majorations au niveau ligne et document, devise étrangère, avoirs — EN 16931 sait déjà tout cela. EXTENDED ne devient nécessaire que lorsqu’un destinataire réclame un champ que la norme ignore complètement.

Et cela se paie. Les champs supplémentaires ne sont compris que par un logiciel qui les connaît ; un destinataire qui contrôle strictement contre EN 16931 les ignorera au mieux. S’y ajoute ceci : le corrigendum ZUGFeRD 2.5.2 du 4 août 2026 a justement corrigé, dans le profil EXTENDED, des incohérences de règles de contrôle, d’arrondi et de ventilation de TVA — signe que c’est là que se logent les cas embrouillés. Prenez EXTENDED quand vous pouvez en donner la raison. Pas par précaution.

Le profil XRECHNUNG n’est pas la même chose qu’une XRechnung

Deux choses différentes sous des noms presque identiques :

  • XRechnung est un format à part entière — un fichier XML seul, sans PDF autour, la CIUS allemande de la norme, exigée par de nombreux acheteurs publics.
  • Le profil XRECHNUNG de ZUGFeRD est un PDF hybride dont le XML embarqué suit les règles de la XRechnung. Page visible et données structurées dans un seul document, avec le corpus de règles qu’attend l’acheteur public.

Si vous livrez des administrations allemandes, demandez lequel des deux est souhaité, et n’oubliez pas qu’un identifiant d’acheminement (BT-10) y est généralement exigé. Sans lui, la facture échoue sur une règle nationale allemande et non sur la norme — voir codes de règle.

Quels profils E-Rechnung Pro produit

Trois : BASIC, EN 16931 et EXTENDED, avec EN 16931 par défaut. Nous ne proposons délibérément ni MINIMUM ni BASIC WL — ils produiraient un fichier qui ressemble à une facture électronique sans en être une. Qui en a réellement besoin en a besoin pour un usage auquel notre chemin ne convient de toute façon pas.

Les fichiers reçus sont contrôlés dans tous les profils, XRechnung compris — le rapport nomme le profil détecté et contrôle contre son corpus de règles, pas contre un autre.

Questions fréquentes

Quel profil choisir si je n’en sais pas plus ?

EN 16931. Il correspond à la norme, il est accepté partout et il ne laisse manquer aucune mention. On choisit un autre profil quand quelqu’un le demande — pas de sa propre initiative.

Un destinataire peut-il imposer un profil ?

Oui, et les grands destinataires le font. C’est en général écrit dans la documentation fournisseurs ou le portail de commande. Si EXTENDED est exigé, demandez quel champ est réellement attendu — souvent il n’y en a qu’un, et parfois il se trouve qu’EN 16931 le possède aussi.

Comment connaître le profil d’un fichier reçu ?

Le rapport de contrôle le nomme. Pour regarder vous-même dans le XML, cherchez GuidelineSpecifiedDocumentContextParameter — la valeur est l’URN du tableau ci-dessus.

Les profils ZUGFeRD et Factur-X sont-ils les mêmes ?

Oui. Depuis ZUGFeRD 2.1 / Factur-X 1.0 ce sont les mêmes profils avec les mêmes identifiants ; les formats eux-mêmes sont deux noms pour une seule chose (voir Qu’est-ce que ZUGFeRD). L’ajout XRECHNUNG est la particularité allemande ; le côté français a ses propres exigences.

Puis-je changer le profil après coup ?

Pas dans le fichier fini — le profil détermine quels champs doivent être présents, et le renommer produit un document qui contredit son propre identifiant. Régénérez la facture dans le profil voulu.

Un profil plus élevé est-il toujours meilleur ?

Non. EXTENDED porte des champs que beaucoup de destinataires ne lisent jamais, et n’enrichit vos données que s’ils sont effectivement exploités. La valeur est dans la norme, pas au-dessus.

Et si j’ai déjà envoyé du BASIC avec des remises sur la facture ?

Contrôlez le fichier. S’il manque une mention exigée par la norme, le rapport le signale ; si le fichier passe les trois couches, il est valide. Pour la facture suivante, changez de profil — voir Contrôler une facture.

En résumé

  • Le profil se trouve dans BT-24 et il se lit : si urn:cen.eu:en16931:2017 est absent, le fichier ne suit pas la norme.
  • MINIMUM et BASIC WL ne sont pas des factures électroniques — techniquement valides, mais pas au regard de la TVA. Le plus petit profil utilisable est BASIC.
  • EN 16931 est le cas courant, autrefois appelé COMFORT. Sans raison particulière, prenez celui-là.
  • EXTENDED n’est pas un gage de qualité. Plusieurs taux et des remises relèvent déjà d’EN 16931 ; EXTENDED ne se justifie que pour des champs que la norme ignore.
  • Profil XRECHNUNG ≠ format XRechnung. Demandez d’abord à l’acheteur public, et pensez à l’identifiant d’acheminement.

Produire des factures dans le bon profil sans trier les champs à la main ? Créez un compte gratuit — ou contrôlez un fichier existant sans inscription pour voir quel profil s’y trouve réellement.