ZUGFeRD, XRechnung and Factur-X — in your own software, on your own servers
ZUGFeRD Pro is the e-invoicing SDK by Aloaha Limited. It creates, embeds, reads, validates and signs EN 16931 invoices from C#, VB.NET, VB6, VBA, Access, Delphi, the command line or a web service. Your invoice data stays in your own process.
Everything an EN 16931 invoice needs, in one library
Create
Build the CII XML from your own invoice data: seller and buyer, line items, VAT breakdown, payment terms and SEPA details, allowances and charges, references and attachments.
Embed in PDF/A-3
Attach the XML to the PDF your software already prints. The visible invoice stays as it is; the XML travels inside as a PDF/A-3 attachment.
PDF/A-3 from XML
No PDF yet? CreateDocFromXML fills a Word (DOCX) template with the invoice data and produces the PDF/A-3 with the XML embedded.
Read and extract
Extract the XML from incoming ZUGFeRD or Factur-X PDFs and read every field, including line items, totals and payment details, into your own system.
Validate
Check invoices against EN 16931 and the XRechnung rules before you send them, so the recipient does not reject them.
Import UBL and CSV
Read UBL invoices and convert them to CII, or create invoices in batches from CSV files, for example from an export of an older system.
One data model, the formats your customers ask for
ZUGFeRD, Factur-X and XRechnung describe the same EN 16931 invoice. ZUGFeRD and Factur-X are technically identical hybrid invoices: a readable PDF/A-3 with the XML inside. XRechnung is the pure XML format of the German public sector and exists in two syntaxes, UBL and CII. The SDK writes UN/CEFACT Cross Industry Invoice (CII) for all three.
| Format | Version | Container | Typical use |
|---|---|---|---|
| ZUGFeRD | 2.5.2 | PDF/A-3 with CII XML | German B2B; profiles EN 16931 (COMFORT), EXTENDED, XRECHNUNG |
| Factur-X | 1.09.2 | PDF/A-3 with CII XML | French B2B; same profiles as ZUGFeRD |
| XRechnung | 3.0.x | XML only (CII syntax) | German public sector (B2G) and B2B |
| UBL | Import | XML | Read and converted to CII; the SDK does not write UBL |
Fits the software you already have
.NET
Reference the assembly from C# or VB.NET and call the invoice object directly.
C# VB.NET .NET Framework 4.7.2COM
The same functions as a COM object for VB6, VBA in Excel, Word and Access, and Delphi. One installer registers the SDK in the GAC and for COM.
VB6 VBA Access DelphiCommand line: zugcmd
Create invoices from CSV, embed XML into PDF/A-3, export to CSV and sign PDFs from batch files and scheduled tasks, without programming.
CSV Batch ScriptsWeb service
An ASP.NET web service merges an invoice PDF and its XML into a ZUGFeRD PDF, for systems that cannot load a Windows library.
HTTP ASP.NETAloaha ZUGFeRD GUI
A Windows program to create, read, edit and sign ZUGFeRD, Factur-X and XRechnung files without programming. EUR 199; the licence also covers the Aloaha PDF Viewer.
No code WindowsDocumentation
Every function is documented on zugferdpro.com/api, with code samples for VB.NET and VB6, and all 196 EN 16931 business terms (BT) with cardinality, profiles and XPath.
API 196 BTSign invoices with PAdES up to B-LTA
ZUGFeRD Pro signs finished invoice PDFs in two ways. Locally with a certificate on your own machine (zugcmd -cert), or remotely through the CodeB Remote Signature Service with SignPDFRemote, the RemoteSigner COM class or zugcmd -remoteurl. Remote signatures are PAdES at the level you ask for:
- B-B: the basic signature.
- B-T: with an RFC 3161 timestamp that proves when the invoice was signed.
- B-LT: with certificates and revocation data embedded, so the signature can be checked years later.
- B-LTA: plus an archive timestamp for long-term retention.
With MinLevel you set the lowest level you accept; the service reports the level it delivered. Remote signing is the one function that sends data out: the PDF to be signed goes to the CodeB server you configure. The service implements the CSC v2 API; see also GoBD-compliant invoice signing.
E-invoicing deadlines in Germany and the EU
Germany introduced mandatory B2B e-invoicing with the Growth Opportunities Act (Wachstumschancengesetz). Other EU countries follow their own timetables. Dates as of October 2026; check the rules of your own tax authority before you plan.
| Date | Country | Obligation |
|---|---|---|
| 2019-01-01 | Italy | B2B e-invoices through the national exchange system SdI, in FatturaPA format. |
| 2019-04-18 | EU (B2G) | Central public authorities must accept EN 16931 invoices (Directive 2014/55/EU). |
| 2020-04-18 | EU (B2G) | All other (regional and local) public authorities follow. |
| 2025-01-01 | Germany | All businesses must be able to receive structured e-invoices in domestic B2B. |
| 2026-01-01 | Belgium | Structured e-invoices mandatory in B2B. |
| 2026-02-01 | Poland | National KSeF system mandatory for large companies (over PLN 200 million turnover). |
| 2026-04-01 | Poland | KSeF mandatory for all other companies, except micro businesses. |
| 2026-09-01 | France | All businesses must receive e-invoices; large and mid-sized companies must issue them. |
| 2027-01-01 | Germany | Companies with more than EUR 800,000 turnover in the previous year must issue e-invoices. |
| 2027-01-01 | Poland | KSeF mandatory for micro businesses. |
| 2027-09-01 | France | Small and micro businesses must issue e-invoices. |
| 2027-10-06 | Spain | B2B e-invoicing for companies with more than EUR 8 million turnover. |
| 2028-01-01 | Germany | All businesses must issue e-invoices in domestic B2B. |
| 2028-10-06 | Spain | B2B e-invoicing for all other companies. |
| 2030-07-01 | EU (ViDA) | E-invoices and digital reporting for cross-border B2B within the EU (Directive (EU) 2025/516). |
Two ways to put it to work
Add e-invoices to software you run
Your invoicing runs in an Access database, a VB6 or VBA application, a Delphi program or your own .NET system. Add ZUGFeRD and XRechnung output with a few calls instead of replacing the application.
Ship e-invoicing in your product
Software vendors build the SDK into their ERP, accounting or billing product and pass it on with runtime licences. Royalty-free, project and web-service licences are available on request.
No invoicing software at all
Use the Aloaha ZUGFeRD GUI, or let a web form create the invoice with the CodeB eForms Server.
What is new in version 11
- Requires .NET Framework 4.7.2; runs about four times faster than version 10 in 64-bit mode.
- Better UBL import and one installer that registers the SDK in the GAC and for COM.
- 11.0.0.1:
AddDeliveryNoteItem(delivery note per line, EXTENDED profile) and correct references to preceding invoices (BG-3). - 11.0.0.2:
SignPDFRemoteandSignPDFRemoteBytesfor remote PAdES signatures. - 11.0.0.3:
RemoteSignerCOM class withMinLevel, and signing fromzugcmd. - Version 10.0.0.36 remains available as the last build for .NET Framework 3.5.
Licences and prices
| Licence | Price (excl. VAT) | Includes |
|---|---|---|
| SDK licence | EUR 1,350 | One developer workstation, runtime licence for 10 users, one-off |
| Runtime licence | EUR 350 | One end customer with 10 workstations, one-off |
| Aloaha ZUGFeRD GUI | EUR 199 | Windows program; licence also covers the Aloaha PDF Viewer |
| Maintenance | 20 % per year | Optional; free updates while it runs; covers all licences in use |
| Trial licence | free | Time-limited, from info@aloaha.com |
Sold to businesses only. Royalty-free, project and web-service licences on request. Current prices: zugferdpro.com.
Built by a PDF and signature vendor
Aloaha Limited has built PDF tools and SDKs for more than 25 years. The ZUGFeRD SDK was publicly documented on 22 February 2014, before ZUGFeRD 1.0 was released on 25 June 2014, and has followed every version of the standard since, up to ZUGFeRD 2.5.2 and Factur-X 1.09.2.
Frequently asked questions
What is ZUGFeRD Pro?
ZUGFeRD Pro is an on-premise software development kit by Aloaha Limited (Malta, EU) for EN 16931 e-invoices. It creates, embeds, reads, validates and signs ZUGFeRD, Factur-X and XRechnung invoices from .NET, COM (VB6, VBA, Access, Delphi), the zugcmd command line or a web service. It has been on the market since 2014.
Which formats and versions does the SDK support?
ZUGFeRD 2.5.2 and Factur-X 1.09.2 with the profiles EN 16931 (COMFORT), EXTENDED and XRECHNUNG, and XRechnung in CII syntax. The output is always UN/CEFACT CII. UBL invoices can be imported and converted to CII.
Which programming languages can I use?
Any .NET language such as C# and VB.NET, every COM client such as VB6, VBA in Excel, Word or Access and Delphi, the zugcmd command-line tool for batch files and scripts, and an ASP.NET web service for other platforms.
Does invoice data leave our network?
No. The SDK runs entirely inside your own process and also works on air-gapped systems. The only exception is the optional remote signature: if you choose it, the PDF to be signed is sent to the CodeB server you configure.
What does the ZUGFeRD SDK cost?
SDK licence EUR 1,350 once per developer workstation, including a runtime licence for 10 users. Runtime licence EUR 350 once per end customer, including 10 workstations. Aloaha ZUGFeRD GUI EUR 199. Optional maintenance 20 % per year. All prices excluding VAT, for business customers only. A trial licence is free.
When do German companies have to send e-invoices?
Every German business has had to be able to receive structured e-invoices since 1 January 2025. From 1 January 2027 companies with more than EUR 800,000 turnover in the previous year must issue them for domestic B2B invoices, and from 1 January 2028 all companies. Invoices up to EUR 250 and tickets are exempt.
Can I sign ZUGFeRD invoices?
Yes. Sign locally with a certificate, or remotely as PAdES from level B-B up to B-LTA through the CodeB Remote Signature Service (SignPDFRemote, the RemoteSigner COM class or zugcmd). German VAT law does not require a signature on e-invoices, but a signature proves origin and integrity.
Which .NET version does version 11 need?
Version 11 requires .NET Framework 4.7.2 or later on Windows. Version 10.0.0.36 is the last build for .NET Framework 3.5.
We have no invoicing software. What can we use?
Use the Aloaha ZUGFeRD GUI to create invoices without programming, or the CodeB eForms Server, which turns a web form into a ZUGFeRD or XRechnung invoice.
Try ZUGFeRD Pro
Download the SDK, read the code samples, and ask info@aloaha.com for a free trial licence or a quote.
Downloads ↗ Code samples ↗ zugferdpro.com ↗