Compte
Français

BR-CO-03: Date et code de date d'exigibilité de la TVA tous deux renseignés

Règle de base EN 16931 · Erreur · UBL, CII

NormeEN 16931-1 (modèle sémantique européen de la facture électronique)GravitéErreur: la facture est rejetéeSyntaxeUBL, CIITermes métier
  • BT-7 Value added tax point date
  • BT-8 Value added tax point date code
S'applique àToute facture EN 16931 : Factur-X / ZUGFeRD 2.x (profils EN 16931, EXTENDED, XRECHNUNG), XRechnung, Peppol BIS Billing 3.0 et les CIUS nationales.

Texte officiel de la règle

[BR-CO-03] Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

Le texte normatif est en anglais ; il est cité tel quel.

Pourquoi cette erreur apparaît

La date d'exigibilité de la TVA (BT-7) et le code de date d'exigibilité (BT-8) s'excluent mutuellement : indiquez soit la date précise, soit le code qui désigne la date applicable, jamais les deux. En UBL, BT-7 correspond à cbc:TaxPointDate et BT-8 à cac:InvoicePeriod/cbc:DescriptionCode ; en CII, BT-7 correspond à ram:TaxPointDate et BT-8 à ram:DueDateTypeCode dans ram:ApplicableTradeTax. Le conflit provient généralement d'un mappage ERP qui renseigne toujours la date et code en dur, en plus, un code de description.

Comment corriger

Choisissez l'élément dont vous avez besoin et supprimez l'autre. Si l'exigibilité correspond à un jour précis, conservez cbc:TaxPointDate / ram:TaxPointDate (format AAAA-MM-JJ en UBL, format 102 AAAAMMJJ en CII) et supprimez le code. Si vous voulez indiquer que « l'exigibilité est la date de facture / de livraison / de paiement », conservez uniquement le code UNTDID 2005 : 3 (date d'émission de la facture), 35 (date de livraison), 432 (date de paiement). La plupart des factures n'ont besoin d'aucun des deux ; lorsque la date de livraison coïncide avec l'exigibilité, cac:Delivery/cbc:ActualDeliveryDate (BT-72) suffit généralement.

Exemple (valide)

<cac:InvoicePeriod>
  <cbc:DescriptionCode>35</cbc:DescriptionCode>
</cac:InvoicePeriod>

Ce que le validateur vérifie

Élément vérifié (contexte):

UBL

/ubl:Invoice | /cn:CreditNote

Test (XPath):

(exists(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and exists(cac:InvoicePeriod/cbc:DescriptionCode)) or (not(cbc:TaxPointDate) and not(cac:InvoicePeriod/cbc:DescriptionCode))

CII

//ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax

Test (XPath):

((//ram:TaxPointDate) and not(//ram:DueDateTypeCode)) or (not (//ram:TaxPointDate) and (//ram:DueDateTypeCode)) or (not (//ram:TaxPointDate) and not (//ram:DueDateTypeCode))

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é.

Vérifier votre facture →

La même vérification par API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Règles liées

Questions fréquentes

Que signifie BR-CO-03 ?

BR-CO-03 est une règle de base en 16931 : Value added tax point date (BT-7) and Value added tax point date code (BT-8) are mutually exclusive.

Ma facture sera-t-elle rejetée à cause de BR-CO-03 ?

Oui. BR-CO-03 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-CO-03 ?

Toute facture EN 16931 : Factur-X / ZUGFeRD 2.x (profils EN 16931, EXTENDED, XRECHNUNG), XRechnung, Peppol BIS Billing 3.0 et les CIUS nationales. Syntaxe : UBL et CII.

Source: EN 16931-1:2017 schematron (CEN TC434, via Peppol BIS 3.0.20). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.