← Zpět na všechny články

Dostupnost PDF/UA-1 přes API

SealDoc Team · · 3 min čtení

Evropský akt o přístupnosti (Směrnice 2019/882) se od 28. června 2025 uplatňuje na vyjmenované výrobky a služby, jako je spotřebitelské bankovnictví, e-commerce a elektronické komunikace; mikropodniky poskytující služby (méně než 10 zaměstnanců a obrat nebo bilanční suma nejvýše 2 mil. €) jsou vyňaty. Už to není téma “vyřešíme později”. Poskytovatelé, na které se vztahuje, musí každý PDF určený zákazníkům dodávat ve formě, kterou je schopen procházet uživatel čtečky obrazovky. Pokuty se liší podle členského státu; v Německu dosahují 100 000 € za porušení (BFSG § 37). Pro PDF je normou ISO pro přístupnost ISO 14289-1, tedy PDF/UA-1.

Přidání PDF/UA-1 do téhož výstupu bylo dlouho v plánu; mandát EU to posunul z “užitečného” na “nosné pro naše compliance pozicování”. Ode dneška může každý dokument, který SealDoc generuje, vyjít jako otagovaný hybrid PDF/A-3u přístupný čtečkám obrazovky, odesláním jediného dalšího pole v požadavku.

Co se mění

POST /api/documents/generate a POST /api/invoices/generate nyní přijímají pole accessibilityLevel. Výchozí hodnota je "None", což zachovává bytový výstup stávajícího toku. Nastavte ji na "PdfUa1" a konvertor přepne cestu: export taggovaného PDF se stromem struktury, identifikátor metadat PDF/UA-1 a post-flight kontrola veraPDF proti 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.21,
  "vatLabel": "21% DPH",
  "lines": [ ... ],
  "accessibilityLevel": "PdfUa1"
}

Odpověď je stejný tvar jobId, který už znáte. PDF, které si pak můžete stáhnout, má strom struktury, alternativní texty tam, kde je to relevantní, správně otagované hlavičky tabulek a atribut jazyka. Čtečka obrazovky, která jím prochází, oznámí “Faktura 2026-001. Příjemce: Acme Corp. Mezisoučet: 1750 eur” namísto “Faktura 2026 001 Acme Corp 1750”.

Co jsme změřili

Před zapnutím flagu jsme nechali projít korpus 12 dokumentů přes nový pipeline a každý výstup zvalidovali proti verapdf -f ua1. Korpus pokryl minimální dokumenty, jednoduché a složité faktury, vícejazyčné odstavce, obsah bohatý na Unicode, hluboce vnořené nadpisy, holé tabulky, tabulky se správnými hlavičkami, vnořené seznamy a dlouhý dokument s 50 sekcemi.

Výsledky: 8 z 12 dokumentů prošlo všemi 106 pravidly ISO 14289-1. Zbylé 4 prošly 105 ze 106 se stejným jediným selháním (klauzule 7.4.2, vnořování nadpisů), způsobeným tím, že HTML importer LibreOffice povyšuje první <h1> na metadata Title dokumentu. Naše šablona faktury v InvoiceHtmlBuilder používá stylované odstavce místo mixu nadpisů <h1>/<h2>, takže tento případ se neprojevuje. Reprezentativní faktura dosahuje v novém pipelinu 106/106 s 2778 jednotlivými kontrolami veraPDF, které všechny projdou.

Proč na tom strategicky záleží

Evropský akt o přístupnosti je typ regulace, která vytváří panická nákupní okna. Compliance officeři aktivně hledají právě teď, zralost dodavatelů je nerovnoměrná, a většina existujících možností jsou desktopové nástroje (axesPDF Quickfix), Java knihovny s enterprise licencí (iText s modulem Pdf/UA) nebo manuální remediation služby účtované za dokument. Žádná z nich není API-first, žádná neprodukuje hybrid PDF/A-3 + PDF/UA-1 ve stejném volání, a žádná není suverénní EU svou konstrukcí.

Postavili jsme naši verzi na nativním exportu taggovaného PDF v LibreOffice a open-source validátoru Universal Accessibility od veraPDF. Žádná komerční knihovna není v hře. Marginální infrastrukturní náklad nad naším stávajícím pipelinem PDF/A-3 je zanedbatelný. Můžeme to dodávat za naše stávající cenové body bez dopadu na marži.

Co je v rozsahu

V rozsahu: dokumenty a faktury, které SealDoc generuje sám ze strukturovaného vstupu (Markdown, HTML nebo invoice JSON). Struktura šablony je pod naší kontrolou, stejně jako konverzní cesta.

Úroveň plánu

PDF/UA-1 je funkce Growth-a-výše (slug pdf_ua v sadě funkcí vašeho plánu). Úrovně Developer a Starter nadále dostávají netaggovaný PDF/A-3 ve výchozím stavu. Flag je odmítnut s 402 Payment Required, pokud váš plán neobsahuje, s upgrade-cílem pojmenovaným v odpovědi, aby váš klientský SDK mohl odkázat na správnou stránku.

Pokud jste na Starter a enterprise klient od vás žádá přístupné faktury: to je Growth konverzace, a rádi ji povedeme.

Ověřit si to sami

SealDoc kontroluje výstup PDF/UA-1 nástrojem veraPDF. Stáhněte si vygenerované PDF a spusťte lokálně verapdf -f ua1, abyste výsledek viděli na vlastní oči. Nežádáme vás, abyste marketingové tvrzení přijímali na důvěru; validátor je open source, norma je publikovaná ISO, a výstup je binárně reprodukovatelný na žádost.

Sprint 53 dodává PDF/UA-1 dnes.


← Zpět na všechny články