# BR-S-09 Catégorie S : le montant de TVA doit être égal à la base imposable multipliée par le taux

Le montant de TVA de la catégorie (BT-117) dans une ventilation de TVA (BG-23) dont le code de catégorie (BT-118) est « Taux normal » doit être égal au montant imposable de la catégorie (BT-116) multiplié par le taux de la catégorie (BT-119).

## Description du problème

> **ERREUR**: Règle EN 16931 sur la catégorie de TVA

## Contexte et importance

Cette règle EN 16931 vérifie le calcul de chaque ventilation de TVA de catégorie S afin que la TVA déclarée corresponde à la base imposable et au taux. Le validateur tolère un écart inférieur à 1,00. En pratique, un écart plus grand apparaît quand le logiciel additionne la TVA ligne par ligne, applique une remise globale après le calcul de la TVA ou inscrit le montant TTC dans BT-116.

## Solution

Calculez BT-117 pour chaque ventilation S comme BT-116 × BT-119 / 100, arrondissez à deux décimales et inscrivez le résultat dans le TaxAmount de ce TaxSubtotal. N’additionnez pas des montants de TVA arrondis ligne par ligne.

- [Valider le XML](/fr/xrechnung-validator?source=resource&rule=BR-S-09)
- [Convertir la facture](/fr/pdf-to-xrechnung?source=resource&rule=BR-S-09)

## Exemples valides

- BT-116 = 100,00, BT-119 = 19, BT-117 = 19,00

## Exemples invalides

- BT-116 = 100,00, BT-119 = 19, mais BT-117 = 21,00

## Exemples de code

### XML valide
```
<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
  <cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
  <cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory>
</cac:TaxSubtotal>
```

### XML invalide
```
<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
  <cbc:TaxAmount currencyID="EUR">21.00</cbc:TaxAmount>
  <cac:TaxCategory><cbc:ID>S</cbc:ID><cbc:Percent>19</cbc:Percent><cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme></cac:TaxCategory>
</cac:TaxSubtotal>
```

## Champs concernés

- [BT-116 Montant imposable de la catégorie de TVA](/resources/xrechnung/bt-116-vat-category-taxable-amount)
- [BT-117 Montant de TVA de la catégorie](/resources/xrechnung/bt-117-vat-category-tax-amount)
- [BT-118 Code de catégorie de TVA](/resources/xrechnung/bt-118-vat-category-code)
- [BT-119 Taux de la catégorie de TVA](/resources/xrechnung/bt-119-vat-category-rate)

## Règles associées

- [BR-S-1](/resources/kosit-validator-errors/br-s-01-standard-rated-items-require-standard-rated-vat-breakdown)
- [BR-S-8](/resources/kosit-validator-errors/br-s-08-standard-rated-taxable-amount-must-match-lines-charges-allowances)
- [BR-CO-18](/resources/kosit-validator-errors/br-co-18-vat-breakdown-required)

## Outils de validation

- [Validateur KoSIT officiel](https://github.com/itplr-kosit/validator): Exécutez le validateur officiel du KoSIT avec la configuration XRechnung pour contrôler les règles EN 16931 et XRechnung.
- [Convertir un PDF en XRechnung](/pdf-to-xrechnung): Repérez les erreurs de validation pendant la conversion et vérifiez chaque correction.

## Ressources associées

- [Spécification officielle](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Suite de tests](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Toutes les erreurs de validation](/resources/kosit-validator-errors): Vue d’ensemble des règles de validation EN 16931, XRechnung et Peppol expliquées ici.
