PDF/A-3: der Container hinter jeder Hybridrechnung

Ohne PDF/A-3 gäbe es keine hybride Rechnung. Was der Container leistet, was er verlangt — und der Fehler, der eine sonst gültige Datei stillschweigend zerstört.

PDF/A ist eine ISO-genormte Teilmenge von PDF (ISO 19005), die für die Langzeitarchivierung gedacht ist: Eine Datei soll in zehn Jahren noch genauso aussehen wie heute, unabhängig davon, welches Programm sie öffnet. PDF/A-3 — der dritte Teil, ISO 19005-3 — fügt eine einzige Fähigkeit hinzu, und genau diese macht hybride Rechnungen überhaupt möglich.

Was PDF/A verlangt

Die Norm streicht aus PDF alles, was ein Dokument von seiner Umgebung abhängig macht:

  • Schriften müssen eingebettet sein. Eine Datei darf sich nicht darauf verlassen, dass die Schrift auf dem Rechner des Lesers vorhanden ist — sonst verändert sich der Umbruch, und Beträge wandern.
  • Farben müssen selbsterklärend sein, über ein eingebettetes Farbprofil statt über eine Einstellung des Anzeigegeräts.
  • Keine externen Abhängigkeiten: kein JavaScript, keine Verschlüsselung, keine Verweise auf Dateien, die woanders liegen.
  • Metadaten in XMP, maschinenlesbar und im Dokument selbst.

Für eine Rechnung ist das mehr als Formalismus: Die Aufbewahrungsfrist beträgt in Deutschland acht Jahre, und ein Dokument, dessen Aussehen von der installierten Schriftart abhängt, ist nach acht Jahren kein verlässlicher Beleg mehr.

Warum ausgerechnet Teil 3

PDF/A-1 und PDF/A-2 erlauben keine beliebigen Anhänge — PDF/A-2 lässt nur andere PDF/A-Dateien zu. Erst PDF/A-3 erlaubt, eine beliebige Datei in das PDF einzubetten und als gleichwertigen Bestandteil des Dokuments zu kennzeichnen.

Damit steht und fällt das Hybridformat. Eine ZUGFeRD- oder Factur-X-Datei ist ein PDF/A-3 mit genau einem besonderen Anhang: einer XML-Datei, meist factur-x.xml, die dieselbe Rechnung in der CII-Struktur enthält. Der Mensch sieht die Seite, die Software liest den Anhang — und beides bleibt beim Weiterleiten, Ablegen und Archivieren zusammen, weil es eine Datei ist.

Die Konformitätsstufen A, B und U

Innerhalb von PDF/A-3 gibt es drei Stufen, die unterschiedlich viel verlangen:

StufeWas sie zusätzlich fordert
B (Basic)die Darstellung ist gesichert — das Dokument sieht immer gleich aus
U (Unicode)zusätzlich: der Text lässt sich zuverlässig als Unicode extrahieren
A (Accessible)zusätzlich: eine Strukturmarkierung für Barrierefreiheit und Lesereihenfolge

Für E-Rechnungen ist PDF/A-3B die übliche und ausreichende Stufe — die maschinenlesbaren Daten stecken ohnehin im XML-Anhang, nicht im Text der Seite. E-Rechnung Pro erzeugt Dateien auf dieser Stufe.

Ein Anhang allein genügt nicht

Das ist der Punkt, an dem selbstgebaute Dateien am häufigsten scheitern — und er ist unsichtbar, solange man nur ins PDF schaut. Die Spezifikation verlangt, dass der Anhang angemeldet wird, und zwar an zwei Stellen:

  • AFRelationship am eingebetteten Objekt. Für die Rechnungs-XML ist das Data — die Angabe sagt dem Empfänger, dass der Anhang die Daten zum Dokument ist und nicht irgendein Beiwerk.
  • XMP-Metadaten im PDF, die Format, Version und Profil benennen.

Ein PDF, dem „ein XML angehängt“ wurde, ist noch keine E-Rechnung. Ohne die Deklaration findet die Software des Empfängers den Anhang gar nicht erst — oder findet ihn und weiß nicht, was er bedeutet. Die Datei öffnet sich tadellos, die Seite ist lesbar, und trotzdem fällt sie in der Prüfung durch. Das ist die häufigste Überraschung bei der ersten selbst erzeugten Datei.

Namensräume im eingebetteten XML

Wer das XML zum ersten Mal öffnet, stolpert über lange URIs am Anfang des Dokuments. Das sind Namensräume: Sie sagen, aus welchem Vokabular ein Element stammt, und verhindern, dass gleichnamige Elemente verschiedener Standards durcheinandergeraten.

In einer ZUGFeRD-Datei sind vor allem zwei im Spiel:

  • urn:un:unece:uncefact:data:standard:CrossIndustryInvoice:100 — das Wurzelvokabular der Rechnung;
  • urn:un:unece:uncefact:data:standard:ReusableAggregateBusinessInformationEntity:100 — die wiederverwendbaren Bausteine darin.

