La TVA est la partie de la facture électronique sur laquelle échouent la plupart des fichiers — et presque jamais parce qu’un montant serait faux. Ils échouent parce que « 0 % » n’explique rien dans la partie structurée : la norme veut savoir quelle catégorie, quel taux et, lorsque rien n’est taxé, pourquoi.
Ceci est une orientation, pas un conseil fiscal. Qu’une opération relève de l’autoliquidation, soit exonérée ou hors champ de la TVA dépend du cas. Ce qui suit est la question d’après : comment ce que votre conseil a établi est-il correctement représenté dans le fichier ?
Trois champs, pas un
Dans une facture conforme à l’EN 16931, la TVA figure à trois endroits, régulièrement confondus :
| Donnée | Sur la ligne | Dans la ventilation (BG-23) |
|---|---|---|
| Code catégorie | BT-151 | BT-118 |
| Taux en pourcentage | BT-152 | BT-119 |
| Motif d’exonération | — | BT-120 (texte) ou BT-121 (code) |
Le code catégorie n’est pas le taux. Un taux à zéro peut signifier : exonéré, autoliquidation, livraison intracommunautaire, exportation ou hors champ de la TVA — cinq situations distinctes, cinq codes distincts et des champs obligatoires différents. Écrire « exonéré » dans le texte de la facture et mettre le taux à 0 ne suffit donc pas.
Chaque combinaison de code et de taux forme en outre son propre groupe BG-23. Plusieurs taux sur une même facture ne sont pas un cas particulier et n’exigent aucun profil EXTENDED : l’EN 16931 le fait déjà.
Les codes de catégorie en un coup d’œil
La norme connaît neuf codes en tout. Sept figurent ci-dessus ; s’y ajoutent L et M pour l’IGIC des Canaries et l’IPSI de Ceuta et Melilla — hors d’Espagne, presque jamais.
Une confusion d’abord, car elle traverse beaucoup de guides : le code de la livraison intracommunautaire est K. Les règles de gestion correspondantes s’appellent BR-IC-*. « IC » n’est pas un code catégorie mais le nom de la famille de règles — inscrire « IC » dans le champ produit un fichier qui échoue face à la liste de codes.
Autoliquidation : code AE
En autoliquidation, la taxe est due par le preneur et non par le prestataire (en Allemagne § 13b UStG ; en droit de l’Union, les articles 194 et suivants de la directive TVA). Dans le XML, cela veut dire :
- Code catégorie AE sur la ligne et exactement un groupe AE dans la ventilation (BR-AE-01).
- Taux 0 (BR-AE-05) et montant de taxe 0 (BR-AE-09).
- Un motif d’exonération : soit le code
VATEX-EU-AEen BT-121, soit le texte « Reverse charge » en BT-120 (BR-AE-10). - Les deux parties identifiées : le numéro de TVA ou d’immatriculation fiscale du vendeur et le numéro de TVA de l’acheteur (BR-AE-02). C’est la condition qui bloque le plus souvent.
Sur la page visible, la mention obligatoire reste exigée : en Allemagne « Steuerschuldnerschaft des Leistungsempfängers » au titre du § 14a (5) UStG, les formulations d’autres langues officielles — « Autoliquidation », « Reverse charge » — étant admises. Aucun montant de taxe n’y est indiqué.
Le piège coûteux : celui qui fait quand même apparaître la TVA la doit, en Allemagne au titre du § 14c (1) UStG, tandis que le destinataire ne peut pas la déduire. Un seul champ mal renseigné coûte de l’argent des deux côtés.
Livraison intracommunautaire : code K
Les livraisons de biens entre entreprises de différents États membres sont exonérées lorsque les conditions de l’article 138 de la directive TVA sont réunies. Le code est K, le taux et le montant de taxe sont nuls, et un motif d’exonération est obligatoire — VATEX-EU-IC ou le texte correspondant (BR-IC-10).
Deux champs facultatifs ailleurs deviennent ici impératifs, et aucun des deux ne se trouve du côté des montants : tous deux concernent la livraison.
- La date de livraison effective (BT-72) ou la période de facturation (BG-14) ne doit pas être vide (BR-IC-11).
- Le pays de livraison (BT-80) ne doit pas être vide (BR-IC-12).
- S’y ajoutent le numéro de TVA du vendeur et celui de l’acheteur (BR-IC-02).
C’est précisément pour cela que ces factures échouent plus souvent que les autres : tenir les données de livraison pour un détail produit un fichier juste au centime près et refusé quand même. L’emplacement de ces champs dans l’arbre est décrit dans la structure du XML.
Côté fiscal s’ajoute ce qu’aucun validateur ne peut vérifier : depuis les « quick fixes » du 1er janvier 2020, un numéro de TVA valide de l’acquéreur et un état récapitulatif déposé dans les délais sont des conditions de fond de l’exonération, et non de simples formalités. Si l’un des deux manque, l’exonération tombe, même si les biens ont manifestement franchi la frontière.
Exonéré (E) — et le petit assujetti
E et Z sont sans cesse confondus. Z est le taux zéro sur des biens et ne doit porter aucun motif d’exonération (BR-Z-10). E est la véritable exonération et doit en porter un (BR-E-10). Coder une opération exonérée en Z donne un fichier formellement valide qui dit la mauvaise chose — le validateur se tait, l’administration non.
Pour la franchise en base de TVA, l’équivalent français du régime allemand des « Kleinunternehmer », c’est E qui s’impose. En Allemagne, ces opérations sont expressément exonérées depuis le 1er janvier 2025 (auparavant la taxe n’était « pas perçue »), avec de nouveaux seuils : 25 000 € de chiffre d’affaires l’année précédente et 100 000 € l’année en cours, dont le dépassement fait basculer immédiatement. Dans le fichier :
- Code catégorie E, taux 0, montant de taxe 0.
- Comme motif, un texte en BT-120 renvoyant à la disposition applicable. Aucun code VATEX n’est prévu pour ce cas.
- Sans numéro de TVA, le numéro fiscal suffit : BR-E-02 accepte BT-31, BT-32 ou BT-63.
Cette mention n’est pas une politesse mais une donnée obligatoire — en Allemagne au titre du § 34a UStDV. La même disposition dispense ces entreprises d’émettre au format structuré : papier et PDF simple restent admis. Elles doivent néanmoins recevoir les factures électroniques — obligation générale depuis le 1er janvier 2025, voir les échéances par pays.
Depuis 2025 existe aussi une variante transfrontalière : via la procédure de déclaration particulière du § 19a UStG, l’office fédéral allemand des impôts attribue un numéro d’identification de petite entreprise portant le suffixe « EX », qui permet d’utiliser la franchise dans d’autres États membres — pour un chiffre d’affaires de 100 000 € au plus dans l’Union.
Vérifier le numéro de TVA avant d’envoyer la facture
Formellement, la norme ne contrôle que le préfixe : BR-CO-09 exige deux lettres selon l’ISO 3166-1 alpha-2. En regardant les règles de contrôle, on voit que la liste admise contient plus que prévu — outre GR, également EL pour la Grèce et XI pour l’Irlande du Nord. Que le numéro existe, personne ne le vérifie à ce stade.
Pour cela, deux voies, qui ne se valent pas :
- VIES, l’interrogation auprès de la Commission européenne, répond : valide ou non.
- La confirmation qualifiée auprès de l’office fédéral allemand des impôts (BZSt), au titre du § 18e UStG, compare en plus la raison sociale avec la forme juridique, la ville, le code postal et la rue aux données enregistrées. La réponse se limite à « correspond » ou « ne correspond pas », et une interrogation simple doit la précéder.
La différence devient concrète en cas de contrôle : la doctrine administrative allemande désigne, à sa section 18e.1 (2), le résultat du BZSt comme ce qui doit être conservé — impression, fichier ou enregistrement repris dans le système. Aucune disposition de ce genre ne vise une capture d’écran de VIES. Qui vérifie beaucoup de numéros utilise l’interface du BZSt plutôt que le formulaire.
En pratique : vérifier à la création du client, noter la date, et recommencer pour les relations suivies — un numéro devient invalide sans que personne ne prévienne.
Ce qui tourne mal le plus souvent
| Erreur | Ce que signale le contrôle |
|---|---|
| Taux 0 avec E, AE, K, G ou O, mais aucun motif d’exonération | BR-E-10, BR-AE-10, BR-IC-10, BR-G-10, BR-O-10 |
| Motif d’exonération renseigné sur S ou Z | BR-S-10, BR-Z-10 |
| AE posé, mais le numéro de TVA de l’acheteur manque | BR-AE-02 |
| K sans date de livraison ni pays de livraison | BR-IC-11, BR-IC-12 |
| « Hors champ » avec d’autres groupes sur une même facture | BR-O-11 à BR-O-14 |
| Montant de taxe par groupe non arrondi à deux décimales | BR-CO-17, BR-S-09 |
Les cas d’arrondi méritent leur propre chapitre — pourquoi un centime d’écart bloque une facture entière est expliqué dans les règles de gestion.
Une erreur ne figure dans aucune règle et reste la plus dangereuse : la page visible affiche la TVA alors que le XML dit autoliquidation. La circulaire du ministère allemand des finances du 15 octobre 2025 précise que, dans les formats hybrides, la partie structurée prévaut — un écart met en cause la déduction. Aucun contrôle ne le signale, puisque chaque partie est correcte prise isolément.
Ce qu’E-Rechnung Pro sait faire ici
Contrôler : tout cela. Le validateur exécute le Schematron de la norme, donc aussi les familles BR-AE-*, BR-IC-*, BR-E-*, BR-G-* et BR-O-*. Pour une facture reçue en autoliquidation ou en livraison intracommunautaire, c’est le chemin le plus court vers la question qui compte : le fournisseur a-t-il codé proprement ?
Émettre : taux zéro et exonérations. Lorsqu’une facture porte 0 % de TVA, le formulaire demande de quel cas il s’agit — taux zéro (Z), petite entreprise au sens du § 19 UStG (E), autoliquidation (AE) ou livraison intracommunautaire (K) — et fixe le code catégorie en conséquence. Le motif d’exonération BT-120 est proposé dans la langue de la facture et reste modifiable ; AE et K reçoivent en plus le code BT-121 correspondant, le régime des petites entreprises n’en a aucun. Ce que le cas exige par ailleurs est contrôlé avant l’envoi : les numéros de TVA des deux parties pour AE, plus la date et le pays de livraison pour K. L’exonération figure aussi sur la page visible : la mention exigée par le § 14a al. 5 UStG, ou le renvoi au § 19 UStG, est imprimée avec elle.
Plusieurs cas dans une facture : oui. Dans la norme, un groupe de TVA est le couple « code catégorie + taux » — 19 % et 7 % font deux groupes, S 19 % et AE 0 % également. Dans le formulaire, chaque ligne porte donc son propre cas, et une facture peut mêler lignes taxables et lignes exonérées. Chaque groupe reçoit dans le XML sa propre ventilation avec sa base d’imposition, et chaque exonération son propre motif. La page visible affiche alors une colonne TVA dans le tableau des lignes et une ligne par groupe dans le bloc des totaux : la partie visible et le XML disent la même chose.
Questions fréquentes
Suffit-il d’écrire « autoliquidation » dans le texte de la facture ?
Non. Pour la partie structurée, ce qui compte est le code AE avec un taux nul et un motif d’exonération. La mention visible reste obligatoire en plus — les deux ensemble, pas l’une à la place de l’autre.
Quelle différence entre Z et E ?
Z est le taux zéro et ne doit porter aucun motif. E est l’exonération et doit en porter un. Pour la franchise en base et les exonérations de la directive, c’est E.
Faut-il un code VATEX pour le motif d’exonération ?
Pas obligatoirement, un texte en BT-120 suffit. Pour les cas nets, il existe des codes adaptés — VATEX-EU-AE, VATEX-EU-IC, VATEX-EU-G, VATEX-EU-O. Pour le régime des petites entreprises, aucun n’est prévu.
Une petite entreprise allemande devra-t-elle émettre des factures électroniques à partir de 2027 ?
Non, le § 34a UStDV l’en dispense ; papier et PDF restent admis. Recevoir et archiver des factures structurées est en revanche obligatoire depuis le 1er janvier 2025.
Ma facture intracommunautaire échoue alors que tous les montants sont justes. Pourquoi ?
Presque toujours à cause de BR-IC-11 ou BR-IC-12 : il manque la date de livraison ou la période, ou le pays de livraison. Ces deux champs ne sont obligatoires que sous le code K, d’où leur discrétion habituelle.
Une facture peut-elle comporter plusieurs taux ?
Oui. Chaque combinaison de code catégorie et de taux forme son propre groupe BG-23. L’EN 16931 le fait sans extension ; aucun profil EXTENDED n’est nécessaire.
Une interrogation VIES suffit-elle comme preuve ?
Pour savoir si le numéro est valide, oui. En Allemagne, c’est toutefois le résultat de la confirmation qualifiée auprès du BZSt que la doctrine administrative désigne comme la preuve à conserver.
En bref
- Catégorie, taux et motif sont trois données distinctes — « 0 % » seul n’explique rien.
- AE exige les deux numéros de TVA et un motif ; faire apparaître la taxe à tort coûte cher.
- K exige en plus une date ou une période de livraison et le pays de livraison — c’est là que ces factures échouent.
- E plutôt que Z pour les véritables exonérations, avec le renvoi à la disposition applicable en BT-120.
- Vérifier le numéro de TVA en amont ; sa validité est, depuis 2020, une condition de fond de l’exonération.
- La page visible et le XML doivent dire la même chose — en cas d’écart, c’est le XML qui tranche.
Un doute sur une facture reçue en autoliquidation ou en livraison intracommunautaire ? Déposez le fichier — ces familles de règles tournent avec le reste.
