BR-16An Invoice shall have at least one Invoice line (BG-25)

Offizieller Regeltext

Die Rechnung muss mindestens eine Rechnungsposition (BG-25) enthalten — Kopf- und Summendaten allein sind keine gültige Rechnung. Auch eine Pauschale braucht eine Position.

Schweregrad
Fehler
Gilt für
CII, UBL
Regelwerk
v2026-08-31
Geprüft am

Geschrieben und gegen das offizielle KoSIT-Regelwerk geprüft von Dmytro Yalanskyi, NormAPI.

Warum tritt BR-16 auf?

Tritt auf, wenn der Generator Positionen nur aus einer Artikelliste erzeugt und diese leer ist — etwa bei Pauschal- oder Abschlagsrechnungen, die intern ohne Einzelpositionen geführt werden.

Was der Validator prüft

Der Ausdruck, den das offizielle KoSIT-Regelwerk auswertet — nicht paraphrasiert, sondern aus der ausgelieferten Schematron-Datei gelesen. UBL und CII adressieren verschiedene Dokumentbäume, deshalb steht dieselbe Regel je Syntax anders da.

UBL
exists(cac:InvoiceLine) or exists(cac:CreditNoteLine)
CII
//ram:IncludedSupplyChainTradeLineItem

Quelle: Regelwerk v2026-08-31

Wie behebt man BR-16?

Erzeugen Sie auch für Pauschalbeträge genau eine Position: cac:InvoiceLine in UBL, ram:IncludedSupplyChainTradeLineItem in CII. Die eine Position muss dann selbst vollständig sein — Positionsnummer (BR-21), Menge 1 (BR-22), Maßeinheit C62 für „Stück“ (BR-23), Nettobetrag (BR-24), Bezeichnung (BR-25) und Einzelpreis (BR-26). Wer nur die Position anlegt und die sechs Felder ausläßt, tauscht einen Fehler gegen sechs.

Im XML

Ausschnitt in UBL. Der CII-Pfad steht oben im Text — dieselbe Änderung, andere Elementnamen.

Fehlerhaft
<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>
  <cbc:PayableAmount currencyID="EUR">1190.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
Korrigiert
<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>
  <cbc:PayableAmount currencyID="EUR">1190.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
  <cbc:ID>1</cbc:ID>
  <cbc:InvoicedQuantity unitCode="C62">1</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">1000.00</cbc:LineExtensionAmount>
  <cac:Item>
    <cbc:Name>Pauschale</cbc:Name>
    <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:Price>
    <cbc:PriceAmount currencyID="EUR">1000.00</cbc:PriceAmount>
  </cac:Price>
</cac:InvoiceLine>

Verwandte Regeln

NormAPI liefert technische Validierung, keine Steuer- oder Rechtsberatung.