# BR-12 Som van nettobedragen van factuurregels is vereist

Een factuur moet de som van de nettobedragen van factuurregels (BT-106) hebben, het totaal van alle regelnettobedragen vóór kortingen, toeslagen en btw op documentniveau.

## Probleembeschrijving

> **FOUT**: Bedrijfsregel van EN 16931 (CEN)

> **Waar BR-12 wordt gecontroleerd**
>
> Een validator controleert een e-factuur in stappen. Eerst moet het bestand goed gevormde XML zijn die past bij het UBL- of CII-schema (XSD). Dan volgen de bedrijfsregels van EN 16931: BR-kernregels, BR-CO-berekeningen, BR-CL-codelijsten, BR-DEC-decimalen en regels per btw-categorie zoals BR-S. Daarna komen de nationale of netwerkregels die BT-24 kiest: BR-DE voor XRechnung, PEPPOL-EN16931 voor Peppol BIS Billing. Het rapport noemt elke geschonden regel: één fout betekent afwijzen, alleen waarschuwingen betekenen nog steeds accepteren. BR-12: kernregel van EN 16931, gemeld in de stap “EN 16931-regels”.

## Context en betekenis

Dit is een kernregel van EN 16931. BT-106 is het beginpunt van de berekening van de documenttotalen: de som van alle regelbedragen (BR-CO-10). In UBL is cbc:LineExtensionAmount in cac:LegalMonetaryTotal optioneel in het schema, dus een export die alleen het totaal zonder btw en het te betalen bedrag schrijft, faalt op BR-12. In CII staat BT-106 in ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:LineTotalAmount.

## Oplossing

Voeg cac:LegalMonetaryTotal/cbc:LineExtensionAmount toe, gelijk aan de som van elk regelnettobedrag (BT-131).

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

## Geldige voorbeelden

- BT-106 = 1000.00 — gelijk aan de som van alle regelnettobedragen

## Ongeldige voorbeelden

- cac:LegalMonetaryTotal bevat geen cbc:LineExtensionAmount-element

## Codevoorbeelden

### Geldig XML
```
<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="EUR">1000.00</cbc:TaxExclusiveAmount>
</cac:LegalMonetaryTotal>
```

### Ongeldig XML
```
<cac:LegalMonetaryTotal>
  <cbc:TaxExclusiveAmount currencyID="EUR">1000.00</cbc:TaxExclusiveAmount>
  <cbc:PayableAmount currencyID="EUR">1190.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
```

## Betrokken velden

- [BT-106 Som van nettobedragen factuurregels](/resources/xrechnung/bt-106-sum-of-invoice-line-net-amount)

## Gerelateerde regels

- [BR-13](/resources/kosit-validator-errors/br-13-invoice-total-without-vat-required)
- [BR-CO-10](/resources/kosit-validator-errors/br-co-10-sum-of-line-net-amounts-must-equal-line-total)

## 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.
