ZUGFeRD to FatturaPA
Learn how to transform your German ZUGFeRD hybrid PDF invoices into Italian electronic invoice format (FatturaPA) for business transactions in Italy.
Understanding ZUGFeRD Format
ZUGFeRD (Zentraler User Guide des Forums elektronische Rechnung Deutschland) is the German electronic invoice standard. It is a hybrid format combining a human-readable PDF with an embedded CII XML — technically identical to Factur-X 1.x but branded for Germany. The embedded XML file is named zugferd-invoice.xml.
Key characteristics of ZUGFeRD:
- Hybrid format: PDF for human reading + CII XML for machine processing
- Based on UN/CEFACT CII (Cross Industry Invoice) syntax
- Compliant with European standard EN 16931
- Multiple profiles: MINIMUM, BASIC WL, BASIC, EN16931, EXTENDED
- Embedded XML attachment named
zugferd-invoice.xml - Widely used by German SMEs and public sector suppliers
ZUGFeRD Structure Example
ZUGFeRD uses the UN/CEFACT CII syntax inside the embedded XML. Below is how a supplier is represented:
<ram:SellerTradeParty>
<ram:Name>Mustermann GmbH</ram:Name>
<ram:SpecifiedLegalOrganization>
<ram:ID schemeID="0088">4012345678901</ram:ID>
</ram:SpecifiedLegalOrganization>
<ram:PostalTradeAddress>
<ram:PostcodeCode>10115</ram:PostcodeCode>
<ram:LineOne>Musterstrasse 1</ram:LineOne>
<ram:CityName>Berlin</ram:CityName>
<ram:CountryID>DE</ram:CountryID>
</ram:PostalTradeAddress>
<ram:SpecifiedTaxRegistration>
<ram:ID schemeID="VA">DE123456789</ram:ID>
</ram:SpecifiedTaxRegistration>
</ram:SellerTradeParty>Understanding FatturaPA Format
FatturaPA (Fattura Elettronica) is the official Italian electronic invoice format mandated by the Agenzia delle Entrate. It is a pure XML format that contains all invoice data in a structured, machine-readable format designed for automatic processing by the Italian tax system (SDI).
Key characteristics of FatturaPA:
- Pure XML format with no visual representation
- Specific Italian tax fields and VAT codes
- Mandatory for all B2B and B2G transactions in Italy
- Requires digital signature for transmission
- Processed through the Sistema di Interscambio (SDI)
- Contains specific Italian fiscal requirements
FatturaPA Structure Example
FatturaPA uses a different XML schema (SdiFatturaPA). The same supplier information must be mapped to the CedentePrestatore block:
<CedentePrestatore>
<DatiAnagrafici>
<IdFiscaleIVA>
<IdPaese>DE</IdPaese>
<IdCodice>123456789</IdCodice>
</IdFiscaleIVA>
<Anagrafica>
<Denominazione>Mustermann GmbH</Denominazione>
</Anagrafica>
</DatiAnagrafici>
<Sede>
<Indirizzo>Musterstrasse 1</Indirizzo>
<CAP>10115</CAP>
<Comune>Berlin</Comune>
<Nazione>DE</Nazione>
</Sede>
</CedentePrestatore>Why Convert ZUGFeRD to FatturaPA?
Converting between these formats is essential for:
- Italian market: Selling to Italian customers who require FatturaPA format
- Compliance requirements: Meeting Italian e-invoicing regulations
- Cross-border transactions: German companies with Italian subsidiaries or customers
- System integration: Working with Italian business systems and SDI
- Multi-country operations: Companies with both German and Italian market presence
Conversion Process
Converting your ZUGFeRD to FatturaPA is simple and fast:
Step 1: Upload Your Invoice
Upload your ZUGFeRD PDF file. The system automatically reads the embedded data.
Step 2: Automatic Processing
Our tool validates and converts the invoice data directly into the FatturaPA standard, handling all field mappings and structure transformations behind the scenes.
Step 3: Download Ready-to-Use File
You receive a properly formatted FatturaPA XML file ready for Italian business transactions and submission through SDI.
Common Conversion Issues
Be aware of these challenges when converting ZUGFeRD to FatturaPA:
1. Hybrid Format Complexity
ZUGFeRD's hybrid nature presents unique challenges:
- PDF must contain a valid
zugferd-invoice.xmlattachment - Visual elements are discarded — only the XML data is converted
- Processing time increases due to PDF parsing step
- Corrupted or password-protected PDFs cannot be processed
2. Tax System Differences
German and Italian tax systems have different requirements:
| Aspect | ZUGFeRD (Germany) | FatturaPA (Italy) |
|---|---|---|
| VAT Rates | Standard German rates (19%, 7%, 0%) | Italian rates (22%, 10%, 5%, 4%, 0%) |
| Tax Codes | CII tax type codes (S, Z, E, AE) | Italian Natura codes (N1–N6) |
| Currency | EUR mandatory | EUR mandatory |
| Decimal Places | 2 decimal places | 2 decimal places |
3. Field Mapping
| Field | ZUGFeRD (CII) | FatturaPA |
|---|---|---|
| Invoice Number | ExchangedDocument/ID | Numero |
| Invoice Date | ExchangedDocument/IssueDateTime | Data |
| Customer VAT | BuyerTradeParty/SpecifiedTaxRegistration | IdFiscaleIVA |
| Supplier VAT | SellerTradeParty/SpecifiedTaxRegistration | IdFiscaleIVA |
| Line Items | IncludedSupplyChainTradeLineItem | DatiBeniServizi/DettaglioLinee |
| Payment Terms | SpecifiedTradePaymentTerms | DatiPagamento |
Best Practices for Conversion
1. File Preparation
- Ensure the ZUGFeRD PDF contains a valid embedded XML attachment
- Verify the embedded XML is not corrupted
- Ensure all required fields are present in the source invoice
- Check that the ZUGFeRD profile is at least BASIC level for full data extraction
2. Testing
- Test with sample invoices from your German business
- Validate the resulting FatturaPA against the official schema
- Check compatibility with SDI and Italian accounting systems
- Verify Italian formatting compliance before live submission
3. Documentation
- Keep conversion logs for audit purposes
- Document any special handling requirements
- Maintain mapping tables for consistency across batches