Sur cette page
La réponse courte
BR-Z-04 échoue lorsque des frais ont une cac:TaxCategory dont le cbc:ID vaut Z sous le schéma VAT et que ni identifiant fiscal du vendeur, sous quelque schéma que ce soit, ni identifiant TVA de représentant fiscal n'est fourni. Donnez à la partie vendeur son cac:PartyTaxScheme avec le numéro de TVA, comme le fait la facture corrigée avec GB123456789.
Les frais de livraison de l'exemple enregistré sont au taux zéro, comme la ligne qu'ils accompagnent. La règle demande que l'immatriculation fiscale du vendeur soit visible partout où ce traitement est utilisé.
Ce que la règle vérifie
Un cac:AllowanceCharge dont le cbc:ChargeIndicator vaut true et dont la cac:TaxCategory est au taux zéro sous le schéma VAT met en cause l'identification du vendeur ; le montant et le taux des frais ne jouent aucun rôle.
Le schéma du vendeur n'est pas examiné : lors d'un essai, la facture avec frais de livraison dont le cac:PartyTaxScheme du vendeur était sous TAX au lieu de VAT a passé toutes les étapes. Un représentant fiscal avec GB987654321 sous VAT, à la place de tout identifiant du vendeur, a également rendu valide la facture en échec.
Les frais placés dans une ligne sont inclus lorsqu'ils portent une catégorie. Lors d'un essai, des frais de ligne au taux zéro dans une facture sans identifiant du vendeur ont signalé cette règle et BR-Z-02, ainsi que l'avertissement UBL-CR-558.
| Terme | Signification | Élément UBL |
|---|---|---|
| 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 |
| 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 |
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 :
- La livraison est ajoutée à l'expédition par un système logistique qui copie la catégorie au taux zéro depuis les marchandises mais n'a pas accès aux données TVA du vendeur.
- Le numéro de TVA du vendeur est omis des documents au taux zéro parce qu'ils ne portent aucune TVA à déclarer.
- Le vendeur est représenté pour la TVA, et
cac:TaxRepresentativePartyest envoyé sans son schéma fiscal. - Plusieurs entités juridiques partagent un même export, et celle qui émet ce document n'a aucun numéro de TVA configuré.
Comment corriger le document
- Lisez le numéro de TVA du vendeur, avec son préfixe pays, dans la fiche du vendeur.
- Ajoutez-le à la partie vendeur en tant que
cac:PartyTaxScheme/cbc:CompanyIDsous le schéma fiscalVAT, à la position UBL aprèscac:PostalAddresset avantcac:PartyLegalEntity. - Lorsqu'un représentant fiscal gère la TVA, envoyez son numéro dans
cac:TaxRepresentativeParty/cac:PartyTaxScheme/cbc:CompanyIDavec le schémaVAT. - Une fois l'identifiant en place, vérifiez les frais eux-mêmes :
BR-Z-07exige que leur taux soit 0, etBR-Z-08que la base imposable au taux zéro les inclue.
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 : des frais de livraison au taux zéro, et une partie vendeur sans PartyTaxScheme
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="0088">7300010000001</cbc:EndpointID>
<!-- 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:AllowanceChargeReasonCode>DL</cbc:AllowanceChargeReasonCode>
<cbc:AllowanceChargeReason>Delivery</cbc:AllowanceChargeReason>
<cbc:Amount currencyID="GBP">4.00</cbc:Amount>
<cac:TaxCategory>
<cbc:ID>Z</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 : la partie vendeur avec son identifiant TVA
<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>La facture corrigée porte le cac:PartyTaxScheme du vendeur avec GB123456789 sous le schéma VAT, absent de la facture en échec ; rien d'autre ne diffère. Le document en échec signale aussi BR-Z-02, puisque sa ligne est également au taux zéro. Les frais de livraison de 4.00 et la ventilation au taux zéro de 29.00 sont inchangés.
Ce que le validateur a signalé
- La facture en erreur signale BR-Z-02 et BR-Z-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 aux documents UBL
InvoiceetCreditNote. La version avoir de l'exemple enregistré a signaléBR-Z-02etBR-Z-04lors d'un essai. - Signalée par l'étape EN 16931 comme constat fatal à la racine du document.
- Les remises au taux zéro sont couvertes par
BR-Z-03et les frais au taux normal parBR-S-04; le même identifiant du vendeur répond à chacune.
Règles liées
- BR-Z-02 signale aussi l'identifiant manquant pour les lignes au taux zéro
- BR-Z-07 exige que les frais au taux zéro portent un taux de 0
- BR-S-04 est la version au taux normal pour les frais au niveau du document
- BR-Z-08 ajoute les frais au taux zéro à la base imposable au taux zéro
- 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-Z-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.

