Eine E-Rechnung stellt Rechnungsdaten in einem strukturierten XML-Format bereit. Dieser Artikel und die folgenden zu dieser Serie sollen Ihnen unverbindliche Möglichkeiten zeigen, wie Sie den Einstieg in die Erstellung von E-Rechnungen mit RPG und SQL selbstständig bewerkstelligen können. In den weiteren Folgeartikeln werden dann die speziellen Anforderungen an die E-Rechnungen und mögliche Lösungsansätze dargelegt. In diesem Artikel werden die Besonderheiten und Anforderungen, die an eine E-Rechnung gestellt werden, behandelt.
Was ist eine E-Rechnung?
Eine elektronische Rechnung ist eine Rechnung, die in einem strukturierten elektronischen Format ausgestellt, übermittelt und empfangen wird und die eine elektronische Verarbeitung ermöglicht.
Eine PDF-Rechnung ist ein unstrukturiertes Format. Sie kann zwar vom Menschen gelesen werden, enthält aber keine definierten Datenfelder, die von Maschinen interpretiert werden können. Das bedeutet, dass die Daten aus einer PDF-Rechnung von Buchhaltungssystemen nicht automatisch weiterverarbeitet werden können. Ein einfaches PDF oder eine eingescannten Papierrechnung gilt daher nicht als E-Rechnung.
Eine E-Rechnung liegt hingegen in einem strukturierten Format vor, das speziell für die automatische Verarbeitung in digitalen Systemen entwickelt wurde. Alle Rechnungsdaten haben in der E-Rechnung definierte Datenfelder, sogenannte BT-Felder.
Beispiele für BT-Felder:
BT-1 = Eindeutige Rechnungsnummer:
BT-2 = Rechnungsdatum
BT-22 = Lieferantenkommentar
BT-27 = Vollständiger Name und Rechtsform des Rechnungsstellers
Aufbau einer E-Rechnung:
Jeder Angabe in E-Rechnungen ist eine BT-Nummer (Business Terms) des EN 16931-Standards zugewiesen.
Die Zuteilung der BT-Nummern ermöglicht eine klare Definition der Datenfelder und sorgt für eine Standardisierung der E-Rechnung. Das ermöglicht Buchhaltungs- und ERP-Systemen, die Rechnungsdaten automatischund fehlerfreizu verarbeiten.
Pflichtangeben und optionale Angaben
Für eine korrekte Verarbeitung von E-Rechnungen müssen bestimmte Angaben in jedem Fall angegeben werden und sind daher Pflicht.
Pflichtangaben sind:
- Vollständiger Name und Rechtsform des Rechnungsstellers
- Vollständige Anschrift des Rechnungsstellers
- Vollständige Anschrift des Rechnungsempfängers
- Steuernummer oder Umsatzsteuer-Identifikationsnummer des Rechnungsstellers
- Rechnungsdatum: Das Ausstellungsdatum der Rechnung
- Eindeutige Rechnungsnummer: Eine einmalige und fortlaufende Nummer zur Identifizierung der Rechnung
- Menge und Art der gelieferten Gegenstände oder Umfang und Art der erbrachten Leistungen
- Liefer- oder Leistungsdatum: Der Zeitpunkt, an dem die Lieferung oder Leistung erbracht wurde (sofern nicht identisch mit dem Rechnungsdatum)
- Nettoentgelt (Entgelt ohne Umsatzsteuer) für die Lieferung oder Leistung, aufgeschlüsselt nach Steuersätzen und Steuerbefreiung
- Anwendbarer Umsatzsteuersatz und der dazugehörige Steuerbetrag
- Hinweis zum Skontoabzug, sofern er gewährt wird
- Angabe, ob es sich um eine Rechnung oder Gutschrift handelt
- LeitwegID (bei X-Rechnungen an Behörden)
Die gängigsten E-Rechnungsformate: X-Rechnung und ZUGFeRD
In Deutschland sind zwei E-Rechnungsformate besonders wichtig:
- X-Rechnung:
X-Rechnung ist ein reines XML-Format, das ausschließlich maschinenlesbare Daten enthält. Für Menschen ist eine X-Rechnung nicht ohne spezielle Software lesbar.
- ZUGFeRD:
Die Abkürzung steht für “Zentraler User Guide des Forums elektronische Rechnung Deutschland”. ZUGFeRD kombiniert eine visuell ansprechende PDF-Datei mit einer maschinenlesbaren XML-Datei, wodurch sowohl eine manuelle Sichtung als auch eine automatisierte Verarbeitung der Rechnung möglich ist. ZUGFeRD ist ein hybrides Format, das eine PDF-Datei (im Format PDF/A-3) und eine XML-Datei kombiniert.
Das XML-Format der E-Rechnung
Wie aus der folgenden Abbildung zu erkennen ist, besteht eine E-Rechnung im XML-Formt aus feststehenden Tags und Informationen, die aus einer Rechnung übernommen wurden.
Quelle: BärDie hier verwendete Rechnung (siehe auch Abbildung_04) wird in den beiden folgenden Abbildungen ausschnittsweise angezeigt.
In Abbildung_Ausschnitt einer Rechnung im PDF-Format ist zu sehen, wie die Felder BT-1 (Rechnungsnummer) und BT-2 (Rechnungsdatum) aus der XML-Datei von Abbildung_01 auf der Rechnung dargestellt werden.
Quelle: BärAbbildung_ Darstellung von BT-22 in PDF-Rechnung zeigt, wie das Feld BT-22 (Bemerkungen) aus der XML-Datei von Abbildung_01 auf der Rechnung dargestellt werden.
Quelle: Bär
Quelle: BärTools zur Prüfung der XML-Formate
Um eine E-Rechnung im XML-Format zu prüfen, gibt es verschiedene Möglichkeiten, darunter die Verwendung von Online-Validatoren und speziellen Tools, die eine maschinelle Auswertung ermöglichen. Die Prüfung umfasst sowohl die formale Richtigkeit des XML-Codes als auch die inhaltliche Übereinstimmung mit den geltenden Standards.
- Prüfung der formalen Richtigkeit:
- Validatoren überprüfen die Syntax des XML-Codes, die Einhaltung der Schemas und die Gültigkeit der enthaltenen Daten.
- Dies stellt sicher, dass die Datei technisch korrekt und maschinenlesbar ist.
- Prüfung der inhaltlichen Richtigkeit:
- Validatoren können auch die inhaltliche Richtigkeit der Rechnung prüfen, z.B. die Übereinstimmung mit den Vorgaben der X-Rechnung oder ZUGFeRD.
- Auswertung der Ergebnisse:
- Die Validierung liefert ein Prüfergebnis, das auf Fehler oder Abweichungen hinweist.
- Bei formalen Fehlern sollte die Rechnung korrigiert und erneut validiert werden, bevor sie versendet wird.
- Optionale menschliche Lesbarkeit:
- Obwohl die maschinelle Lesbarkeit im Vordergrund steht, kann die XML-Datei auch in eine lesbare Form umgewandelt werden, z.B. mit einem XML-Viewer oder durch die Aufbereitung in einem Hybridformat.
- Ein zusätzliches PDF-Dokument ist optional möglich, aber nicht zwingend erforderlich.
Hier sind einige Tools, die ich für meine Arbeit bisher eingesetzt habe und weiterhin einsetzen werde:
XML Formatter
- Online-Tool
- kostenlos
- formatiert eine XML-Zeichenfolge/-Datei mit der gewünschten Einrückungsebene.
- Die Formatierungsregeln sind nicht konfigurierbar, aber es wird ein Einrückungsmuster pro Element verwendet, das die beste Lesbarkeit bietet.
https://www.freeformatter.com/xml-formatter.html#before-output
B2B-Router
- Online-Tool
- kostenlos
- Prüft ein E-Dokument in einem strukturierten Format, wie Rechnungen, Bestellungen, Lieferavise oder Steuerberichte, auf Korrektheit und Konformität.
- Fehler, die ermittelt wurden, können im XML-Code angezeigt werden,
- Aus der XML-Datei kann ein Dokument als PDF in lesbarer Form erstellt werden.
https://app.b2brouter.net/de/validation
PDF24
- Online-Tool, kann auch lokal eingesetzt werden
- kostenlos
- Enthält einen Generator zum Erstellen von elektronischen Rechnungen wie X-Rechnung und ZUGFeRD
E-Rechnungs-Validator Serviceportal Baden-Württemberg
Hier erfolgt eine formale Validierung der X-Rechnung durch:
- Prüfung der Verwendung eines korrekten Syntaxschemas
- Prüfung der EN 16931-Regeln
- Prüfung der X-Rechnungs-Regeln
https://erechnungsvalidator.service-bw.de
Und wie können diese XML-Anforderungen mit RPG und SQL gelöst werden?
In den beiden vorherigen Artikeln zu dieser Reihe E-Rechnung habe ich gezeigt, wie mit RPG und SQL XML-Dateien erstellt werden können. Da die X-Rechnung eine feste Struktur mit festen konstanten Tags hat, ist die Aufgabenstellung zunächst für diesen Teil klar:
- Ausgabe der festen Tags in der vorgegebenen Struktur mit vorherigem Einfügen der Inhalte der Datenfelder aus den Rechnungsdateien.
In den folgenden Artikeln zu dieser Reihe werde ich Ihnen zwei Lösungsansätze zeigen.
Hinweis:
Die hier erläuterten Sachverhalte sollen einen Überblick über das Thema E-Rechnung geben. Sie erheben keinen Anspruch auf Vollständigkeit. Für die Erarbeitung des Stoffes habe ich in erster Linie die folgende Webseite verwendet:
Vorschau:
Im nächsten Artikel werden weitere Möglichkeiten gezeigt, wie XML-Dateien mit RPG und SQL erstellt werden können.
Bis dahin wünsche ich Ihnen weiterhin viel Spaß beim Vermehren Ihrer Fertigkeiten.
Den Autor Theo Bär erreichen Sie unter EDV-Beratung Theo Bär – Ringmauerweg 1 – 69250 Schönau – Tel. (+49) 6228 912 630 – e-Mail info@edv-baer.com
