ErreurEN 16931Manuel uniquement

BR-S-08

For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).

Que signifie cette règle ?

La base imposable (BT-116) d'une ventilation au taux normal n'est pas égale à la somme des lignes à ce taux.

Par taux de TVA, le montant ventilé doit correspondre arithmétiquement aux montants nets des lignes (± frais/remises).

BG-23
Ventilation de la TVA (groupe)
BT-92
Montant de la remise au niveau du document
BT-95
Code catégorie de TVA de la remise au niveau du document
BT-96
Taux de TVA de la remise au niveau du document
BT-99
Montant des frais au niveau du document
BT-102
Code catégorie de TVA des frais au niveau du document
BT-103
Taux de TVA des frais au niveau du document
BT-116
Base imposable par catégorie de TVA
BT-118
Code catégorie de TVA (UNCL 5305)
BT-119
Taux de TVA par catégorie
BT-131
Montant net de la ligne de facture
BT-151
Code catégorie de TVA de l'article facturé (UNCL 5305)
BT-152
Taux de TVA de l'article
Message officiel de la règle (norme)

For each different value of VAT category rate (BT-119) where the VAT category code (BT-118) is "Standard rated", the VAT category taxable amount (BT-116) in a VAT breakdown (BG-23) shall equal the sum of Invoice line net amounts (BT-131) plus the sum of document level charge amounts (BT-99) minus the sum of document level allowance amounts (BT-92) where the VAT category code (BT-151, BT-102, BT-95) is "Standard rated" and the VAT rate (BT-152, BT-103, BT-96) equals the VAT category rate (BT-119).

Message officiel de la règle, tel qu’il figure dans la norme (en anglais).

Où la règle s’applique

Syntaxe: CII · UBL

La même règle, exprimée deux fois : UBL et CII désignent les mêmes champs par des chemins différents. C’est pourquoi vérifier un fichier CII avec les règles UBL produit des erreurs dénuées de sens.

UBL

  • /*/cac:TaxTotal/cac:TaxSubtotal/cac:TaxCategory[normalize-space(cbc:ID) = 'S'][cac:TaxScheme/normalize-space(upper-case(cbc:ID))='VAT']

CII

  • //ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax/ram:CategoryCode[.='S']

Test technique

La règle est satisfaite lorsque cette expression Schematron est vraie :

every $rate in ../ram:RateApplicablePercent/xs:decimal(.) satisfies (../ram:BasisAmount = (round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement[ram:ApplicableTradeTax/ram:CategoryCode = 'S' and ram:ApplicableTradeTax/xs:decimal(ram:RateApplicablePercent) =$rate]/ram:SpecifiedTradeSettlementLineMonetarySummation/xs:decimal(ram:LineTotalAmount)) * 10 * 10) div 100 + round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator=true() and ram:CategoryTradeTax/ram:CategoryCode='S' and ram:CategoryTradeTax/xs:decimal(ram:RateApplicablePercent)=$rate]/xs:decimal(ram:ActualAmount)) * 10 * 10) div 100 - round(sum(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeAllowanceCharge[ram:ChargeIndicator/udt:Indicator=false() and ram:CategoryTradeTax/ram:CategoryCode='S' and ram:CategoryTradeTax/xs:decimal(ram:RateApplicablePercent)=$rate]/xs:decimal(ram:ActualAmount)) * 10 * 10) div 100))

Comment corriger

Touche aux montants, à la TVA ou à l'IBAN. Nous ne modifions jamais ces valeurs automatiquement — corrigez-les dans vos données source.

Fixez BT-116 à la somme des montants nets des lignes à ce taux, plus les frais, moins les remises.

Corrigez la mention concernée dans votre XML, puis relancez la vérification. Le contrôle s’exécute localement dans votre navigateur — votre fichier ne quitte jamais votre machine.

Vérifiez une facture électronique ici

Déposez ici un fichier XML ou un PDF ZUGFeRD. Le contrôle s'exécute localement dans votre navigateur selon l'EN 16931 — votre fichier ne quitte jamais votre machine.

100 % local — aucun envoi, aucun compte.

Règles apparentées

← Retour à la bibliothèque des erreurs