Praktisch relevant ist das für alle, die einen eigenen Parser schreiben: Vermischte Namensraum-Versionen sind ein häufiger Grund, warum eine fremde Datei plötzlich nicht mehr gelesen wird. Wer eine fertige Bibliothek verwendet, muss sich damit nicht befassen — sie verwaltet die Namensräume selbst, und Handarbeit daran ist fast immer ein Fehler.

Was beim Erzeugen schiefgeht

Befund der PrüfungUrsache
Schrift nicht eingebettetStandardschrift des Generators, die als „ohnehin vorhanden“ behandelt wird
Farbprofil fehltAusgabe in RGB ohne eingebettetes Profil
Transparenz oder Ebenenein Logo im PDF, das mit Transparenz gerendert wurde
Anhang ohne BeziehungAFRelationship nicht gesetzt
XMP-Metadaten fehlen oder passen nichtPDF nachträglich mit einem anderen Werkzeug bearbeitet

Die letzte Zeile ist die tückischste: Eine gültige Datei, die anschließend durch ein Werkzeug läuft, das PDF/A nicht kennt — etwa zum Zusammenfügen, Stempeln oder Komprimieren —, kommt als gewöhnliches PDF wieder heraus. Der Anhang mag darin noch liegen, die Anmeldung ist weg.

Archivierung: warum eine Datei besser ist als zwei

Aufzubewahren ist der strukturierte Teil, unverändert und nachvollziehbar, in Deutschland acht Jahre (§ 14b UStG). Genau hier zahlt sich das Hybridformat aus: Es gibt keinen strukturierten Teil, der getrennt verloren gehen könnte. Wer PDF und XML als zwei Dateien ablegt, muss ihre Zusammengehörigkeit selbst sicherstellen — über Dateinamen, über ein Archivsystem, über Disziplin. Ein PDF/A-3 trägt beides in sich.

Hinzu kommt die Lesbarkeit: In acht Jahren wird jeder gängige Reader das PDF noch anzeigen. Ob Ihre heutige Buchhaltungssoftware dann noch existiert, ist eine andere Frage — die Seite bleibt lesbar.

Häufige Fragen

Ist jedes PDF/A-3 eine E-Rechnung?

Nein. PDF/A-3 ist der Umschlag. Zur E-Rechnung wird die Datei erst durch die eingebettete XML nach EN 16931 und deren korrekte Anmeldung.

Kann ich ein vorhandenes PDF nachträglich zu PDF/A-3 machen?

Technisch ja, und genau das tun Konverter. Ob es gelingt, hängt am Ausgangs-PDF: Fehlen eingebettete Schriften oder steckt Transparenz darin, muss das Dokument angepasst werden. Der Weg im Einzelnen steht in PDF-Rechnung umwandeln.

Welche Konformitätsstufe brauche ich?

B genügt für E-Rechnungen. A wird interessant, wenn Sie ohnehin Barrierefreiheit einhalten müssen — dafür braucht das PDF eine vollständige Strukturmarkierung, und die entsteht nicht von selbst.

Wie sehe ich, ob mein PDF wirklich PDF/A-3 ist?

Am zuverlässigsten mit einer Prüfung — die Containerschicht prüft genau das. Der Reader zeigt es nicht verlässlich an: Er stellt auch ein Dokument dar, das die Norm verfehlt.

Darf ich weitere Dateien anhängen?

PDF/A-3 erlaubt es. Bei einer Rechnung sollten Sie es sich zweimal überlegen: Jeder zusätzliche Anhang ist etwas, das der Empfänger deuten muss, und die Rechnungs-XML muss als solche eindeutig erkennbar bleiben.

Wird PDF/A-3 überall anerkannt?

Als Archivformat ja — es ist eine ISO-Norm. Für die Frage, ob ein Empfänger Ihre Rechnung annimmt, zählt aber nicht der Container, sondern das Profil und die Vollständigkeit der Daten darin.

Kurz zusammengefasst

  • PDF/A sichert die Lesbarkeit über Jahre: eingebettete Schriften, eigene Farbprofile, keine externen Abhängigkeiten.
  • Teil 3 erlaubt beliebige Anhänge — ohne ihn gäbe es keine hybride Rechnung.
  • Stufe B genügt; U und A verlangen mehr, ohne für die Rechnung nötig zu sein.
  • Der Anhang muss angemeldet sein — AFRelationship: Data plus XMP. Ohne das ist es ein PDF mit einer Datei darin, keine E-Rechnung.
  • Nachbearbeiten zerstört die Konformität. Stempeln, Zusammenfügen und Komprimieren nach der Erzeugung ist der stille Killer.
  • Eine Datei statt zweier ist der eigentliche Gewinn für die achtjährige Aufbewahrung.

Prüfen, ob Ihre Datei die Containerschicht besteht? Ohne Anmeldung hochladen — oder ein kostenloses Konto anlegen und Rechnungen gleich als gültiges PDF/A-3 erzeugen.