- Thema
- Fragen und Antworten
- Business Terms
- BT-24 Spezifikationskennung BT-10 Referenz des Käufers BT-49 Elektronische Adresse des Käufers
- Codebeispiele
- VB.NET
- Veröffentlicht
Kurz: Die Deutsche Bahn (DB InfraGO) und andere öffentliche Auftraggeber nehmen nur XRechnung an. Wird die Rechnung als Factur-X bzw. ZUGFeRD im Profil EXTENDED erzeugt, erkennt die Eingangsprüfung das an der Spezifikationskennung und weist die Datei ab – noch bevor der Inhalt geprüft wird. Die Lösung: die Rechnung als XRechnung ausgeben und auf die aktuelle SDK-Version aktualisieren.
Woran Sie es im XML erkennen
Entscheidend ist die Spezifikationskennung BT-24 ganz oben im Dokument (GuidelineSpecifiedDocumentContextParameter):
<!-- abgelehnt: Factur-X Extended -->
urn:cen.eu:en16931:2017#conformant#urn:factur-x.eu:1p0:extended
<!-- erwartet: XRechnung 3.0 -->
urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0
Steht dort factur-x.eu:1p0:extended (oder #conformant# statt #compliant#), ist es keine XRechnung. Das EXTENDED-Profil nutzt zudem Elemente, die die XRechnung nicht erlaubt – zum Beispiel einen Angebotsbezug (QuotationReferencedDocument) auf Positionsebene. Ein XRechnung-Prüfer (KoSIT) lehnt solche Elemente ab. Welches Profil was kann, zeigt der Profilvergleich; den Unterschied der Formate der Artikel ZUGFeRD, XRechnung und Factur-X.
Lösung mit dem Aloaha ZUGFeRD SDK
Erzeugen Sie die Rechnung als XRechnung: Rechnungsstandard xInvoice und Profil comfort (EN 16931). Damit schreibt das SDK automatisch die richtige BT-24-Kennung …kosit:xrechnung_3.0:
' XRechnung 3.0 erzeugen (statt Factur-X Extended)
Dim alo As New Aloaha_ZUGFeRD(iXML.ZUGFeRDProfile.comfort, False, _
"IHR-LIZENZSCHLUESSEL", iXML.ZUGFeRDVersion.xInvoice)
Zum Vergleich: ZUGFeRDVersion.ZUGFeRD zusammen mit ZUGFeRDProfile.extended ergibt genau die Factur-X-Extended-Datei, die die Bahn ablehnt. Für die Bahn ist also xInvoice + comfort die richtige Kombination.
Wichtig ist außerdem eine aktuelle SDK-Version: Ältere Stände (z. B. 9.x) erzeugen noch keine XRechnung 3.0. Die aktuelle Version gibt sie sauber aus – die Downloads finden Sie unter Downloads.
Weitere Stolpersteine bei der Bahn
- Leitweg-ID (BT-10, BuyerReference): Die DB verlangt eine gültige Leitweg-ID als Käuferreferenz. Prüfen Sie den Wert gegen die von der DB vorgegebene ID.
- Elektronische Adresse des Käufers (BT-49): Hier muss die Empfängeradresse der DB stehen, nicht Ihre eigene.
- Skonto: Zahlungsbedingungen mit Skonto müssen dem strukturierten XRechnung-Format folgen – siehe Skonto in der XRechnung.
Vor dem Versand prüfen
Prüfen Sie die Datei vor dem Versand gegen die EN 16931 bzw. XRechnung, dann erreicht die Rechnung die Bahn fehlerfrei: E-Rechnung im SDK prüfen und validieren. Welche Software welches Format braucht, fasst XRechnung für Behörden, ZUGFeRD für Firmen zusammen.
Häufige Fragen
Warum lehnt die DB InfraGO meine Rechnung ab?
Meist, weil die Rechnung als Factur-X/ZUGFeRD im Profil EXTENDED statt als XRechnung erstellt wurde. Die Bahn nimmt nur XRechnung an und weist andere Profile bei der Eingangsprüfung ab.
Woran erkenne ich, ob meine Datei eine XRechnung ist?
An der Spezifikationskennung BT-24 oben im XML. Eine XRechnung 3.0 trägt dort urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0. Steht dort factur-x.eu:1p0:extended, ist es keine XRechnung.
Wie stelle ich das Aloaha ZUGFeRD SDK auf XRechnung um?
Erzeugen Sie die Rechnung mit ZUGFeRDVersion.xInvoice und dem Profil comfort. Dann schreibt das SDK die XRechnung-Kennung automatisch. Verwenden Sie dazu eine aktuelle SDK-Version.
Akzeptiert die Bahn auch ZUGFeRD?
Für die Einreichung verlangt die DB XRechnung. Ein ZUGFeRD-PDF kann die XRechnung-XML zwar enthalten, maßgeblich ist aber, dass die eingebettete XML eine gültige XRechnung ist – nicht das Extended-Profil.