Was PEPPOL-EN16931-R121 bedeutet
BaseQuantity beschreibt, für wie viele Einheiten der angegebene PriceAmount gilt. Null oder ein negativer Wert kann nicht als Divisor für die Positionsberechnung verwendet werden.
Wenn kein besonderer Preisbezug benötigt wird, sollte das ERP die fachlich richtige Preisbasis verwenden oder das optionale Element nicht künstlich mit null erzeugen.
Betroffener Business Term und XML-Pfad
| Ebene | Angabe |
|---|---|
| Business Term | BT-149 · Item price base quantity |
| UBL | cac:InvoiceLine/cac:Price/cbc:BaseQuantity |
| CII | Nicht anwendbar: Peppol BIS Billing 3.0 verwendet für diese Regel UBL Invoice/CreditNote. |
| Prüfszenario | Peppol 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.
<cac:Price>
<cbc:PriceAmount currencyID="EUR">250.00</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">0</cbc:BaseQuantity>
</cac:Price><cac:Price>
<cbc:PriceAmount currencyID="EUR">250.00</cbc:PriceAmount>
<cbc:BaseQuantity unitCode="C62">100</cbc:BaseQuantity>
</cac:Price>Häufige Ursachen
- Defaultwert 0 wird vom ERP exportiert.
- Preis je 100 Stück ist vorhanden, aber Preisbasis wurde falsch initialisiert.
- Negative Mengen-/Gutschriftenlogik wurde fälschlich auf BaseQuantity übertragen.
- Leeres Feld wird numerisch als 0 serialisiert.
Mapping im Quellsystem
| Quelle | Ziel | Dauerhafte Korrektur |
|---|---|---|
| Preisbezug | BT-149 BaseQuantity | Positive Menge verwenden, auf die sich PriceAmount tatsächlich bezieht. |
| Einheit | BaseQuantity@unitCode | Muss fachlich zum Preis und zur Mengenlogik passen. |
| Positionsberechnung | R120 | Nach Änderung der Preisbasis den LineExtensionAmount neu prüfen. |
So korrigieren Sie den Fehler
- Prüfen, wofür der PriceAmount fachlich gilt.
- Positive BaseQuantity setzen, zum Beispiel 1 oder 100 entsprechend der Preisdefinition.
- Bei nicht benötigter optionaler Preisbasis prüfen, ob das Element entfallen kann.
- R120 nach der Korrektur ebenfalls kontrollieren.
Vor dem erneuten Versand verifizieren
- BaseQuantity fehlt oder ist numerisch größer als null.
- Preis pro Basis entspricht der Produkt-/Vertragslogik.
- Positionsnettobetrag nach R120 stimmt.
- Peppol-Regelprüfung erneut ausführen.
Häufige Fragen
Muss BaseQuantity immer 1 sein?
Nein. Sie kann zum Beispiel 100 sein, wenn der Preis für 100 Einheiten angegeben ist. Entscheidend ist, dass sie positiv und fachlich korrekt ist.
Kann eine Gutschrift eine negative BaseQuantity haben?
Nein. Die Peppol-Regel fordert auch im CreditNote-Kontext eine positive Preisbasismenge, sofern sie angegeben ist.