ZUGFeRD

Durch das Steuervereinfachungsgesetz 2011 wurden die Hürden für elektronische Rechnungen gesenkt. Im Umfeld dieses Gesetzes wurde dann ein neues Rechnungsformat mit dem Namen ZUGFeRD entwickelt. Es sieht vor, eine menschen- und maschinenlesbare Repräsentation der Rechnung in einer einzigen Datei zu vereinen.

Die Unterstützung dieses neue Rechnungsformat war bisher mit einem print2forms-Gateway nur unter Zuhilfenahme von externen Programmen möglich. Inzwischen haben wir ein eigenes Programm erstellt, sodass nun eine reine print2forms-Lösung zur Verfügung steht.


Für die Erzeugung ZUGFeRD-kompatibler Rechnungen wird von einem normalen print2forms-Gateway ein Skript aufgerufen, welches im ersten Schritt eine PDF-Datei erstellt, welche dem Standard PDF/A1 genügt. Die für die elektronische Auswertung der Rechnung benötigten Daten werden aus dem Druckdatenstrom der Rechnung extrahiert und in eine XML-Datei eingetragen. Zum Abschluss wird aus der PDF- und der XML-Datei eine PDF-Datei nach dem Standard PDF/A3 erzeugt.

Die Lösung benötigt ein an die speziellen Erfordernisse des jeweiligen Rechnungsdokuments angepasstes Skript, welches die Rechnungsinhalte den durch den ZUGFeRD-Standard vorgegebenen XML-Datenfeldern zuordnet. Als Ausgangspunkt für die Anpassung dieses Skript haben wir eine Vorlage in PHP geschrieben. Durch speziell für ZUGFeRD entwickelte PHP-Unterprogramme ist die Anpassung soweit vereinfacht worden, dass auch Mitarbeiter ohne umfassende Programmierkenntnisse aber mit dem notwendigen Rechnungs-Know-How klarkommen.

Das eigentliche Programm zur Erzeugung der PDF/A3-Datei benötigt eine aktuelle Java-Laufzeitumgebung.

Im Wiki haben wir im Rahmen eines Tips die ZUGFeRD-Lösung ausführlich beschrieben.