# BR-DE-14 Btw-categorietarief moet worden vermeld

In XRechnung moet elke btw-uitsplitsing (BG-23) verplicht het btw-categorietarief (BT-119) als percentage bevatten. Waar EN 16931 het weglaten toestaat bij vrijgestelde of verlegde btw (AE, E), eist het Duitse profiel altijd een expliciet percentage (bijv. 0.00 voor nultarief/verlegd, 19.00 / 7.00 voor standaard/verlaagd) voor een deterministische fiscale controle.

## Probleembeschrijving

> **FOUT**: Duitse XRechnung-regel (KoSIT, BR-DE) · XRechnung 3.0

## Context en betekenis

Zonder BT-119 kunnen validators de formule Btw-bedrag = afronden(BelastbaarBedrag * Percentage / 100) niet uitvoeren. BT-119 is verplicht voor alle btw-uitsplitsingen in XRechnung.

## Oplossing

Zorg in de btw-instellingen van uw ERP dat het btw-percentage in alle btw-uitsplitsingen wordt geëxporteerd. Voor verlegde btw (AE), export (G), nultarief (Z) en vrijgestelde omzet (E) exporteert u expliciet 0.00 in BT-119. Voeg in UBL 2.1 <cbc:Percent> toe onder <cac:TaxSubtotal><cac:TaxCategory>. Voeg in CII <ram:RateApplicablePercent> toe onder <ram:ApplicableTradeTax>.

- [XML valideren](/nl/xrechnung-validator?source=resource&rule=BR-DE-14)
- [Factuur converteren](/nl/pdf-to-xrechnung?source=resource&rule=BR-DE-14)

## Geldige voorbeelden

- Btw-uitsplitsing standaardtarief met BT-118 = "S", BT-119 = 19.00, BT-116 = 100.00, BT-117 = 19.00
- Btw-uitsplitsing verlegde btw met BT-118 = "AE", BT-119 = 0.00, BT-116 = 500.00, BT-117 = 0.00

## Ongeldige voorbeelden

- TaxSubtotal-element specificeert categorie S en grondslag maar laat het element cbc:Percent weg
- Btw-verlegging (categorie AE) geëxporteerd zonder percentage in de veronderstelling dat het nultarief impliciet is

## Codevoorbeelden

### Geldig XML
```
<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.00</cbc:Percent>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:TaxSubtotal>
```

### Ongeldig XML
```
<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>
    <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
  </cac:TaxCategory>
</cac:TaxSubtotal>
```

## Betrokken velden

- [BT-119 Btw-categorietarief](/resources/xrechnung/bt-119-vat-category-rate)
- [BG-23 Btw-uitsplitsing](/resources/xrechnung/bt-116-vat-category-taxable-amount)
- [BT-118 Btw-categoriecode](/resources/xrechnung/bt-118-vat-category-code)
- [BT-116 Belastbaar bedrag btw-categorie](/resources/xrechnung/bt-116-vat-category-taxable-amount)

## Gerelateerde regels

- [BR-48](/resources/kosit-validator-errors/br-48-vat-breakdown-category-rate-required)

## Validatietools

- [Officiële KoSIT-validator](https://github.com/itplr-kosit/validator): Draai de officiële KoSIT-validator met de XRechnung-configuratie om EN 16931- en XRechnung-regels te controleren.
- [PDF naar XRechnung converteren](/pdf-to-xrechnung): Vind validatiefouten tijdens de conversie en controleer elke correctie.

## Gerelateerde bronnen

- [Officiële specificatie](https://xeinkauf.de/xrechnung/)
- [Testsuite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Alle validatiefouten](/resources/kosit-validator-errors): Overzicht van de hier uitgelegde validatieregels uit EN 16931, XRechnung en Peppol.
