Recently I got a task from my employer to introduce a solution for handling customer’s and vendor’s invoices in special format designed in Germany for electronic invoices called ZUGFeRD. Briefly speaking invoice in ZUGFeRD format is a PDF/A file with an attached XML file. The attached XML file is used by software for reading invoices automation. I believe that the initiative to introduce such innovation originates from the concept of the Industry revolution 4.0. As soon as all companies give up using paper invoices and switch to eInvoices exchange then the human can be eliminated from the process of invoices issuing and receiving at all. Software of vendor and customer will do everything automatically. The audit done by the state’s authorities will be automated as well.
After searching a while I found out that no one Microsoft’s partner offers necessary module for Dynamics AX at all. The integration with the third-party applications we did not consider because one of the prerequisites was possibility to extend the solution with additional features like approving the vendors invoices in the workflow.
Thus a decision was made to develop such module. The ZUGFeRD open source .Net library developed by the Swiss company 8gears AG and available under the AGPL license was taken as a main component for the module implementation in Dynamics AX. The ZUGFeRD.NET library provides API for reading and writing XML files and for attaching the XML file to PDF/A document. The invoice in PDF/A format is obtained through transformation of SSRS report to the .doc format and afterwards transformation .doc file to PDF/A format.