Pro Edition
Compliance
Auf einen Blick
Abschnitt betitelt „Auf einen Blick“NextPDF Pro berichtet über PDF/UA-2-Sprach-Tag-Ereignisse, validiert und bettet Factur-X- / ZUGFeRD-E-Rechnungs-XML ein und bettet C2PA-Manifest-Stores ein oder liest sie. Diese Funktionen erzeugen Berichte und strukturierte Ergebnisse. Sie zertifizieren kein Dokument und garantieren keine regulatorische Hinlänglichkeit.
Verfügbarkeit & Lizenzierung
Abschnitt betitelt „Verfügbarkeit & Lizenzierung“Diese Fähigkeit wird in NextPDF Pro (nextpdf/pro) ausgeliefert und aktiviert sich mit einem Lizenz-Envelope der Pro-Stufe. Eine Bereitstellung ohne diese Berechtigung lädt die Klassen der Fähigkeit nicht. Compliance ist Teil der Pro-Edition; es gibt kein separates Feature-bezogenes Lizenz-Flag. Editionen vergleichen und Lizenz erwerben.
Installation
Abschnitt betitelt „Installation“composer require nextpdf/pro:^3Konzeptioneller Überblick
Abschnitt betitelt „Konzeptioneller Überblick“Das Compliance-Modul hat drei unabhängige Oberflächen.
Sprach-Tag-Berichterstattung. LangComplianceReporter gibt für jedes PDF/UA-2-Sprach-Tag-Ereignis einen strukturierten JSON-Datensatz aus. Jeder Datensatz trägt das beanstandete Tag, einen maschinenlesbaren Grund, die geparsten Tag-Komponenten, einen Klauselverweis auf ISO 14289-2 §8.4.4 und einen Zeitstempel. ConformancePolicy ist eine Premium-Fassade, die standardmäßig auf strikter UA-2-Sprachbehandlung steht: Sie schlägt fehlersicher zu, wenn ein fehlerhaftes oder nicht registriertes BCP-47-Tag in den /Lang-Eintrag gelangt. Ein laxes Opt-out (ConformancePolicy::withStrictUa2(false)) kehrt zum altbekannten permissiven Verhalten zurück und protokolliert einen Hinweis. NextPDF markiert dieses Opt-out als deprecated; nutzen Sie stattdessen den strikten Standard. Das Opt-out besteht seit v5.0 und verschwindet im nächsten Major-Release. Zur Migration prüfen Sie Ihren Korpus auf fehlerhafte /Lang-Werte, korrigieren sie und entfernen dann den Opt-out-Aufruf, damit der strikte Standard greift.
E-Rechnungs-Behandlung. EInvoiceValidator prüft ein hybrides PDF gegen das semantische Datenmodell EN 16931 und die Container-Spezifikation Factur-X 1.08 / ZUGFeRD 2.4. Es erkennt das Profil, führt die EN-16931-Geschäftsregel-Engine aus und führt einen Schematron-Durchlauf aus. Vor der Validierung extrahiert es das eingebettete Rechnungs-XML aus dem PDF — auch aus Objekt-Stream-PDFs, die die Standardausgabe gängiger Erzeuger wie Ghostscript, Gotenberg und Antenna House sind und die eine frühere Extraktion nicht lesen konnte. Der Extraktor akzeptiert RFC-7303-parametrisierte MIME-Subtypen (zum Beispiel text/xml; charset=UTF-8) und Dateinamen eingebetteter Dateien als ISO-32000-2-Literal-Strings, einschließlich Escapes. FacturXEmbedder erzeugt ein hybrides PDF/A-3-Dokument mit angehängtem Factur-X-XML. EInvoiceValidationResult berichtet über Profil, Syntax, Regelverstöße und Wrapper-Prüfungen.
Provenienz. C2paManifestEmbedder bettet einen vom Aufrufer bereitgestellten C2PA-Manifest-Store in einen PDF-Byte-String ein oder extrahiert einen wieder heraus. ManifestStore ist das unveränderliche Wertobjekt, das die Grenze überquert. Die Naht synthetisiert keine Claims und löst keine Hash-Bindungen auf.
Was „Compliance“ hier bedeutet
Abschnitt betitelt „Was „Compliance“ hier bedeutet“Dieses Modul berichtet, was es prüft. Es behauptet nicht, dass ein Dokument rechtlich konform, zertifiziert oder rechtsverbindlich ist, und es garantiert nicht, dass eine Ausgabe einer Regulierung oder Rechtsordnung genügt.
- Der E-Rechnungs-Validator prüft ausschließlich das semantische Modell EN 16931 und die Container-Spezifikation Factur-X / ZUGFeRD. Er ist kein Validator einer Steuerbehörde. Nationale Erweiterungen — zum Beispiel das italienische SDI, das französische Chorus Pro, die deutsche XRechnung — liegen außerhalb des Geltungsbereichs. Wie EN 16931-1 selbst anmerkt, ist der Rechnungsaussteller dafür verantwortlich, die Regeln der einschlägigen Gesetzgebung zu erfüllen.
- Der Sprach-Tag-Reporter erzeugt einen Bericht über Tag-Ereignisse. Er macht ein Dokument nicht konform.
- Das C2PA-Einbetten schreibt ein vom Aufrufer bereitgestelltes Manifest. Es erzeugt oder signiert die darin enthaltenen Claims nicht.
Die Unterstützung eines Standards ist nicht dasselbe wie die Konformität mit ihm. Konsultieren Sie Ihr Compliance-Team, um die regulatorische Hinlänglichkeit für Ihren Einsatz zu beurteilen.
Warum es so funktioniert
Abschnitt betitelt „Warum es so funktioniert“Die tragende Entscheidung ist eine harte Trennlinie zwischen Prüfen und Zertifizieren. Jede Oberfläche liefert Belege — einen Bericht, ein Validierungsergebnis, ein eingebettetes Manifest — niemals die Behauptung, dass ein Dokument rechtlich konform ist. Das hält die Naht über Editionen hinweg ehrlich. ConformancePolicy schlägt bei einem fehlerhaften /Lang-Tag fehlersicher zu, und C2paManifestEmbedder signiert die Claims, die er trägt, niemals. EInvoiceValidator::validate() gibt ein EInvoiceValidationResult zurück; ein grünes isValid() ist eine Eingabe in Ihre Entscheidung, kein Urteil, das Sie einer Aufsichtsbehörde ungeprüft übergeben können. Die Belege fügen sich zu Ihren eigenen Kontrollen hinzu, statt sie zu ersetzen, sodass sie auch bei feindlicher Eingabe wahrheitsgemäß bleiben.
Design-Hintergrund: Compliance, die Sie einem Prüfer übergeben können.
API-Oberfläche
Abschnitt betitelt „API-Oberfläche“| Klasse | Zuständigkeit |
|---|---|
LangComplianceReporter | Strukturierte Sprach-Tag-Ereignisdatensätze ausgeben. |
ConformancePolicy | Premium-Fassade für strikte UA-2-Sprachrichtlinie. |
EInvoiceValidator | EN 16931 / Factur-X / ZUGFeRD prüfen; ein Ergebnis zurückgeben. |
EInvoiceValidationResult | Profil, Syntax, Regelverstöße, Wrapper-Prüfungen. |
FacturXEmbedder | Ein hybrides PDF/A-3-+-Factur-X-XML-Dokument erzeugen. |
C2paManifestEmbedder | Einen C2PA-Manifest-Store einbetten oder extrahieren. |
ManifestStore | Unveränderliches C2PA-Manifest-Store-Wertobjekt. |
Codebeispiel — Schnellstart
Abschnitt betitelt „Codebeispiel — Schnellstart“use NextPDF\Pro\Compliance\EInvoice\EInvoiceValidator;
$result = $validator->validate('/path/to/invoice.pdf');$ok = $result->isValid(); // true only if wrapper, attachment, profile, and no fatal BRCodebeispiel — Produktion
Abschnitt betitelt „Codebeispiel — Produktion“$result = $validator->validate($pdfPath);
foreach ($result->businessRuleViolations as $violation) { $logger->warning('einvoice.br_violation', [ 'rule' => $violation->ruleId, 'severity' => $violation->severity->value, ]);}// A green result is one input to your decision, not a compliance verdict.Randfälle & Fallstricke
Abschnitt betitelt „Randfälle & Fallstricke“- Ein wohlgeformtes, nicht-Factur-X-PDF liefert ein Ergebnis „keine E-Rechnung“, statt eine Ausnahme zu werfen.
- Der XML-Extraktor liest Objekt-Stream-PDFs (die Standardausgabe von Ghostscript, Gotenberg und Antenna House) und akzeptiert RFC-7303-parametrisierte MIME-Subtypen sowie ISO-32000-2-Literal-String-Dateinamen. Dies ist Kompatibilitätsextraktion für konforme Erzeugerausgabe, keine maßgebliche Anhang-Validierung gegen feindliche Eingaben — die vollständige xref-Aktivierung für gegnerische öffentliche Endpunkte ist eine dokumentierte zurückgestellte Abgrenzung. Behandeln Sie Extraktion aus nicht vertrauenswürdigen Quellen entsprechend.
- Eine leere Liste an Geschäftsregelverstößen bedeutet für sich genommen nicht, dass das Dokument gültig ist; auch Wrapper- und Anhang-Prüfungen gelten.
- NextPDF erklärt das laxe Opt-out von strikter UA-2 für deprecated; migrieren Sie auf den strikten Standard (siehe Konzeptioneller Überblick). Es verschwindet im nächsten Major-Release.
Performance
Abschnitt betitelt „Performance“Die Validierungskosten skalieren mit der Größe des eingebetteten XML und der Regelanzahl. Die Sprach-Tag-Berichterstattung ist konstant je Ereignis.
Sicherheitshinweise
Abschnitt betitelt „Sicherheitshinweise“Jegliches XML-Parsing deaktiviert die Auflösung externer Entitäten (XXE-sicher) und begrenzt die Dekomprimierung. Behandeln Sie E-Rechnungs-XML und C2PA-Bytes aus nicht vertrauenswürdigen Quellen als feindlich.
Datenresidenz & PII-Maßnahmen
Abschnitt betitelt „Datenresidenz & PII-Maßnahmen“E-Rechnungs-XML kann personenbezogene und finanzielle Daten enthalten. Die Verarbeitung erfolgt prozessintern und lokal; das Modul führt zur Validierung keine ausgehenden Netzwerkaufrufe durch. Wenden Sie auf extrahiertes XML und Berichte Ihre eigenen Aufbewahrungs- und Minimierungskontrollen an.
Sichere Telemetrie & Log-Bereinigung
Abschnitt betitelt „Sichere Telemetrie & Log-Bereinigung“Reporter-Datensätze und Validierungslogs können Tag-Werte und Regelbezeichner enthalten. Sie enthalten keine vollständigen Rechnungs-Nutzlasten. Bereinigen oder schwärzen Sie Tag-Werte, bevor Sie Logs an gemeinsam genutzte Senken weiterleiten, falls diese Werte sensibel sind.
Konformität
Abschnitt betitelt „Konformität“| Verhalten | Referenz | Status |
|---|---|---|
Deklaration der natürlichen Sprache (/Lang) | ISO 14289-2:2024 §8.4.4 | Geprüft / berichtet |
| Semantisches Kernmodell der Rechnung | EN 16931-1:2026 | Geprüft (Aussteller bleibt verantwortlich) |
| C2PA-Manifest-Store / JUMBF | C2PA 2.1 §11.1 | Einbetten / Extrahieren unterstützt |
Diese Tabelle hält die Spezifikationen fest, gegen die NextPDF Pro gebaut ist und was es prüft. Sie ist keine Aussage über Zertifizierung oder regulatorische Hinlänglichkeit.
FIPS-Modus-Verhalten
Abschnitt betitelt „FIPS-Modus-Verhalten“Dieses Modul führt keine kryptografische Signierung durch. C2PA-Claim-Signierung und Schlüsselverwahrung liegen außerhalb seines Geltungsbereichs; das FIPS-Modus-Signierverhalten finden Sie im Security-Modul.
Bedrohungsmodell
Abschnitt betitelt „Bedrohungsmodell“Nicht vertrauenswürdiges E-Rechnungs-XML und C2PA-Bytes sind die primären Eingaben. Maßnahmen: XXE-sicheres Parsing, begrenzte Dekomprimierung, keine Claim-Synthese über die C2PA-Naht und kein Netzwerk-I/O während der Validierung.
Verhaltensvertrag
Abschnitt betitelt „Verhaltensvertrag“LangComplianceReportergibt je PDF/UA-2-Sprach-Tag-Ereignis einen strukturierten JSON-Datensatz mit dem beanstandeten Tag, einem maschinenlesbaren Grund, geparsten Tag-Komponenten, einem ISO-14289-2-§8.4.4-Verweis und einem Zeitstempel aus.ConformancePolicysteht standardmäßig auf strikter UA-2-Sprachbehandlung und schlägt fehlersicher zu, wenn ein fehlerhaftes oder nicht registriertes BCP-47-Tag in/Langgelangt. Das laxe Opt-out ist deprecated und wird im nächsten Major-Release entfernt.EInvoiceValidatorerkennt das Profil, führt die EN-16931-Geschäftsregel-Engine und einen Schematron-Durchlauf aus und gibt einEInvoiceValidationResultzurück. Es ist kein Validator einer Steuerbehörde; nationale Erweiterungen liegen außerhalb des Geltungsbereichs, und der Aussteller bleibt gemäß EN 16931-1 verantwortlich.FacturXEmbeddererzeugt ein hybrides PDF/A-3-Dokument mit angehängtem Factur-X-XML.C2paManifestEmbedderbettet einen vom Aufrufer bereitgestelltenManifestStoreein oder extrahiert ihn; er synthetisiert oder signiert keine Claims.- Dieses Modul berichtet, was es prüft. Es zertifiziert kein Dokument und garantiert keine regulatorische Hinlänglichkeit.
Hinweis zur Enterprise-Abgrenzung
Abschnitt betitelt „Hinweis zur Enterprise-Abgrenzung“Compliance in Pro umfasst Sprach-Tag-Berichterstattung, EN-16931- / Factur-X- / ZUGFeRD-Prüfung und C2PA-Manifest-Einbettung/-Extraktion. Erweiterte Archiv- und Signaturprofile sowie C2PA-Claim-Signierung mit Schlüsselverwahrung sind Anliegen der Enterprise-Stufe, die separat dokumentiert sind und nicht von diesem Modul bereitgestellt werden.
Core-Rückfalloption / Alternative
Abschnitt betitelt „Core-Rückfalloption / Alternative“Für Sprach-Tag-Berichterstattung, E-Rechnungs-Behandlung oder C2PA-Manifest-Einbettung gibt es kein Core-Äquivalent. Dies sind Pro-Ergänzungen.
Publikationsabgrenzung
Abschnitt betitelt „Publikationsabgrenzung“Diese Seite dokumentiert ausschließlich extern beobachtbares Verhalten und die unterstützte öffentliche API-Oberfläche. Interne Namespace-Pfade, Helferklassen, Mechanismus-Tabellen, Runbook-Dateinamen und Ticket-Präfixe liegen außerhalb des Geltungsbereichs.
Siehe auch
Abschnitt betitelt „Siehe auch“- Security — Signierung und Schwärzung.
- Enterprise-Editionen — erweiterte Archiv- und Signaturprofile.
- Spezifikationen — Index der referenzierten Standards.
- Compliance — Deep Reference — vollständige Klassen- und Methoden-Oberfläche.