Référence Factur-X / EN16931

URN, XSD et Schematron Factur-X : la référence rapide

Comprendre les profils Factur-X, les URN EN16931, les schémas XSD et les règles Schematron sans confondre validation technique et acceptation Plateforme Agréée.

Page de référence destinée aux développeurs ERP et intégrateurs. Source : Factur-X 1.08 (co-publication FNFE-MPE / FeRD), norme EN16931-1:2017 (CEN/TC 434) et cadre français AIFE / impots.gouv.fr. Mise à jour : 14 mai 2026.

Ce que cette page permet de vérifier

Retrouver une URN, lire un GuidelineSpecifiedDocumentContextParameter, comprendre quel XSD/Schematron intervient et orienter ensuite votre debug.

Retrouver une URN de profil

Les cinq URN canoniques Factur-X 1.08 et la mention extended-ctc-fr française dans un tableau scannable.

Comprendre XSD vs Schematron

Deux couches distinctes : XSD vérifie la forme, Schematron vérifie le fond. Un XML peut passer l’une et échouer l’autre.

Distinguer EN16931 et France CTC

Le noyau EN16931 est européen. La France ajoute des contraintes (routage, cycle de vie) que le seul XML ne couvre pas.

Tableau des profils Factur-X 1.08

Chaque profil porte une URN distincte, embarquée dans le XML CII via le nœud GuidelineSpecifiedDocumentContextParameter/ram:ID. Le suffixe #compliant# signale un sous-ensemble strict d’EN16931 ; #conformant# signale une extension.

Profils Factur-X 1.08, URN canoniques, niveau de données et limites à connaître.
Profil Usage URN typique Niveau de données Attention / limite
MINIMUM Métadonnées de tête uniquement, sans détails ligne. Cas d’usage typique : archivage minimal, identification du document, parties et totaux. urn:factur-x.eu:1p0:minimum Vendeur, acheteur, identifiants document, totaux. Pas de lignes (BG-25 absent). Insuffisant pour la facturation B2B EN16931 stricte : le destinataire ne peut pas recomposer la facture à partir du XML seul.
BASIC WL Variante sans lignes (Without Lines). Identique à BASIC côté tête de facture mais sans détail des prestations. urn:factur-x.eu:1p0:basicwl Comme MINIMUM + montants TVA agrégés, conditions de paiement, instructions de règlement. Le profil n’est pas EN16931-compliant : il s’écarte volontairement du noyau sémantique pour rester léger.
BASIC Premier profil avec lignes de facture. Sous-ensemble EN16931 utile pour les flux simples B2B / B2C non complexes. urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:basic Tête + lignes (BG-25) + remises/charges document + ventilation TVA. Le suffixe « compliant » signale un sous-ensemble strict d’EN16931 ; certaines règles EN16931 ne s’appliquent pas hors champ.
EN16931 Couverture complète du noyau sémantique EN16931 (CEN/TC 434). Profil de référence pour la facture électronique européenne. urn:cen.eu:en16931:2017 Tête + lignes + ventilation TVA + remises/charges document et ligne + tous les champs sémantiques du noyau EN16931. Conforme au noyau EN16931 ne signifie pas accepté par une Plateforme Agréée : la PA peut imposer des contrôles ou compléments supplémentaires propres à son parcours.
EXTENDED Étend EN16931 avec des champs additionnels (logistique, douane, promotions, multi-remises, incoterms). urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended Surensemble d’EN16931. Compatible décodage par un lecteur strict EN16931, qui ignore les champs hors noyau. Le suffixe « conformant » signale une extension. Tous les destinataires ne consomment pas les champs étendus — vérifier ce que la PA et le destinataire savent lire.
EXTENDED CTC FR Extension française du parcours de facturation électronique (Continuous Transaction Controls). Mentionnée dans des contextes France 2026 et le socle interopérable Chorus Pro / PPF historique. urn:cen.eu:en16931:2017#conformant#urn.cpro.gouv.fr:1p0:extended-ctc-fr EXTENDED EN16931 + compléments France (routage, cycle de vie, données spécifiques au parcours français). Une URN « extended-ctc-fr » correcte ne vaut pas acceptation par une Plateforme Agréée. Le parcours réglementaire ajoute des contrôles que le seul XML ne couvre pas. Voir /france-ctc-en16931.

Source : FNFE-MPE — Factur-X (mise à jour 1.08 / ZUGFeRD 2.4 effective 15 janvier 2026) et schémas EN16931-3-* publiés par le CEN/TC 434. Les schémas XSD et règles Schematron sont accessibles via formulaire sur le site FNFE-MPE.

EN16931 : la norme européenne

La norme EN16931-1:2017 publiée par le CEN (Comité Européen de Normalisation, TC 434) définit le modèle sémantique commun de la facture électronique en Europe. Elle ne décrit pas un format mais un noyau de champs (BG-* et BT-*) et plus de 200 règles métier (BR-*).

Rôle de l’URN EN16931

urn:cen.eu:en16931:2017 identifie le noyau sémantique européen. Toute URN qui inclut #compliant# ou #conformant# se positionne par rapport à ce noyau.

Profil ≠ conformité EN16931

Un profil Factur-X est un format de packaging (PDF/A-3 + XML CII). La conformité EN16931 est une propriété sémantique du XML. MINIMUM et BASIC WL sont des profils Factur-X qui ne sont pas EN16931-compliant.

XSD ≠ Schematron

EN16931 est porté par deux couches distinctes : XSD (forme syntaxique du XML CII) et Schematron (règles métier BR-*). Les deux sont nécessaires, aucune ne se substitue à l’autre.

Schémas XSD : la couche structurelle

Factur-X est porté par CrossIndustryInvoice (CII), syntaxe UN/CEFACT publiée sous l’espace de noms urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100. Le XSD décrit la grammaire de ce XML.

