Sur cette page
La réponse courte
BR-E-04 échoue lorsque des frais, c'est-à-dire un cac:AllowanceCharge avec cbc:ChargeIndicator à true, ont un cac:TaxCategory E et que le document ne donne aucun identifiant fiscal du vendeur. Dans l'exemple enregistré, le numéro de TVA du vendeur GB123456789 a été envoyé comme cac:PartyIdentification/cbc:ID, où aucune règle de TVA ne le cherche ; déplacez-le dans cac:PartyTaxScheme/cbc:CompanyID sous le schéma VAT.
Il ne manque aucune donnée, elle est seulement mal placée, et la correction est un déplacement. BR-E-02 échoue aussi à cause de la ligne exonérée et disparaît avec le même déplacement.
Ce que la règle vérifie
La règle est déclenchée par des frais dont le cac:TaxCategory a le cbc:ID E sous le schéma VAT. Le montant et le motif des frais ne jouent aucun rôle ; les frais de dossier de 2.50 de l'exemple enregistré servent seulement à rendre la règle applicable.
Le vendeur est identifié par un cbc:CompanyID dans son propre cac:PartyTaxScheme, sous n'importe quel schéma, ou par le cbc:CompanyID d'un représentant fiscal sous VAT. Lors d'un essai, la facture avec les frais était valide avec le schéma du vendeur mis à TAX, et valide avec le schéma fiscal du vendeur remplacé par un représentant doté d'un identifiant TVA.
Un identifiant du vendeur dans cac:PartyIdentification/cbc:ID est ignoré par cette règle même lorsqu'il s'agit d'un numéro de TVA, comme le montre l'exemple enregistré. Il compte bien comme identifiant du vendeur pour BR-CO-26, que l'identifiant d'enregistrement légal 12345678 satisfait de toute façon ici.
Le constat qui l'accompagne dépend de la catégorie des lignes. Avec la ligne exonérée de l'exemple enregistré, c'est BR-E-02 ; lors d'un essai avec une ligne au taux normal de 25.00 à côté des frais exonérés et sans schéma fiscal du vendeur, BR-S-02 a été signalé avec cette règle à la place.
| Terme | Signification | Élément UBL |
|---|---|---|
| BT-31 | Identifiant à la TVA du vendeur | cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID (tax scheme VAT) |
| BT-32 | Identifiant d'enregistrement fiscal du vendeur | cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID (a tax scheme other than VAT) |
| BT-63 | Identifiant à la TVA du représentant fiscal du vendeur | cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyID |
| BT-102 | Code de catégorie de TVA des charges ou frais au niveau du document | cac:AllowanceCharge[cbc:ChargeIndicator = true]/cac:TaxCategory/cbc:ID |
Comment une intégration en arrive là
Causes possibles, déduites de la forme de la règle et non d'une utilisation mesurée :
- Le numéro de TVA du vendeur est placé dans l'identifiant de la partie parce qu'un format ou une intégration antérieurs l'attendaient là.
- Des frais de dossier ou de traitement héritent de la catégorie
Ed'un contrat exonéré, tandis que la partie vendeur est construite à partir d'un modèle sans schéma fiscal. - Le bloc du schéma fiscal du vendeur n'est écrit que lorsque le total de la facture comprend de la TVA.
- Le vendeur est représenté à la TVA, mais
cac:TaxRepresentativePartyest envoyé sans soncac:PartyTaxScheme.
Comment corriger le document
- Écrivez le numéro de TVA du vendeur dans
cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyIDaveccac:TaxScheme/cbc:IDàVAT, aprèscac:PostalAddresset avantcac:PartyLegalEntity. - Décidez si
cac:PartyIdentificationdoit rester. Il porte l'identifiant du vendeur (BT-29) et se place avantcac:PostalAddress; ne le gardez que si le vendeur est réellement identifié ainsi. La facture corrigée le supprime. - Gardez les frais en catégorie
Eà 0 s'ils partagent l'exonération du service ; ni leur catégorie ni leur taux ne sont en cause ici. - Modifiez le mapping pour que le numéro de TVA aboutisse toujours dans le schéma fiscal, quoi que la partie vendeur porte par ailleurs.
Valider votre facture corrigée
Avant et après
Ce sont des extraits, pas des documents complets. Les documents synthétiques complets dont ils proviennent sont liés ci-dessous.
Fragment de la facture en échec : le numéro de TVA du vendeur envoyé comme identifiant de la partie, et des frais de dossier exonérés
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="0088">7300010000001</cbc:EndpointID>
<cac:PartyIdentification>
<cbc:ID>GB123456789</cbc:ID>
</cac:PartyIdentification>
<!-- postal address omitted from this fragment -->
<cac:PartyLegalEntity>
<cbc:RegistrationName>Example Supplier Ltd</cbc:RegistrationName>
<cbc:CompanyID>12345678</cbc:CompanyID>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:AllowanceCharge>
<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
<cbc:AllowanceChargeReason>Administration fee</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="GBP">2.50</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>E</cbc:ID>
<cbc:Percent>0</cbc:Percent>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:TaxCategory>
</cac:AllowanceCharge>Fragment de la facture corrigée : le même numéro dans le PartyTaxScheme du vendeur, et aucun identifiant de la partie
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="0088">7300010000001</cbc:EndpointID>
<!-- postal address omitted from this fragment -->
<cac:PartyTaxScheme>
<cbc:CompanyID>GB123456789</cbc:CompanyID>
<cac:TaxScheme>
<cbc:ID>VAT</cbc:ID>
</cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Example Supplier Ltd</cbc:RegistrationName>
<cbc:CompanyID>12345678</cbc:CompanyID>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>Dans la facture en échec, GB123456789 est le cac:PartyIdentification/cbc:ID du vendeur et le vendeur n'a pas de cac:PartyTaxScheme ; la facture corrigée n'a pas d'identifiant de la partie et porte le même numéro dans un cac:PartyTaxScheme sous VAT. Le document en échec signale aussi BR-E-02, puisque sa ligne exonérée de 25.00 dépend du même identifiant du vendeur. Les frais de dossier de 2.50 et la ventilation exonérée de 27.50 sont inchangés.
Ce que le validateur a signalé
- La facture en erreur signale BR-E-02 et BR-E-04. Le document corrigé passe toutes les étapes de validation sans constat.Télécharger le XML en erreurTélécharger le XML corrigé
Enregistré avec phive 12.1.0 / phive-rules-peppol 4.5.6 / Saxon-HE 12.10, le moteur du validateur gratuit, sur des données synthétiques. Un résultat enregistré est une preuve de non-régression pour ces documents ; ce n'est pas une certification.
Où la règle s'applique
- S'applique à UBL
InvoiceetCreditNote. Lors d'un essai, un avoir exonéré avec les frais et sans schéma fiscal du vendeur a signalé cette règle etBR-E-02. - Signalé par l'étape EN 16931 à la racine du document, une fois pour le document quel que soit le nombre de frais exonérés.
- Les remises ont la règle parallèle
BR-E-03. Les frais au taux normal relèvent deBR-S-04, et les frais en autoliquidation deBR-AE-04, qui ajoute une condition sur l'acheteur.
Règles liées
- BR-E-02 échoue à côté de cette règle lorsque les lignes du document sont aussi exonérées
- BR-E-07 exige un taux de TVA de 0 sur les frais exonérés
- BR-S-04 demande l'identifiant du vendeur lorsque des frais au niveau du document sont au taux normal
- BR-AE-04 est la règle des frais en autoliquidation, avec une condition ajoutée sur l'acheteur
- Parcourir toutes les règles de la référence
- Contexte (en anglais) : Understanding EN 16931 validation errors
Portée et source
Rédigé pour Peppol BIS Billing 3.0.21 (May 2026), EN 16931 1.3.16, tel qu'appliqué aux documents Invoice et CreditNote en UBL 2.1. D'autres profils, syntaxes et versions peuvent définir cet identifiant autrement. Version du catalogue d'aide 2026-09-28.1 : source vérifiée le 2026-09-28, explication mise à jour le 2026-09-28.
La définition officielle de BR-E-04 (en anglais) contient le texte normatif et le test. Cette page en est notre explication, pas une copie.
Cette aide ne modifie pas le verdict du moteur. Corriger ce constat ne signifie pas que le document passe toutes les étapes de validation, et la validation ne certifie pas la conformité juridique ou fiscale et ne transmet aucun document via Peppol.

