Elektronische Rechnungen - XRechnung, ZUGFeRD & Co.
Was ist eine E-Rechnung
Mit E-Rechnungen (elektronische Rechnungen) können Daten einer Rechnung elektronisch übermittelt und verarbeitet werden. Dies kann unter Anderem die Rechnungsstellung vereinfachen, die Bearbeitungszeit durch automatische Verarbeitungsschritte verkürzen und die Daten und Prozess Qualität durch beispielsweise durchführbare Validierungen steigern.
Gesetzliche Grundlage - Änderungen ab 01.01.2025
Ab dem 1. Januar 2025 sind (umsatzsteuerpflichtige) Unternehmen dazu verpflichtet, E-Rechnungen empfangen zu können und später (ab 2027) auch versenden zu können (siehe Wachstumschancengesetz).
Welche Formate von E-Rechnungen gibt es?
Die Rechnungsinformationen einer E-Rechnung werden strukturiert in einer XML-Datei abgelegt. Es gibt zwei Standard Formate die für Unternehmen wichtig sind:
XRechnung:
Bei einer XRechnung handelt es sich um einen E-Rechnungs Standard im XML Format, welcher die Richtlinie 2014/55/EU umsetzt. Es enthält die Rechnungsinformationen in einem strukturierten XML, welche maschinell ausgelesen und so weiterverarbeitet werden kann.
ZUGFeRD (Version 2.2.0):
Bei einer ZUGFeRD Datei handelt es sich um ein PDF/A Dokument mit darin eingebetteten Rechnungsdaten im XML-Format. Das PDF Dokument stellt dabei beispielsweise die Rechnungsinformationen in einem lesbaren Format dar. Die eingebettete XML Datei enthält die Rechnungsinformationen in einem strukturierten und maschinell lesbaren XML-Format.
Verarbeitung von E-Rechnungen mit jadice
E-Rechnung und jadice flow
Mit jadice flow ist es möglich E-Rechnungen zu erkennen und in ein aufbereitetes PDF zu konvertieren.
Der grundlegende Workflow um E-Rechnungen mit jadice flow zu erkennen und konvertieren sieht wie folgt aus:
Erkennen von E-Rechnungen:
Nach der Analyse eines E-Rechnungsdokuments, lässt sich eine XRechnung anhand des Mimetypes “application/xml; x-rechnung=true; charset=UTF-8” erkennen. Außerdem findet man Informationen zur X-Rechnung in den Stream-Analysis-Details: "x_rechnung":true
ZUGFeRD Dokumente lassen sich anhand der Information “is-zugferd":true, sowie dem Eintrag “ZUGFERD_DETAILS” in den Properties des analysierten Streams erkennen. In den ZUGFERD_DETAILS lassen sich unter Anderem Informationen wie der Dateiname des eingebetteten XMLs oder den ConformanceLevel finden.
Konvertierung von E-Rechnung in ein aufbereitetes PDF:
E-Rechnungs-Informationen eines entsprechenden Eingangsdokuments können in ein aufbereitetes und gut lesbares PDF konvertiert werden. Enthalten Email Anhänge eine E-Rechnung, können diese auch mithilfe von jadice flow in ein aufbereitetes PDF konvertiert werden.
Im folgenden ist ein Ausschnitt einer konvertierten Test XRechnung zu sehen:
Ausblick: Eine Auswahl von verschiedenen Stylesheets um konvertierte E-Rechnungen darzustellen folgen.
E-Rechnung und jadice server
Ab der jadice server Version 5.14.19.2. unterstützt der jadice server 5 ebenso wie jadice flow die Erkennung und PDF-Konvertierung von X-Rechnung und ZUGFeRD Dateien. Für weitere Informationen siehe Erkennung und Konvertierung von E-Rechnungen.
Um E-Rechnungen im jadice server zu konvertieren, kann die XRechnung2PdfNode
in Ihr Jobtemplate eingebunden werden. Außerdem wird über die DynamicPipelineNode
XRechnung automatisch nach PDF konvertiert.
Um bei ZUGFeRD Eingangsdokumenten das eingebettete XML vom PDF zu extrahieren, kann die PortableCollectionDisassemblingNode
eingesetzt werden. Anschließend können das extrahierte XML Dokument, sowie das PDF Dokument über die DynamicPipelineNode
nach PDF konvertiert und wieder zusammengefügt werden.
Enthalten Email Anhänge eine E-Rechnung, können sie über die EmailConversion.groovy
in ein aufbereitetes PDF konvertiert werden.
🏞️ Anzeige von E-Rechnungen mit jadice
Alle jadice Produkte (auch Maintenance-Versionen) unterstützen nativ die Anzeige von XRechnungs-Dokumenten.
Hierzu müssen Sie lediglich die folgende Dependency einbinden:
<dependency>
<groupId>com.levigo.jadice.documentplatform.core</groupId>
<artifactId>jadice-format-xrechnung</artifactId>
</dependency>
Eine Online-Demo hierzu finden Sie hier.
Ausblick: Zeitnah wird ein optimiertes Layout für XRechnung in allen Produkten ausgerollt.
⬅ Annotationen
Es ist aktuell zwar möglich auf XRechnungs-Dokumente Annotationen anzubringen. Da sich Annotationen auf eine Position im Dokument (X/Y-Koordinaten) beziehen, sind diese “nicht stabil”, da sich die Darstellung seitens jadice in Zukunft ändern kann.
Mit der allgemeinen Verfügbarkeit unserer Intention-Basierten Annotationen (diese Beziehen sich unabhängig von der Darstellung auf einen exakten Teil eines Dokuments) wird sich dies ändern. Sobald diese Annotationen verfügbar sind, werden wir Sie gesondert informieren.