XRechnung Fehler PEPPOL-EN16931-R120

Netto-Positionsbetrag stimmt rechnerisch nicht

Der Netto-Positionsbetrag muss aus Menge, Netto-Einzelpreis, Preisbasismenge sowie Positionszuschlägen und -nachlässen reproduzierbar sein.

Veröffentlicht: 9. August 2026Fachlich geprüft: 9. August 2026Szenario: Peppol BIS Billing 3.0 / UBL
Direkte Antwort

PEPPOL-EN16931-R120 bedeutet: Der Netto-Positionsbetrag muss aus Menge, Netto-Einzelpreis, Preisbasismenge sowie Positionszuschlägen und -nachlässen reproduzierbar sein. Korrigieren Sie den Wert im Quellsystem oder Export-Mapping und validieren Sie anschließend die neu erzeugte Datei.

Worum es geht

PEPPOL-EN16931-R120 verstehen, XML-Stelle finden und dauerhaft beheben

Für wen
  • Buchhaltung und Rechnungssteller
  • ERP-Support
  • Integrationsentwickler
Hier finden Sie
  • Regelbedeutung
  • betroffener XML-Pfad
  • Vorher-/Nachher-XML
  • Mapping und Verifikation
Separat prüfen
  • Manuelles Patchen als Dauerlösung
  • Steuerliche Einzelfallberatung
  • Empfängerfreigabe ohne erneuten Test
Korrigierte Datei validieren

Was PEPPOL-EN16931-R120 bedeutet

Peppol berechnet den erwarteten Positionsnettobetrag aus Menge × (Netto-Einzelpreis / Preisbasismenge) plus Positionszuschläge minus Positionsnachlässe.

Ein abweichender LineExtensionAmount deutet meist auf unterschiedliche Rundungs-, Preis- oder Rabattlogik zwischen ERP und XML-Export hin.

Fehler – Versand oder Annahme kann scheiternPeppol BIS Billing 3.0 · EN 16931

Betroffener Business Term und XML-Pfad

EbeneAngabe
Business TermBT-131 · Invoice line net amount
UBLcac:InvoiceLine/cbc:LineExtensionAmount
CIINicht anwendbar: Peppol BIS Billing 3.0 verwendet für diese Regel UBL Invoice/CreditNote.
PrüfszenarioPeppol BIS Billing 3.0 / UBL

Fehlerhaftes und korrigiertes XML

Die Beispiele sind bewusst verkürzte Ausschnitte. Sie zeigen die betroffene Struktur, sind aber keine vollständigen Rechnungsdokumente.

Fehlerhafter Ausschnitt
<cac:InvoiceLine>
  <cbc:InvoicedQuantity unitCode="C62">2</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">25.00</cbc:LineExtensionAmount>
  <cac:Price><cbc:PriceAmount currencyID="EUR">10.00</cbc:PriceAmount></cac:Price>
</cac:InvoiceLine>
Korrigierter Ausschnitt
<cac:InvoiceLine>
  <cbc:InvoicedQuantity unitCode="C62">2</cbc:InvoicedQuantity>
  <cbc:LineExtensionAmount currencyID="EUR">20.00</cbc:LineExtensionAmount>
  <cac:Price><cbc:PriceAmount currencyID="EUR">10.00</cbc:PriceAmount></cac:Price>
</cac:InvoiceLine>

Häufige Ursachen

  • Preis gilt für 100 Stück, BaseQuantity fehlt oder ist falsch.
  • Positionsrabatt ist im Endbetrag, aber nicht als AllowanceCharge abgebildet.
  • Menge oder Preis wurde nachträglich verändert.
  • ERP und Exporter runden an unterschiedlichen Stellen.

Mapping im Quellsystem

QuelleZielDauerhafte Korrektur
MengeInvoicedQuantityTatsächlich fakturierte Menge und Einheit übernehmen.
Netto-Einzelpreis / PreisbasisPriceAmount / BaseQuantityPreisbezug korrekt modellieren, z. B. Preis je 100 Einheiten.
PositionsnettobetragLineExtensionAmountAus denselben strukturierten Komponenten berechnen.

So korrigieren Sie den Fehler

  1. InvoicedQuantity, PriceAmount und BaseQuantity der Position prüfen.
  2. Positionsnachlässe und -zuschläge vollständig einbeziehen.
  3. LineExtensionAmount aus denselben Werten neu berechnen.
  4. Rundungsregeln konsistent anwenden und gesamte Rechnung erneut validieren.
Korrigieren Sie möglichst Stammdaten, Auftrag oder Export-Mapping. Eine manuelle Änderung nur an der einzelnen XML behebt die Ursache nicht dauerhaft.

Vor dem erneuten Versand verifizieren

  • Positionsbetrag mit der offiziellen Formel nachrechnen.
  • BaseQuantity > 0 und fachlich korrekt prüfen.
  • AllowanceCharge-Gruppen der Position einbeziehen.
  • Alle Positionen erneut validieren, nicht nur die zuerst gemeldete.
Datei vollständig prüfenXSD, Schematron und verständliche Fehlererklärung.Pflichtfeld oder XML-Pfad suchenBusiness Terms, Status sowie UBL-/CII-Pfade.

Häufige Fragen

Welche Formel prüft R120?

Menge × (Netto-Einzelpreis / Preisbasismenge) + Positionszuschläge − Positionsnachlässe, innerhalb der vorgesehenen Toleranz.

Warum schlägt nur eine Position fehl?

Weil Preisbasis, Rundung oder Rabattdaten positionsbezogen unterschiedlich sein können.

Offizielle Regelgrundlagen

PEPPOL-EN16931-R120: offizielle RegeldefinitionOpenPeppolPeppol BIS Billing 3.0 – ValidierungsregelnOpenPeppolZusammenhang zwischen XRechnung und Peppol BIS BillingKoSIT / XStandards EinkaufXRechnung Bugfix Release Winter 2025/26KoSIT / XStandards Einkauf