# BR-AF-08 Le montant imposable IGIC doit égaler la base sommée

Pour chaque valeur différente du taux de la catégorie de TVA (BT-119) où le code de catégorie de TVA (BT-118) est "IGIC", le montant imposable de la catégorie de TVA (BT-116) dans une ventilation de TVA (BG-23) doit être égal à la somme des montants nets de ligne (BT-131) plus la somme des montants de frais au niveau du document (BT-99) moins la somme des montants de remise au niveau du document (BT-92) où le code de catégorie de TVA (BT-151, BT-102, BT-95) est "IGIC" et le taux de TVA (BT-152, BT-103, BT-96) est égal au taux de la catégorie de TVA (BT-119).

## Description du problème

Pour chaque valeur différente du taux de la catégorie de TVA (BT-119) où le code de catégorie de TVA (BT-118) est "IGIC", le montant imposable de la catégorie de TVA (BT-116) dans une ventilation de TVA (BG-23) doit être égal à la somme des montants nets de ligne (BT-131) plus la somme des montants de frais au niveau du document (BT-99) moins la somme des montants de remise au niveau du document (BT-92) où le code de catégorie de TVA (BT-151, BT-102, BT-95) est "IGIC" et le taux de TVA (BT-152, BT-103, BT-96) est égal au taux de la catégorie de TVA (BT-119).

> **ERREUR**: XRechnung 3.0

## Contexte et importance

La catégorie IGIC (l’impôt indirect des îles Canaries) provient des listes de codes EN16931 mises à jour prises en charge par le rulepack XRechnung 3.0.2 actuel ; ce lien arithmétique maintient la base de la ventilation IGIC cohérente avec les lignes, frais et remises sous-jacents au même taux.

## Solution

Recalculez BT-116 pour chaque taux "IGIC" comme Σ BT-131 + Σ BT-99 − Σ BT-92 limité à ce taux, puis inscrivez-le dans le cac:TaxSubtotal/cbc:TaxableAmount correspondant.

- validate
- convert

## Exemples valides

- Une ligne "L" (IGIC) nette 100,00 à 7.00 %, sans frais ni remises, et BT-116 = 100,00

## Exemples invalides

- Une ligne "L" (IGIC) nette 100,00 à 7.00 % mais BT-116 = 90,00

## Exemples de code

### XML valide
```
<cac:InvoiceLine>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>L</cbc:ID>
      <cbc:Percent>7.00</cbc:Percent>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
  <cac:TaxCategory>
    <cbc:ID>L</cbc:ID>
    <cbc:Percent>7.00</cbc:Percent>
  </cac:TaxCategory>
</cac:TaxSubtotal>
```

### XML invalide
```
<cac:InvoiceLine>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>L</cbc:ID>
      <cbc:Percent>7.00</cbc:Percent>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
<cac:TaxSubtotal>
  <cbc:TaxableAmount currencyID="EUR">90.00</cbc:TaxableAmount>
  <cac:TaxCategory>
    <cbc:ID>L</cbc:ID>
    <cbc:Percent>7.00</cbc:Percent>
  </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-131 Montant net de ligne de facture](/resources/xrechnung/bt-131-invoice-line-net-amount)
- [BT-118 Code de catégorie de TVA](/resources/xrechnung/bt-118-vat-category-code)

## Règles associées

- [BR-AF-09](/resources/kosit-validator-errors/br-af-09-igic-tax-amount-equals-base-times-rate)
- [BR-AF-01](/resources/kosit-validator-errors/br-af-01-igic-vat-breakdown-required)

## Outils de validation

- [Validateur KoSIT officiel](https://erechnungsvalidator.service-bw.de/): Validez vos fichiers XRechnung par rapport à toutes les règles BR-DE.
- [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://xeinkauf.de/xrechnung/)
- [Suite de tests](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Toutes les erreurs de validation](/resources/kosit-validator-errors): Aperçu de toutes les règles de validation XRechnung en Allemagne.
