← Torna a tutti gli articoli

Accessibilità PDF/UA-1 via API

SealDoc Team · · 4 min di lettura

La Direttiva Europea sull’Accessibilità (Direttiva 2019/882) si applica dal 28 giugno 2025 a prodotti e servizi elencati, come i servizi bancari per i consumatori, il commercio elettronico e le comunicazioni elettroniche; sono esentate le microimprese che forniscono servizi (meno di 10 dipendenti e fatturato o totale di bilancio non superiore a 2 milioni di euro). Non è più un argomento “ce ne occuperemo dopo”. I fornitori che rientrano nell’ambito di applicazione devono fornire ogni PDF destinato ai clienti in una forma navigabile da un utente di lettore di schermo. Le sanzioni variano per stato membro; in Germania raggiungono i 100 000 € per infrazione (BFSG § 37). Per il PDF, la norma ISO sull’accessibilità è la ISO 14289-1, ovvero PDF/UA-1.

Aggiungere PDF/UA-1 alla stessa uscita era da tempo nella roadmap; il mandato UE l’ha spostato da “utile” a “portante per il nostro posizionamento di compliance”. Da oggi, ogni documento che SealDoc genera può uscire come un ibrido PDF/A-3u taggato e accessibile ai lettori di schermo, inviando un campo aggiuntivo nella richiesta.

Cosa cambia

POST /api/documents/generate e POST /api/invoices/generate ora accettano un campo accessibilityLevel. Il valore di default è "None", che preserva l’output byte-esatto del flusso esistente. Impostatelo a "PdfUa1" e il convertitore cambia percorso: export PDF taggato con albero di struttura, identificatore di metadati PDF/UA-1, e un controllo post-volo veraPDF contro ISO 14289-1.

POST /api/invoices/generate HTTP/1.1
Host: api.sealdoc.eu
X-Api-Key: ...
Content-Type: application/json

{
  "seller": { "name": "FeFem Holding B.V.", "vatNumber": "NL000000000B01", ... },
  "buyer": { "name": "Acme Corp", ... },
  "invoiceNumber": "INV-2026-001",
  "invoiceDate": "2026-05-07",
  "currency": "EUR",
  "vatRate": 0.22,
  "vatLabel": "22% IVA",
  "lines": [ ... ],
  "accessibilityLevel": "PdfUa1"
}

La risposta è la stessa forma jobId che già conoscete. Il PDF che potete poi scaricare ha un albero di struttura, testi alternativi dove pertinenti, intestazioni di tabella correttamente taggate e un attributo di lingua. Un lettore di schermo che lo percorre annuncia “Fattura 2026-001. Cliente: Acme Corp. Subtotale: 1750 euro” invece di “Fattura 2026 001 Acme Corp 1750”.

Cosa abbiamo misurato

Prima di attivare il flag, abbiamo fatto passare un corpus di 12 documenti attraverso la nuova pipeline e validato ogni output contro verapdf -f ua1. Il corpus copre documenti minimali, fatture semplici e complesse, paragrafi multilingue, contenuto ricco di Unicode, intestazioni profondamente annidate, tabelle senza intestazioni, tabelle con intestazioni corrette, liste annidate e un documento lungo da 50 sezioni.

Risultati: 8 documenti su 12 hanno superato tutte le 106 regole ISO 14289-1. I 4 rimanenti hanno superato 105 su 106 con lo stesso unico fallimento (clausola 7.4.2, annidamento delle intestazioni), causato dall’importatore HTML di LibreOffice che promuove il primo <h1> a metadato Title del documento. Il nostro template di fattura in InvoiceHtmlBuilder usa paragrafi stilizzati invece di una miscela di intestazioni <h1>/<h2>, quindi quel caso non si applica. Una fattura rappresentativa ottiene 106/106 nella nuova pipeline con 2778 controlli veraPDF individuali tutti superati.

Perché conta strategicamente

La Direttiva Europea sull’Accessibilità è il tipo di regolamentazione che crea finestre d’acquisto da panico. I responsabili compliance stanno cercando attivamente ora, la maturità dei fornitori è disomogenea, e la maggior parte delle opzioni esistenti sono strumenti desktop (axesPDF Quickfix), librerie Java con licenza enterprise (iText con il modulo Pdf/UA), o servizi di remediation manuale fatturati a documento. Nessuna di queste è API-first, nessuna produce un ibrido PDF/A-3 + PDF/UA-1 nella stessa chiamata, e nessuna è sovrana UE per costruzione.

Abbiamo costruito la nostra versione sull’export PDF taggato nativo di LibreOffice e sul validatore Universal Accessibility open source di veraPDF. Nessuna libreria commerciale è coinvolta. Il costo infrastrutturale marginale rispetto alla nostra pipeline PDF/A-3 esistente è trascurabile. Possiamo consegnare questo ai nostri prezzi esistenti senza impatto sul margine.

Cosa è in scope

In scope: documenti e fatture che SealDoc genera direttamente dal vostro input strutturato (Markdown, HTML o JSON di fattura). La struttura del template è sotto il nostro controllo, e lo è anche il percorso di conversione.

Livello di piano

PDF/UA-1 è una funzionalità Growth-e-superiori (slug pdf_ua nel set di funzionalità del vostro piano). I livelli Developer e Starter continuano a ricevere PDF/A-3 non taggati di default. Il flag viene rifiutato con un 402 Payment Required se il vostro piano non lo include, con il target di upgrade nominato nella risposta in modo che il vostro SDK client possa rimandare alla pagina corretta.

Se siete su Starter e un cliente enterprise vi chiede fatture accessibili: è una conversazione Growth, e la facciamo volentieri.

Validarlo voi stessi

SealDoc verifica l’output PDF/UA-1 con veraPDF. Scaricate un PDF generato ed eseguite verapdf -f ua1 localmente per vedere voi stessi il risultato. Non vi chiediamo di prendere la rivendicazione di marketing sulla fiducia; il validatore è open source, la norma è pubblicata da ISO, e l’output è binario-riproducibile per richiesta.

Sprint 53 consegna PDF/UA-1 oggi.


← Torna a tutti gli articoli