Zum Inhalt springen
E-Rechnung Zentrale

PEPPOL-EN16931-R008

Leeres Element in der Rechnung

Die Rechnung enthält mindestens ein leeres XML-Element; leere Elemente sind in XRechnung und Peppol nicht erlaubt.

Regelwerk
Peppol BIS Billing 3.0
Stufe
Fehler
Originaltext der Meldung
[PEPPOL-EN16931-R008]-Document MUST not contain empty elements.

Was bedeutet PEPPOL-EN16931-R008?

PEPPOL-EN16931-R008 stammt aus Peppol BIS Billing 3.0 und ist auch Teil der XRechnung-Prüfregeln. Sie verbietet leere Elemente: Jedes Element, das keine Unterelemente hat, muss einen Wert enthalten. Leerzeichen allein zählen nicht als Wert.

  • UBL: Jedes leere Element löst den Fehler aus. Einzige Ausnahme ist cbc:ID in cac:OrderReference.
  • CII: Jedes leere Element löst den Fehler aus – außer ram:ApplicableHeaderTradeDelivery, das in CII leer sein darf.

Typische Beispiele sind <cbc:Note/>, <cbc:StreetName></cbc:StreetName>, <ram:LineTwo/> oder ein leeres <cbc:Telephone> </cbc:Telephone>. Sie entstehen fast immer, wenn eine Software alle Felder eines Formulars in XML übersetzt – auch die nicht ausgefüllten. Die Fehlermeldung nennt in der Regel den Pfad des betroffenen Elements, so dass Sie es schnell finden.

Typische Ursachen

  • Die Software schreibt nicht ausgefüllte Felder als leere Elemente ins XML.
  • Ein Feld enthält nur Leerzeichen oder Zeilenumbrüche.
  • Bei Adressen wird eine leere zweite Adresszeile ausgegeben.

So beheben Sie den Fehler

  1. Suchen Sie das in der Meldung genannte Element (z. B. per Suche nach ></ oder /> im XML).
  2. Entfernen Sie leere Elemente vollständig oder füllen Sie sie mit einem sinnvollen Wert.
  3. Stellen Sie in Ihrer Software ein bzw. melden Sie dem Hersteller, dass leere Felder nicht ausgegeben werden.
  4. Validieren Sie erneut.

Beispiel: falsch und richtig

Falsch
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:Note></cbc:Note>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
Richtig
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
Wo die Regel prüft (XPath)
UBL
//*[not(*) and not(normalize-space())]
CII
//*[not(name() = 'ram:ApplicableHeaderTradeDelivery') and not(*) and not(normalize-space())]

Rechnung erneut prüfen

Legen Sie die korrigierte Datei hier ab. Die Prüfung läuft mit den offiziellen Regeln in Ihrem Browser.

E-Rechnung hier ablegen

XRechnung (UBL oder CII), ZUGFeRD und Factur-X als XML oder PDF. Gern auch mehrere Dateien auf einmal.

Ihre Rechnung verlässt nie Ihren Browser. Prüfung und Anzeige laufen auf Ihrem Gerät, es wird nichts hochgeladen oder gespeichert.

Ohne Datei testen:

Fragen zu PEPPOL-EN16931-R008

Warum ist eine Peppol-Regel in meiner XRechnung-Prüfung?

Die KoSIT hat einige Peppol-Regeln in die XRechnung-Schematron übernommen, darunter R008. Sie gilt daher für jede XRechnung, auch außerhalb des Peppol-Netzes.

Wie finde ich das leere Element?

Die Meldung enthält den XPath des Elements. Alternativ suchen Sie im XML nach „/>" oder nach öffnenden und schließenden Tags ohne Inhalt dazwischen.