# BR-41 Betrag des Nachlasses auf Positionsebene ist erforderlich

Jeder Nachlass auf Positionsebene (BG-27) muss einen Betrag des Nachlasses auf Positionsebene (BT-136) enthalten.

## Problembeschreibung

> **FEHLER**: Geschäftsregel der EN 16931 (CEN)

## Kontext und Bedeutung

Dies ist eine Kernregel der EN 16931. Ein Nachlass auf Positionsebene (BG-27) mindert den Positionsnettobetrag (BT-131); ohne Betrag lässt sich die Positionsberechnung nicht prüfen, was oft zusätzlich einen Rechenfehler auf Positionsebene auslöst. Das UBL-Schema verlangt cbc:Amount bereits, daher erscheint BR-41 vor allem bei CII-Positionen, deren Nachlass nur einen Prozentsatz oder Grund enthält, etwa einen aus einer Preisliste übernommenen Rabattsatz.

## Lösung

Ergänzen Sie cbc:Amount im cac:AllowanceCharge der Position mit cbc:ChargeIndicator false (CII: ram:ActualAmount in ram:SpecifiedLineTradeSettlement/ram:SpecifiedTradeAllowanceCharge). Ist nur ein Prozentsatz bekannt, berechnen Sie den Betrag als Basisbetrag × Prozentsatz ÷ 100.

- [XML validieren](/de/xrechnung-validator?source=resource&rule=BR-41)
- [Rechnung konvertieren](/de/pdf-to-xrechnung?source=resource&rule=BR-41)

## Gültige Beispiele

- BT-136 = 3,00 bei einem Nachlass auf Positionsebene

## Ungültige Beispiele

- CII-Positionsnachlass mit Grund und Prozentsatz, aber ohne ram:ActualAmount (BT-136); in UBL ist ein cac:AllowanceCharge ohne cbc:Amount bereits ein XML-Schemafehler

## Code-Beispiele

### Gültiges XML
```
<ram:SpecifiedLineTradeSettlement>
  <ram:SpecifiedTradeAllowanceCharge>
    <ram:ChargeIndicator>
      <udt:Indicator>false</udt:Indicator>
    </ram:ChargeIndicator>
    <ram:CalculationPercent>10.00</ram:CalculationPercent>
    <ram:BasisAmount>30.00</ram:BasisAmount>
    <ram:ActualAmount>3.00</ram:ActualAmount>
    <ram:Reason>Damaged packaging</ram:Reason>
  </ram:SpecifiedTradeAllowanceCharge>
</ram:SpecifiedLineTradeSettlement>
```

### Ungültiges XML
```
<ram:SpecifiedLineTradeSettlement>
  <ram:SpecifiedTradeAllowanceCharge>
    <ram:ChargeIndicator>
      <udt:Indicator>false</udt:Indicator>
    </ram:ChargeIndicator>
    <ram:CalculationPercent>10.00</ram:CalculationPercent>
    <ram:BasisAmount>30.00</ram:BasisAmount>
    <ram:Reason>Damaged packaging</ram:Reason>
  </ram:SpecifiedTradeAllowanceCharge>
</ram:SpecifiedLineTradeSettlement>
```

## Betroffene Felder

- [BT-136 Betrag des Nachlasses auf Positionsebene](/resources/xrechnung/bt-136-invoice-line-allowance-amount)

## Verwandte Regeln

- [BR-42](/resources/kosit-validator-errors/br-42-line-allowance-reason-required)
- [BR-43](/resources/kosit-validator-errors/br-43-line-charge-amount-required)

## Validierungstools

- [Offizieller KoSIT Validator](https://github.com/itplr-kosit/validator): Führen Sie den offiziellen KoSIT-Validator mit der XRechnung-Konfiguration aus, um EN-16931- und XRechnung-Regeln zu prüfen.
- [PDF zu XRechnung konvertieren](/pdf-to-xrechnung): Validierungsfehler beim Konvertieren erkennen, prüfen und gezielt beheben.

## Verwandte Ressourcen

- [Offizielle Spezifikation](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Testsuite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [Alle Validierungsfehler](/resources/kosit-validator-errors): Übersicht der hier erklärten Validierungsregeln aus EN 16931, XRechnung und Peppol.