Ce que le XSD détecte

  • • présence et ordre des éléments XML attendus ;
  • • cardinalité (un élément doit apparaître 0..1, 1..n, etc.) ;
  • • types primitifs (decimal, date, identifier) ;
  • • déclaration correcte des namespaces CII, RAM, UDT, QDT.

Ce que le XSD ne détecte pas

  • • cohérence arithmétique entre totaux et lignes ;
  • • règles conditionnelles selon la catégorie TVA ;
  • • validité d’un code (UNTDID, UNECE Rec 20, ISO 6523) au-delà du type ;
  • • règles France CTC propres au parcours.

Requêtes typiques liées au XSD Factur-X : CrossIndustryInvoice_100pD16B.xsd, en16931.xsd, minimum.xsd. Les fichiers sont publiés sous formulaire FNFE-MPE, et bundlés dans des librairies open source comme akretion/factur-x ou Mustang pour les développeurs.

Schematron : les règles métier BR-*

Schematron est un langage de validation par règles XPath, défini par ISO/IEC 19757-3. Pour EN16931, le CEN publie l’ensemble des règles métier sous forme de fichier Schematron (EN16931-CII-validation.sch), distinct du XSD.

Exemples de familles BR-*

  • BR-* (base) : champs obligatoires, formats (BR-02 numéro de facture, BR-05 devise) ;
  • BR-CO-* : règles de cohérence arithmétique (BR-CO-10 somme des lignes, BR-CO-15 total TTC) ;
  • BR-S-*, BR-Z-*, BR-AE-* : règles conditionnelles selon la catégorie TVA (Standard, Zero rated, Reverse charge) ;
  • BR-CL-* : conformité de codes face à leur codelist (BR-CL-23 codes unité UNECE Rec 20).

Règle européenne vs contrainte France

  • BR-* sans préfixe FR : règles européennes communes EN16931 ;
  • BR-FR-* : règles ajoutées dans le contexte français (parcours France CTC) ;
  • • Une règle BR-FR ne s’applique que si le profil ou la cible cible bien le parcours français — sinon elle est inerte.

Catalogue des codes EN16931 fréquents avec leur diagnostic et leur correction : voir la bibliothèque d’erreurs et le catalogue BR-* détaillé. Pour la mécanique XSD vs Schematron en pratique, lire Valider EN16931 / Factur-X : XSD vs Schematron, erreurs BR-*.

France CTC et EXTENDED-CTC-FR

Le parcours français (CTC, Continuous Transaction Controls) ajoute, par-dessus EN16931, des exigences de routage, de cycle de vie et de structure spécifiques au socle interopérable national. La mention extended-ctc-fr dans une URN signale qu’un profil étendu pour ce parcours est utilisé.

Ce qu’une URN extended-ctc-fr indique

  • • le profil étend EN16931 avec des champs jugés utiles au contexte français ;
  • • le document anticipe certains contrôles du parcours France CTC ;
  • • la déclaration GuidelineSpecifiedDocumentContextParameter pointe vers une autorité française (cpro.gouv.fr historiquement).

Ce qu’une URN correcte ne suffit pas à garantir

  • • une acceptation par une Plateforme Agréée (PA) ;
  • • un statut Solution Compatible (SC) pour un éditeur logiciel ;
  • • une transmission officielle, un archivage légal ou une certification fiscale.

Pour le découpage couche par couche (EN16931, profil Factur-X, packaging PDF/A-3, France CTC, parcours PA/SC), voir France CTC et EN16931.

Erreurs fréquentes liées aux URN, XSD et Schematron

URN profil incohérente avec le contenu XML

Symptôme : Le XML déclare « urn:factur-x.eu:1p0:minimum » mais contient des lignes (BG-25).

Explication : Le validateur peut signaler une non-conformité : le profil MINIMUM n’autorise pas les lignes. Aligner la déclaration GuidelineSpecifiedDocumentContextParameter sur le contenu réellement présent.

XSD OK mais Schematron KO

Symptôme : Le XML est syntaxiquement valide (XSD pass), mais une règle BR-CO-* ou BR-S-* échoue.

Explication : XSD vérifie la forme (types, cardinalité). Schematron vérifie le fond (cohérence arithmétique, conditions TVA, codes). Un XML peut passer la première couche et échouer la seconde — c’est la majorité des rejets EN16931.

EN16931 OK mais France CTC bloqué

Symptôme : Le validateur EN16931 répond « valide » mais la PA ou un contrôle France CTC rejette le document.

Explication : Le noyau EN16931 est européen, neutre du parcours. La France ajoute des contraintes (routage, cycle de vie, profils CTC-FR) que la conformité EN16931 seule ne couvre pas. Voir le découpage par couches sur /france-ctc-en16931.

schemeID incorrect sur BT-34 / BT-49 / BT-30

Symptôme : Les identifiants d’entreprise (vendeur, acheteur) sont présents mais codés avec un schemeID non aligné ISO 6523 (par exemple SIREN mal déclaré comme 0009 vs 0002).

Explication : Schematron BR-CL-* et règles France peuvent rejeter une codification non conforme. Vérifier la liste ISO 6523 et la convention française pour le SIREN/SIRET.

Confusion CII vs UBL

Symptôme : Un XML UBL Invoice est attaché à un PDF Factur-X, ou inversement.

Explication : Factur-X est porté par CrossIndustryInvoice (UN/CEFACT CII), pas par UBL. Les deux formats sont reconnus par EN16931 mais ne sont pas interchangeables dans le packaging Factur-X.

Sources et niveau d’autorité

FacturX API n’est ni une autorité fiscale ni le mainteneur officiel de Factur-X. Cette page agrège des références publiques en indiquant leur niveau d’autorité.