← Back to all articles

Factur-X vs ZUGFeRD vs UBL, una guida pratica alla fatturazione europea

SealDoc Team · · 5 min read

La terminologia attorno alla fatturazione strutturata europea è caotica. Factur-X, ZUGFeRD e UBL sembrano tre formati concorrenti, e molti materiali commerciali li trattano proprio così. In realtà non sono in concorrenza. Due di essi sono la stessa cosa sotto nomi nazionali diversi, e il terzo si colloca a un livello completamente diverso dello stack. Se il tuo pipeline attraversa confini, ti troverai ad usarli tutti e tre, e capire come si relazionano risparmia una quantità sorprendente di debug.

Ecco la versione pratica.

La risposta breve

  • ZUGFeRD è lo standard tedesco di fattura ibrida: PDF/A-3 con XML incorporato.
  • Factur-X è il nome francese per la stessa cosa. Gli schemi XML sono allineati a livello di byte con ZUGFeRD 2.x per i profili condivisi da entrambi gli standard.
  • UBL è un livello diverso. È il formato di fattura strutturato in puro XML utilizzato su Peppol. Nessun PDF coinvolto.

Quindi la vera domanda non è “Factur-X vs ZUGFeRD vs UBL”. È “PDF ibrido (Factur-X/ZUGFeRD) vs puro XML (UBL).”

ZUGFeRD e Factur-X: stesso file, etichetta diversa

ZUGFeRD è nato in Germania nel 2014 (FeRD = Forum elektronische Rechnung Deutschland). La Francia ha adottato la stessa architettura nel 2017 con il nome Factur-X. A partire da ZUGFeRD 2.1, i profili MINIMUM, BASIC WL, BASIC, EN 16931 e EXTENDED sono allineati a livello di byte con gli equivalenti profili Factur-X. Una fattura ZUGFeRD 2.1 EN 16931 correttamente costruita è una valida fattura Factur-X EN 16931. Non si converte tra i due. Si etichetta il file con il marchio che si aspetta il proprio acquirente.

I profili condivisi, in ordine crescente di dettaglio:

  • MINIMUM: il minimo indispensabile per il riferimento contabile. Totale, IVA, fornitore, acquirente.
  • BASIC WL (without lines): fattura a livello aggregato, senza voci di riga.
  • BASIC: voci di riga, ma solo i campi obbligatori EN 16931 per riga.
  • EN 16931: il modello semantico europeo completo di EN 16931. È il livello a cui puntano la maggior parte degli obblighi B2B.
  • EXTENDED: estensioni proprietarie su EN 16931. Da utilizzare solo quando entrambe le parti della pipeline comprendono i campi aggiuntivi.

Se stai iniziando da zero e non hai un requisito specifico dell’acquirente, punta su EN 16931. È il minimo comune denominatore che soddisfa i principali obblighi del 2026 e produce lo stesso file indipendentemente da quale marchio nazionale vi si appone.

Dove si inserisce UBL

UBL (Universal Business Language, OASIS) è un’entità diversa. Non è un PDF. È un documento XML autonomo, progettato per viaggiare tra macchine. La rete Peppol gira su UBL. L’obbligo belga del 1° gennaio 2026, la fatturazione governativa olandese e il canale transfrontaliero verso il Chorus Pro francese usano tutti UBL su Peppol BIS Billing 3.0.

Quindi la relazione è:

  • Factur-X/ZUGFeRD = PDF/A-3 con XML all’interno. Ottimizzato per “ho bisogno di una copia leggibile dall’uomo E di una copia leggibile dalla macchina nello stesso file.”
  • UBL = solo XML. Ottimizzato per “macchine su entrambi i lati, la rete gestisce il trasporto.”

In pratica, la maggior parte dei pipeline europei ha bisogno di entrambi. La fattura viene emessa come UBL su Peppol perché è ciò che l’obbligo richiede per il trasporto, e si archivia una copia Factur-X/ZUGFeRD come registro leggibile dall’uomo perché è ciò che richiede la legge sull’archiviazione fiscale.

Una particolarità da notare: ZUGFeRD 2.x e Factur-X 1.x possono incorporare anche UBL, non solo CII. Lo stesso PDF ibrido può contenere al suo interno CII (Cross Industry Invoice, lo schema originale) o UBL. La maggior parte dei pipeline tedeschi usa CII; la maggior parte dei pipeline francesi usa UBL. Entrambi sono validi. Se ricevi un file Factur-X e il tuo parser conosce solo CII, perderai silenziosamente la metà delle fatture in entrata dal mercato tedesco.

Quando usare quale

Usa solo UBL quando la fattura verrà elaborata esclusivamente da macchine e la rete già gestisce l’archiviazione su entrambi i lati. Questo è il caso Peppol, business-to-government e la maggior parte dei flussi del settore pubblico.

Usa Factur-X/ZUGFeRD quando:

  • Il tuo acquirente è un’azienda privata che vuole guardare la fattura prima di pagarla.
  • Hai bisogno che il PDF leggibile dall’uomo sia la copia legale archiviata.
  • Stai attraversando il confine tedesco o francese, dove il formato ibrido è quello dominante nel settore privato.
  • Vuoi un unico file da inviare via e-mail e da importare nel sistema contabile.

Usa entrambi, in parallelo, quando l’obbligo richiede la consegna Peppol (UBL) e l’archiviazione fiscale richiede una copia leggibile dall’uomo (PDF/A-3). Questa è la realtà concreta per il B2B in Belgio dal gennaio 2026 e sarà la realtà in Francia a partire da settembre 2026.

I casi limite transfrontalieri

Alcuni scenari che creano problemi:

  1. L’acquirente richiede Factur-X, il fornitore invia ZUGFeRD. Non è necessaria alcuna conversione se entrambi sono 2.1 EN 16931. Basta confermare la versione. Vediamo pipeline che effettuano riscritture XML inutili in questo caso.
  2. L’acquirente richiede UBL su Peppol, il fornitore dispone solo di Factur-X. È necessario estrarre l’XML incorporato, trasformare CII in UBL e inviare su Peppol. Questo è il divario “da ibrido a puro XML” più comune.
  3. Il fornitore invia Factur-X con UBL all’interno, il parser dell’acquirente si aspetta CII. Analizza silenziosamente zero righe. Serve un parser che tenti entrambi.
  4. PDF/A-3 valido, XML incorporato non valido. La validazione PDF/A-3 non guarda dentro l’allegato. Serve un validatore che controlli l’XML rispetto a EN 16931 separatamente.

È esattamente ciò che fa il nostro validatore pubblico su /check: controlla la conformità PDF/A-3, estrae l’allegato indipendentemente dal fatto che sia CII o UBL, e valida l’XML rispetto al modello semantico EN 16931. Si ottiene un verdetto per ogni livello separatamente, così quando qualcosa fallisce si sa se il problema riguarda il contenitore, lo schema o i dati.

Il punto chiave

Smetti di pensare a Factur-X, ZUGFeRD e UBL come alternative. Factur-X e ZUGFeRD sono lo stesso involucro ibrido sotto due marchi nazionali. UBL è il formato puro XML su Peppol. I pipeline transfrontalieri reali nel 2026 producono entrambi, archiviano il formato ibrido e trasmettono l’XML puro. Chi ti dice di sceglierne uno solo non ha attraversato abbastanza confini.


← Back to all articles