BG-11Seller tax representative partyBT-31Seller VAT identifierBT-32Seller tax registration identifierBT-95Document level allowance VAT category codeBT-102Document level charge VAT category codeBT-151Invoiced item VAT category code
Texte officiel de la règle
[BR-DE-16] If the tax codes S, Z, E, AE, K, G, L or M are used in an invoice, at least one of the elements "Seller VAT identifier" (BT-31), "Seller tax registration identifier" (BT-32) or "SELLER TAX REPRESENTATIVE PARTY" (BG-11) must be transmitted.
Le texte normatif est en anglais ; il est cité tel quel.
Pourquoi cette erreur apparaît
Dès qu'une catégorie de TVA S, Z, E, AE, K, G, L ou M est utilisée sur une ligne, une remise ou une majoration de niveau document, XRechnung exige au moins l'un des éléments suivants : l'identifiant TVA du vendeur (BT-31), l'identifiant d'immatriculation fiscale du vendeur (BT-32) ou un représentant fiscal du vendeur (BG-11). L'administration destinataire a besoin d'une identité fiscale pour vérifier la facture et déduire la TVA. En UBL, la règle examine cac:AccountingSupplierParty/cac:Party/cac:PartyTaxScheme/cbc:CompanyID et cac:TaxRepresentativeParty ; en CII, ram:SellerTradeParty/ram:SpecifiedTaxRegistration/ram:ID et ram:SellerTaxRepresentativeTradeParty. Elle échoue typiquement pour les petites entreprises sans numéro de TVA dont le numéro fiscal n'a jamais été mappé.
Comment corriger
Solution privilégiée : ajoutez le numéro de TVA (BT-31), en UBL sous forme de cac:PartyTaxScheme avec cbc:CompanyID et cac:TaxScheme/cbc:ID = VAT, en CII sous forme de ram:SpecifiedTaxRegistration/ram:ID schemeID="VA". Si le vendeur n'a pas de numéro de TVA, indiquez le numéro fiscal national (BT-32) : en UBL cac:PartyTaxScheme avec cac:TaxScheme/cbc:ID = FC, en CII ram:SpecifiedTaxRegistration/ram:ID schemeID="FC". Les deux peuvent figurer sous forme de deux blocs cac:PartyTaxScheme distincts. La catégorie O (hors champ de la TVA) seule ne déclenche pas cette règle.
Exemple (valide)
<cac:PartyTaxScheme>
<cbc:CompanyID>DE123456789</cbc:CompanyID>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyTaxScheme>
<cbc:CompanyID>21/123/45678</cbc:CompanyID>
<cac:TaxScheme><cbc:ID>FC</cbc:ID></cac:TaxScheme>
</cac:PartyTaxScheme>
Ce que le validateur vérifie
Élément vérifié (contexte):
UBL
/ubl:Invoice | /cn:CreditNoteTest (XPath):
(not( ($BT-95-UBL-Inv = $supportedVATCodes or $BT-95-UBL-CN = $supportedVATCodes) or ($BT-102 = $supportedVATCodes) or ($BT-151 = $supportedVATCodes) ) or (cac:TaxRepresentativeParty, $BT-31orBT-32Path))CII
/rsm:CrossIndustryInvoiceTest (XPath):
not((rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:TypeCode = 'VAT' and rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode = ('S', 'Z', 'E', 'AE', 'K', 'G', 'L', 'M')) or (rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:CategoryTradeTax = 'VAT' and rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeAllowanceCharge/ram:CategoryTradeTax/ram:CategoryCode = ('S', 'Z', 'E', 'AE', 'K', 'G', 'L', 'M')) or (rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:TypeCode = 'VAT' and rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode = ('S', 'Z', 'E', 'AE', 'K', 'G', 'L', 'M'))) or ((rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTradeParty/ram:SpecifiedTaxRegistration/ram:ID[normalize-space(@schemeID)='VA' or normalize-space(@schemeID)='FC'][boolean(normalize-space(.))], rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeAgreement/ram:SellerTaxRepresentativeTradeParty))
Vérifier votre facture
Déposez votre XML ou PDF dans le validateur : chaque règle en échec renvoie vers sa page ici. Gratuit, sans compte, le fichier n'est pas conservé.
La même vérification par API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateRègles liées
BR-DE-1Les instructions de paiement (BG-16) sont absentesBR-DE-2Le contact du vendeur (BG-6) est absentBR-DE-3La ville du vendeur (BT-37) est absenteBR-DE-4L'élément « Code postal du vendeur » doit être transmisBR-DE-5Le point de contact du vendeur (BT-41) est absentBR-DE-6Le téléphone du contact vendeur (BT-42) est absentBR-DE-7L'adresse e-mail du contact vendeur (BT-43) est absenteBR-DE-8L'élément « Ville de l'acheteur » doit être transmis
Questions fréquentes
Que signifie BR-DE-16 ?
BR-DE-16 est une règle xrechnung : If the tax codes S, Z, E, AE, K, G, L or M are used in an invoice, at least one of the elements "Seller VAT identifier" (BT-31), "Seller tax registration identifier" (BT-32) or "SELLER TAX REPRESENTATIVE PARTY" (BG-11) must be transmitted.
Ma facture sera-t-elle rejetée à cause de BR-DE-16 ?
Oui. BR-DE-16 est classée « bloquante » ; les validateurs (plateformes agréées, points d'accès Peppol, KoSIT, KSeF) rejettent la facture tant qu'elle n'est pas corrigée.
À quels formats s'applique BR-DE-16 ?
XRechnung en syntaxe UBL ou CII, y compris les PDF Factur-X / ZUGFeRD au profil XRECHNUNG. Obligatoire pour facturer les administrations publiques allemandes. Syntaxe : UBL et CII.
Source: XRechnung 3.0.2, schematron 2.6.0 (KoSIT, September 2026). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.