Dostępność PDF/UA-1, domyślnie włączona, przez API
Europejski Akt o Dostępności (Dyrektywa 2019/882) obowiązuje od 28 czerwca 2025 roku. To już nie jest temat “zajmiemy się tym później”. Banki, telekomy, firmy e-commerce z obrotami powyżej 10 mln €, portale sektora publicznego i dostawcy mediów audiowizualnych muszą dostarczać każdy PDF kierowany do klienta w formie nawigowalnej przez użytkownika czytnika ekranu. Kary różnią się w zależności od państwa członkowskiego, ale w NL i DE sięgają 100 000 € za naruszenie. Dyrektywa odsyła do EN 301 549, która odsyła do ISO 14289-1, czyli PDF/UA-1.
SealDoc produkuje archiwa PDF/A-3 od dwóch lat. Dodanie PDF/UA-1 do tego samego wyjścia od dawna było w planie; mandat UE przesunął to z “przydatne” do “nośne dla naszego pozycjonowania compliance”. Od dziś każdy dokument generowany przez SealDoc może wyjść jako otagowana, dostępna dla czytników ekranu hybryda PDF/A-3u, wysyłając jedno dodatkowe pole w żądaniu.
Co się zmienia
POST /api/documents/generate i POST /api/invoices/generate przyjmują teraz pole accessibilityLevel. Wartość domyślna to "None", co zachowuje wyjście bajtowe istniejącego przepływu. Ustaw je na "PdfUa1" i konwerter zmienia ścieżkę: eksport otagowanego PDF z drzewem struktury, identyfikatorem metadanych PDF/UA-1 i kontrolą post-flight przez veraPDF względem 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.23,
"vatLabel": "23% VAT",
"lines": [ ... ],
"accessibilityLevel": "PdfUa1"
}
Odpowiedź to ten sam kształt jobId, który już znasz. PDF, który możesz następnie pobrać, ma drzewo struktury, teksty alternatywne tam gdzie ma to zastosowanie, prawidłowo otagowane nagłówki tabel i atrybut języka. Czytnik ekranu, który po nim przechodzi, ogłasza “Faktura 2026-001. Odbiorca: Acme Corp. Suma częściowa: 1750 euro” zamiast “Faktura 2026 001 Acme Corp 1750”.
Co zmierzyliśmy
Przed włączeniem flagi przepuściliśmy przez nowy pipeline korpus 12 dokumentów i zwalidowaliśmy każde wyjście względem verapdf -f ua1. Korpus obejmował dokumenty minimalne, proste i złożone faktury, akapity wielojęzyczne, treści bogate w Unicode, głęboko zagnieżdżone nagłówki, gołe tabele, tabele z prawidłowymi nagłówkami, zagnieżdżone listy i długi dokument 50-sekcyjny.
Wyniki: 8 z 12 dokumentów przeszło wszystkie 106 reguł ISO 14289-1. Pozostałe 4 przeszły 105 z 106 z tym samym pojedynczym błędem (klauzula 7.4.2, zagnieżdżanie nagłówków), spowodowanym przez importer HTML LibreOffice, który podnosi pierwszy <h1> do metadanej Title dokumentu. Nasz szablon faktury w InvoiceHtmlBuilder używa stylowanych akapitów zamiast mieszanki nagłówków <h1>/<h2>, więc ten przypadek nie ma zastosowania. Reprezentatywna faktura uzyskuje 106/106 w nowym pipeline z 2778 indywidualnymi kontrolami veraPDF, które wszystkie przechodzą.
Dlaczego to ma strategiczne znaczenie
Europejski Akt o Dostępności to rodzaj regulacji, który tworzy okna zakupów panicznych. Inspektorzy compliance aktywnie szukają teraz, dojrzałość dostawców jest nierówna, a większość istniejących opcji to narzędzia desktopowe (axesPDF Quickfix), biblioteki Java na licencjach enterprise (iText z modułem Pdf/UA) lub usługi ręcznej remediacji rozliczane od dokumentu. Żadna z nich nie jest API-first, żadna nie produkuje hybrydy PDF/A-3 + PDF/UA-1 w tym samym wywołaniu, i żadna nie jest suwerenna UE z konstrukcji.
Zbudowaliśmy naszą wersję na natywnym eksporcie PDF z tagami LibreOffice i open-source’owym walidatorze Universal Accessibility veraPDF. Żadna komercyjna biblioteka nie jest zaangażowana. Marginalny koszt infrastruktury ponad naszym istniejącym pipelinem PDF/A-3 jest nieistotny. Możemy dostarczać to przy naszych obecnych punktach cenowych bez wpływu na marżę.
Co jest w zakresie, a co nie
W zakresie: dokumenty i faktury, które SealDoc generuje samodzielnie z waszego ustrukturyzowanego wejścia (Markdown, HTML lub JSON faktury). Struktura szablonu jest pod naszą kontrolą, ścieżka konwersji jest pod naszą kontrolą, i możemy zagwarantować jakość wyjścia.
Jeszcze nie w zakresie: auto-remediacja dowolnych przesłanych plików PDF. Wzięcie 30-stronicowego prospektu wykonanego przez grafika w InDesign pięć lat temu i wywnioskowanie jego semantycznej struktury z heurystyk układu to wielomiesięczny problem badawczy o niepewnej jakości wyjścia. Nie obiecujemy tego, czego nie możemy dostarczyć. Jeśli tego potrzebujesz: skontaktuj się z nami, są integracje partnerskie, które mają tu sens.
Poziom planu
PDF/UA-1 to funkcjonalność Growth-i-wyższe (slug pdf_ua w zestawie funkcji twojego planu). Poziomy Developer i Starter nadal otrzymują nieotagowany PDF/A-3 domyślnie. Flaga jest odrzucana z 402 Payment Required, jeśli twój plan jej nie zawiera, z celem upgrade nazwanym w odpowiedzi, aby twój SDK kliencki mógł kierować do właściwej strony.
Jeśli jesteś na Starter, a klient korporacyjny prosi cię o dostępne faktury: to jest rozmowa Growth, i chętnie ją odbędziemy.
Sprawdź to samodzielnie
Każde wyjście PDF/UA-1 z SealDoc przechodzi ten sam walidator verapdf -f ua1, który państwa członkowskie UE cytują w swoich audytach compliance. Pobierz wygenerowany PDF, uruchom veraPDF lokalnie, i zobaczysz tę samą linię passedRules="106" failedRules="0", którą publikujemy w naszych wewnętrznych benchmarkach. Nie prosimy cię o przyjęcie marketingowego oświadczenia na wiarę; walidator jest open source, norma jest opublikowana przez ISO, a wyjście jest binarnie reprodukowalne na żądanie.
Sprint 53 dostarcza PDF/UA-1 dziś. Sprint 53 był wyceniony na sześć i pół dnia pracy inżynierskiej. Zmieściliśmy się poniżej budżetu, ponieważ istniejący pipeline konwersji robił już większość pracy; marketingowe twierdzenie “jedyne suwerenne API UE dostarczające Factur-X 1.0 plus PDF/UA-1 w jednym wywołaniu” jest teraz rzeczywiście prawdziwe i zwalidowane.