La norme derrière chaque e-facture européenne
Si vous vous êtes renseigné sur la facturation électronique en Europe, vous avez probablement vu « EN 16931 » partout — dans les réglementations, les descriptions de logiciels, les listes de conformité. Mais la plupart des explications supposent que vous savez déjà de quoi il s'agit. Cet article l'explique depuis le début.
EN 16931 est une norme européenne qui définit quelles données une facture électronique doit contenir. Elle ne définit pas l'apparence visuelle de la facture. Elle ne spécifie aucun logiciel. Elle définit le modèle de données — l'ensemble spécifique de champs d'information qui rendent une e-facture valide et interopérable dans toute l'UE.
Pensez-y comme un vocabulaire partagé. Que vous soyez freelance à Berlin, petite entreprise à Lyon ou fournisseur du gouvernement néerlandais, EN 16931 garantit que les factures que vous envoyez peuvent être comprises et traitées par tout système conforme côté destinataire.
Pourquoi cette norme existe-t-elle ?
Avant EN 16931, chaque pays de l'UE — et souvent des secteurs individuels au sein de chaque pays — avait son propre format de facture. Une facture allemande ne ressemblait pas à une facture italienne au niveau des données. La facturation transfrontalière impliquait la saisie manuelle des données, la conversion de formats et des problèmes constants de compatibilité.
La Commission européenne a résolu ce problème en imposant une norme sémantique unique pour les e-factures dans le cadre de la directive UE 2014/55/UE. La norme a été développée par le CEN (Comité européen de normalisation) et publiée en 2017. Son titre complet est :
EN 16931-1:2017 — Facturation électronique — Partie 1 : Modèle sémantique de données des éléments essentiels d'une facture électronique
L'objectif était simple : définir un modèle de données unique accepté par tous les États membres, afin qu'une e-facture créée dans un pays puisse être traitée dans n'importe quel autre pays sans modification.
Ce que EN 16931 définit concrètement
EN 16931 est un modèle sémantique de données. Cela signifie qu'il définit le sens et la structure des données de facturation — les champs, leurs relations et les règles métier qui les régissent. Il ne définit ni la mise en page visuelle ni le format technique du fichier.
Voici ce que la norme couvre :
Champs au niveau du document
Chaque facture conforme doit inclure :
- Numéro de facture — unique dans le système du vendeur
- Date d'émission — date de création de la facture
- Code de type de facture — 380 pour une facture standard, 381 pour un avoir, et d'autres pour des cas spécifiques
- Code de devise — le code ISO 4217 (EUR, USD, GBP, etc.)
- Date d'échéance — date à laquelle le paiement est attendu (le cas échéant)
- Référence acheteur — une référence utilisée par l'acheteur pour identifier la transaction (par exemple un numéro de bon de commande)
Informations sur le vendeur
L'entreprise émettrice doit fournir :
- Raison sociale
- Adresse postale incluant le code pays
- Au moins un identifiant fiscal (numéro de TVA pour les entreprises européennes)
- Adresse électronique (généralement e-mail, identifiée par un code de schéma)
- Numéro d'immatriculation avec l'identifiant de schéma ISO 6523 correct pour le pays
Informations sur l'acheteur
Le client doit être identifié avec :
- Raison sociale
- Adresse postale incluant le code pays
- Numéro de TVA (obligatoire pour le B2B au sein de l'UE)
- Adresse électronique
Lignes de facture
Chaque entrée de bien ou service doit inclure :
- Description
- Quantité et unité de mesure (selon la recommandation UN/ECE 20 — « HUR » pour les heures, « DAY » pour les jours, « C62 » pour les unités)
- Prix unitaire (hors taxes)
- Total de la ligne
- Taux de TVA et code de catégorie de TVA
Récapitulatif de la TVA
Une ventilation de la taxe sur toutes les lignes :
- Base taxable par taux de TVA
- Montant de la taxe par taux de TVA
- Code de catégorie de TVA : « S » pour taux normal, « E » pour exonéré, « AE » pour autoliquidation, « Z » pour taux zéro
- Le pourcentage de TVA applicable
Totaux
- Somme de tous les montants nets des lignes
- Montant total de la TVA
- Total de la facture TVA comprise
- Montant dû
Informations de paiement
- Code de moyen de paiement (30 pour virement bancaire, 58 pour virement SEPA, 59 pour prélèvement SEPA)
- Coordonnées bancaires (IBAN, éventuellement BIC)
- Conditions de paiement ou date d'échéance
EN 16931 vs Factur-X vs ZUGFeRD vs UBL vs Peppol
C'est ici que la confusion commence. Voici comment tout s'articule :
EN 16931 est le modèle de données abstrait. Il indique quelles données doivent être présentes mais ne spécifie pas le format de fichier.
CII (Cross Industry Invoice) et UBL (Universal Business Language) sont les deux syntaxes XML dans lesquelles EN 16931 peut être exprimé. Ce sont des formats techniques différents qui transportent les mêmes données. La norme supporte officiellement les deux.
Factur-X / ZUGFeRD utilise la syntaxe CII. Il prend le XML et l'intègre dans un document PDF/A-3, créant une facture hybride.
Peppol BIS Billing 3.0 utilise principalement la syntaxe UBL. Il envoie le XML via le réseau de livraison Peppol sans enveloppe PDF.
XRechnung est la norme nationale allemande pour la facturation publique. Elle utilise la syntaxe UBL et ajoute des règles métier spécifiques à l'Allemagne par-dessus EN 16931.
La hiérarchie est donc :
- EN 16931 — le modèle de données (quels champs inclure)
- CII ou UBL — la syntaxe XML (comment structurer le fichier)
- Factur-X, Peppol BIS, XRechnung — des implémentations concrètes (comment livrer la facture)
Tous implémentent EN 16931. Si votre facture est conforme au profil EN 16931 de Factur-X, elle est conforme à EN 16931. Si elle est conforme à Peppol BIS Billing 3.0, également. Ce sont des chemins différents vers la même destination.
Les niveaux de profil
EN 16931 lui-même définit un seul niveau de conformité : soit une facture contient tous les champs obligatoires et respecte les règles métier, soit non. Il n'y a pas de « basique » ou « avancé » au sein de la norme.
Cependant, Factur-X définit des profils représentant des niveaux croissants de complétude des données :
- Minimum — numéro de facture, date, parties, total. Non conforme à EN 16931.
- Basic WL — ajoute la devise, la ventilation fiscale, les infos de paiement. Pas entièrement conforme.
- Basic — ajoute les lignes de facture. Proche mais pas entièrement conforme.
- EN 16931 — tous les champs obligatoires EN 16931. C'est l'objectif de conformité.
- Extended — ajoute des champs optionnels au-delà de EN 16931.
Si quelqu'un demande « votre facture est-elle conforme EN 16931 ? », il demande si elle atteint le profil EN 16931 ou supérieur.
Règles métier
EN 16931 n'est pas qu'une liste de champs. Il inclut des règles métier — des contraintes logiques que les données doivent satisfaire. Quelques exemples :
BR-CO-10 : La somme de tous les montants nets des lignes doit être égale au total des montants nets au niveau de la facture. En résumé : vos lignes doivent s'additionner correctement.
BR-CO-15 : Le total TTC de la facture doit être égal au total HT plus le montant total de la TVA. De l'arithmétique de base, mais les validateurs vérifient précisément, et les différences d'arrondi causent des échecs.
BR-S-08 : Si une ligne utilise la catégorie de TVA « S » (taux normal), le taux de TVA doit être supérieur à zéro.
BR-AE-01 à BR-AE-10 : Des règles pour les factures en autoliquidation. Si la catégorie de TVA est « AE », aucun montant de taxe ne doit être facturé, et la facture doit inclure un code de raison et une note spécifiques.
Il y a environ 150 règles métier au total. Des validateurs comme ceux d'ecosio ou FeRD les vérifient toutes. Un fichier XML structurellement valide qui viole une règle métier échouera quand même à la validation.
Pourquoi devriez-vous vous en soucier ?
Si vous êtes freelance ou dirigeant d'une petite entreprise, vous pourriez vous demander pourquoi une norme technique vous concerne. Voici pourquoi :
Obligation légale. Plusieurs pays de l'UE imposent des e-factures conformes à EN 16931. L'Allemagne, la France, la Belgique, la Pologne et d'autres déploient leurs obligations entre maintenant et 2028. Si vos factures ne respectent pas la norme, elles peuvent être refusées.
Paiements plus rapides. Les factures conformes à EN 16931 peuvent être traitées automatiquement par le système comptable du destinataire. Pas de saisie manuelle signifie pas de retards.
Simplicité transfrontalière. Une seule norme fonctionne dans tous les pays de l'UE. Vous n'avez pas besoin d'apprendre séparément les règles allemandes et françaises. Si votre facture est conforme EN 16931, elle fonctionne partout.
Pérennité. Avec l'avancement de ViDA (TVA à l'ère numérique), EN 16931 est le socle. Toute future obligation européenne de facturation électronique s'appuiera sur cette norme.
Comment savoir si votre facture est conforme
Le moyen le plus fiable est la validation. Plusieurs outils gratuits existent :
Le validateur en ligne ecosio vérifie la structure XML et les règles métier EN 16931. Téléchargez votre XML CII ou UBL et obtenez un retour immédiat.
Le validateur KoSIT (Allemagne) est l'outil officiel allemand de validation pour XRechnung et les autres formats EN 16931.
Chorus Pro (France) valide les factures soumises aux entités gouvernementales françaises.
Si vous utilisez Factur-X, le XML est intégré dans votre PDF. Vous devrez d'abord l'extraire, puis télécharger le XML vers un validateur.
Ce que les validateurs vérifient :
- Tous les champs obligatoires sont-ils présents ?
- Les valeurs sont-elles au bon format (dates, codes, montants) ?
- Les totaux sont-ils corrects ?
- Les règles métier sont-elles respectées ?
- L'identifiant de profil correct est-il présent dans le XML ?
Comment Facturwise gère EN 16931
Facturwise génère automatiquement des factures au profil EN 16931. Quand vous créez une facture, le système :
- Mappe vos données de facturation sur l'ensemble complet des champs obligatoires EN 16931
- Génère un XML CII valide avec l'identifiant de profil correct (
urn:cen.eu:en16931:2017#compliant#urn:factur-x.eu:1p0:en16931) - Intègre le XML dans un document PDF/A-3b avec les métadonnées XMP appropriées
- Attribue les identifiants de schéma ISO 6523 corrects selon le pays de chaque partie
- Calcule les récapitulatifs fiscaux et vérifie la cohérence arithmétique des totaux
Vous remplissez votre facture normalement — nom du client, lignes, montants — et la couche de conformité travaille en arrière-plan. Aucune configuration, aucune connaissance technique requise.
Vous n'avez pas besoin de mémoriser les règles métier ni d'apprendre la syntaxe XML. Facturwise mappe automatiquement vos données de facturation sur l'intégralité de la norme EN 16931 — chaque champ, chaque calcul, chaque validation — pour que vous puissiez vous concentrer sur votre travail plutôt que sur la conformité. Créez votre première facture conforme EN 16931 gratuitement.
