ZUGFeRD-XML und PDF-Rechnung per Webservice zu einer PDF-ZUGFeRD-Rechnung zusammenführen

Mit der Funktion MergeXMLIntoPDF unseres ZUGFeRD-SDK können Sie mühelos eine XML X-Rechnung mit einer PDF-Datei zu einer ZUGFeRD-PDF-Rechnung zusammenführen. Dabei werden gleichzeitig die erforderlichen Einträge in den XMP-Metadaten des finalen PDFs vorgenommen.

Zusätzlich zu den Funktionen des SDKs bieten wir auch Webservices zur Integration an. Diese sind Bestandteil unseres Aloaha eForms Servers, der entweder in Ihrem Rechenzentrum oder in der Cloud installiert werden kann. Zudem stellen wir einen öffentlichen Server zum Testen bereit, erreichbar unter der URL https://eforms.aloaha.com

Der Webservice MergeXMLIntoPDF ist unter der folgenden URL erreichbar: https://eforms.aloaha.com/zugferd.asmx?op=MergeXMLIntoPDF

Dieser Webservice erfordert zwei Parameter. Diese sind xmlid und pdfid.

xmlid ist die ID der hochgeladenen XML X-Rechnung. Sie erhalten diese, wenn Sie auf https://eforms.aloaha.com/xmluploader.aspx eine XML-Datei hochladen. Optional können Sie diesen Prozess auch automatisieren, zum Beispiel mit CURL:

curl --verbose --max-time 300 --retry 0 -F "file=@xinvoice.xml" -k https://eforms.aloaha.com/xmluploader.aspx

oder

curl --verbose --max-time 300 --retry 0 --data-binary "@xinvoice.xml" -H "Content-Type: application/xml" -k https://eforms.aloaha.com/xmluploader.aspx

Ähnliches gilt für die pdfid. Sie ist die ID des hochgeladenen PDF-Dokuments. Sie können das Dokument über die URL https://eforms.aloaha.com/pdfuploader.aspx hochladen. Auch hier können Sie das Dokument direkt an die URL posten:

curl --verbose --max-time 300 --retry 0 -F "file=@rechnung.pdf" -k https://eforms.aloaha.com/pdfuploader.aspx

oder

curl --verbose --max-time 300 --retry 0 --data-binary "@rechnung.pdf" -H "Content-Type: application/pdf" -k https://eforms.aloaha.com/pdfuploader.aspx

Falls Sie Probleme mit HTTPS haben, können Sie auch die unverschlüsselte Variante HTTP verwenden.

Workflow bilden

Mit den obigen URLs ist es möglich, direkt einen Workflow zu erstellen. Zum Beispiel können Sie die xmlid vom xmluploader.aspx direkt als GET-Parameter an pdfuploader.aspx anhängen oder die pdfid vom pdfuploader.aspx direkt als GET-Parameter an xmluploader.aspx anhängen.

Nehmen wir an, wir haben 660e8d1cb7a446538e11dcda6492db1f als xmlid vom xmluploader.aspx erhalten. Sie können dann ein PDF posten und erhalten direkt die fertige ZUGFeRD-Rechnung zurück:

curl --verbose --max-time 300 --retry 0 -F "file=@rechnung.pdf" -k https://eforms.aloaha.com/pdfuploader.aspx?xmlid=660e8d1cb7a446538e11dcda6492db1f -o outputfile.pdf

oder

curl --verbose --max-time 300 --retry 0 --data-binary "@rechnung.pdf" -H "Content-Type: application/pdf" -k https://eforms.aloaha.com/pdfuploader.aspx?xmlid=660e8d1cb7a446538e11dcda6492db1f -o outputfile.pdf

Umgekehrt geht es natuerlich auch. Nehmen wir an, wir haben 42014960242d4c289a3ea5c500152123 als pdfid vom pdfuploader.aspx erhalten. Sie können dann ein xml posten und erhalten direkt die fertige ZUGFeRD-Rechnung zurück:

curl --verbose --max-time 300 --retry 0 -F "file=@xinvoice.xml" -k https://eforms.aloaha.com/xmluploader.aspx?pdfid=42014960242d4c289a3ea5c500152123 -o outputfile.pdf

oder

curl --verbose --max-time 300 --retry 0 --data-binary "@xinvoice.xml" -H "Content-Type: application/xml" -k https://eforms.aloaha.com/xmluploader.aspx?pdfid=42014960242d4c289a3ea5c500152123 -o outputfile.pdf

Falls Sie Probleme mit HTTPS haben, können Sie auch hier die unverschlüsselte Variante HTTP verwenden.

Webbasiert ZUGFeRD XML extrahieren und anzeigen: https://www.zugferdpro.com/webbasiert-zugferd-xml-extrahieren-und-anzeigen/