# BR-S-1 Regels met btw-categorie S vereisen een S-regel in de btw-specificatie

Als een factuurregel, een korting op documentniveau of een toeslag op documentniveau btw-categorie S (standaardtarief) heeft, moet de btw-specificatie (BG-23) ten minste één regel met btw-categoriecode (BT-118) "S" bevatten.

## Probleembeschrijving

> **FOUT**: Btw-categorieregel van EN 16931

## Context en betekenis

Zonder S-regel in de btw-specificatie ontbreken de maatstaf van heffing en het btw-bedrag voor de belaste omzet. Dit gebeurt vaak als een toeslag, zoals verzendkosten, categorie S krijgt, maar het boekhoudpakket alleen specificatieregels voor de factuurregels aanmaakt, of als de categorie van een regel handmatig is gewijzigd nadat de btw-specificatie was gemaakt.

## Oplossing

Neem in de btw-specificatie per tarief een regel op met BT-118 = "S" en het bijbehorende tarief (BT-119), bijvoorbeeld één regel voor 21 % en één voor 9 %, met de juiste maatstaf van heffing en het btw-bedrag (UBL: cac:TaxTotal/cac:TaxSubtotal; CII: ram:ApplicableHeaderTradeSettlement/ram:ApplicableTradeTax).

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

## Geldige voorbeelden

- Regel BT-151 = "S" plus S-regel in de btw-specificatie met BT-118 = "S", BT-119 = 21
- Korting op documentniveau BT-95 = "S" plus passende S-regel in de btw-specificatie

## Ongeldige voorbeelden

- Regel BT-151 = "S" terwijl de btw-specificatie alleen "Z"-regels bevat
- Toeslag op documentniveau BT-102 = "S" zonder S-regel in de btw-specificatie

## Codevoorbeelden

### Geldig XML
```
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="EUR">19.00</cbc:TaxAmount>
  <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>
</cac:TaxTotal>
<cac:InvoiceLine>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>S</cbc:ID>
      <cbc:Percent>19</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
```

### Ongeldig XML
```
<cac:TaxTotal>
  <cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
  <cac:TaxSubtotal>
    <cbc:TaxableAmount currencyID="EUR">100.00</cbc:TaxableAmount>
    <cbc:TaxAmount currencyID="EUR">0.00</cbc:TaxAmount>
    <cac:TaxCategory>
      <cbc:ID>Z</cbc:ID>
      <cbc:Percent>0</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:TaxCategory>
  </cac:TaxSubtotal>
</cac:TaxTotal>
<cac:InvoiceLine>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cac:ClassifiedTaxCategory>
      <cbc:ID>S</cbc:ID>
      <cbc:Percent>19</cbc:Percent>
      <cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
    </cac:ClassifiedTaxCategory>
  </cac:Item>
</cac:InvoiceLine>
```

## Betrokken velden

- [BT-118 Btw-categoriecode](/resources/xrechnung/bt-118-vat-category-code)
- [BT-151 Btw-categoriecode van het gefactureerde artikel](/resources/xrechnung/bt-151-invoice-line-vat-category-code)
- [BT-95 Btw-categoriecode van de korting op documentniveau](/resources/xrechnung/bt-95-document-level-allowance-vat-category-code)
- [BT-102 Btw-categoriecode van de toeslag op documentniveau](/resources/xrechnung/bt-102-document-level-charge-vat-category-code)

## Gerelateerde regels

- [BR-CO-4](/resources/kosit-validator-errors/br-co-4-each-invoice-line-must-have-vat-category-code)
- [BR-S-5](/resources/kosit-validator-errors/br-s-05-standard-rated-line-vat-rate-must-be-positive)
- [BR-S-8](/resources/kosit-validator-errors/br-s-08-standard-rated-taxable-amount-must-match-lines-charges-allowances)

## 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://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [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.
