BR-DEX-02: Nettobetrag einer Position passt nicht zur Summe ihrer Unterpositionen
Offizielle Meldung
[BR-DEX-02] Der Wert von "Invoice line net amount" (BT-131) einer "INVOICE LINE" (BG-25) oder einer "SUB INVOICE LINE" (BG-DEX-01) soll der Summe der "Invoice line net amount" (BT-131) der direkt darunterliegenden "SUB INVOICE LINE" (BG-DEX-01) entsprechen.
- Schweregrad
- Warnung Hinweis: Die Rechnung gilt deswegen nicht als ungültig, sollte aber geprüft werden.
- Gilt für
- XRechnung (UBL)
- Betroffene Felder
- BT-131, BG-25, BG-DEX-01
Was bedeutet das?
In einer XRechnung-Extension (UBL) soll der Nettobetrag (Invoice line net amount, BT-131) einer Rechnungsposition (BG-25) oder Unterposition (Sub invoice line, BG-DEX-01) der Summe der Nettobeträge ihrer direkt darunterliegenden Unterpositionen entsprechen. Bei mindestens einer Position stimmt die Summe nicht. Die Meldung ist eine Warnung.
Typische Ursachen
Eine Unterposition wurde geändert, hinzugefügt oder entfernt, ohne den Betrag der übergeordneten Position anzupassen.
Rundungsdifferenzen: Die übergeordnete Position wurde aus ungerundeten Werten berechnet, die Unterpositionen aus gerundeten.
Es wurden Beträge über mehrere Ebenen hinweg summiert statt nur die direkt darunterliegenden Unterpositionen.
So beheben Sie den Fehler
Den Nettobetrag jeder Position mit Unterpositionen als Summe der Nettobeträge der direkt darunterliegenden Unterpositionen (cac:SubInvoiceLine/cbc:LineExtensionAmount) berechnen.
Die Prüfung von unten nach oben wiederholen, wenn es mehrere Ebenen gibt.
Die Rechnung erneut erzeugen und prüfen.
Beispiel
Fehlerhaft
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:LineExtensionAmount currencyID="EUR">300.00</cbc:LineExtensionAmount>
<cac:SubInvoiceLine>
<cbc:ID>1.1</cbc:ID>
<cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
...
</cac:SubInvoiceLine>
<cac:SubInvoiceLine>
<cbc:ID>1.2</cbc:ID>
<cbc:LineExtensionAmount currencyID="EUR">150.00</cbc:LineExtensionAmount>
...
</cac:SubInvoiceLine>
...
</cac:InvoiceLine>
Richtig
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:LineExtensionAmount currencyID="EUR">250.00</cbc:LineExtensionAmount>
<cac:SubInvoiceLine>
<cbc:ID>1.1</cbc:ID>
<cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
...
</cac:SubInvoiceLine>
<cac:SubInvoiceLine>
<cbc:ID>1.2</cbc:ID>
<cbc:LineExtensionAmount currencyID="EUR">150.00</cbc:LineExtensionAmount>
...
</cac:SubInvoiceLine>
...
</cac:InvoiceLine>
Für Entwickler: Prüfausdruck je Syntax
XRechnung (UBL) (UBL)
Kontext: /ubl:Invoice[$isExtension]
(every $invoiceline in /ubl:Invoice/cac:InvoiceLine[ exists (./cac:SubInvoiceLine) ] satisfies $invoiceline/xs:decimal(cbc:LineExtensionAmount) = sum($invoiceline/cac:SubInvoiceLine/xs:decimal(cbc:LineExtensionAmount))) and (count( //cac:SubInvoiceLine [count(cac:SubInvoiceLine) > 0 and xs:decimal(cbc:LineExtensionAmount) = sum(cac:SubInvoiceLine/xs:decimal(cbc:LineExtensionAmount))]) = count(//cac:SubInvoiceLine [count(cac:SubInvoiceLine) > 0]))
Verwandte Prüfregeln
- BR-DEX-01: Unzulässiger MIME-Code eines Anhangs (BT-125) in der XRechnung-Extension
- BR-DEX-03: Unterposition ohne genau eine Umsatzsteuerangabe (BG-DEX-06)
- BR-DEX-04: Schema einer Parteikennung ist kein ISO-6523-ICD-Code (Extension)
- BR-DEX-05: Schema einer Registerkennung ist kein ISO-6523-ICD-Code (Extension)
- BR-DEX-06: Schema der Artikelkennung (BT-157) ist kein ISO-6523-ICD-Code (Extension)
- BR-DEX-07: Schema der elektronischen Adresse ist kein EAS-Code (Extension)
Zuletzt aktualisiert:
Erläuterung der Prüfregel, keine Rechts- oder Steuerberatung.