Enterprise editie
Factuur
In het kort
Sectie met titel “In het kort”NextPDF Enterprise produceert gestructureerde hybride facturen volgens ZUGFeRD / Factur-X / Peppol-UBL en valideert factuur-XML tegen het EN 16931-datamodel en Schematron-regelsets. Het produceert gestructureerde facturen die voldoen aan het datamodel uit EN 16931; het is geen validator van de belastingautoriteit en certificeert geen enkel document.
Beschikbaarheid & licentie
Sectie met titel “Beschikbaarheid & licentie”Deze mogelijkheid wordt geleverd in NextPDF Enterprise (nextpdf/enterprise) en wordt geactiveerd met een licentie-envelop op Enterprise-niveau. Een implementatie zonder die rechten laadt de klassen van de mogelijkheid niet. Vergelijk edities en verkrijg een licentie.
Installatie
Sectie met titel “Installatie”composer require nextpdf/enterprise:^3De Schematron-engine gebruikt de PHP-extensie ext-xsl. Installeer en activeer deze voordat je Schematron-validatie uitvoert.
Conceptueel overzicht
Sectie met titel “Conceptueel overzicht”De Invoice-module heeft drie onafhankelijke oppervlakken: embedding van gestructureerde facturen, EN 16931 XML-validatie en uitvoering van Schematron-regels.
Embedding. ZugferdEmbedder koppelt een door de caller aangeleverde ZUGFeRD 2.4 / Factur-X 1.08 UN/CEFACT CII XML-payload aan een PDF/A-carrier en produceert een hybride factuur. Twee carrierformaten worden ondersteund: PDF/A-4f (ISO 19005-4:2020), de voorkeurs-moderne carrier, en PDF/A-3b (ISO 19005-3:2012) voor achterwaartse compatibiliteit. ZugferdXmpSchema injecteert de declaratie van het Factur-X XMP-uitbreidingsschema die de carrier nodig heeft. PeppolEmbedder vervult dezelfde rol voor door de caller aangeleverde Peppol BIS Billing 3.0 UBL 2.1 factuur- of creditnota-XML en koppelt deze met de correcte associated-file-relatie en het juiste MIME-type. NextPDF synthetiseert geen factuur-XML; de caller levert geldige XML en blijft de uitgever van de factuur.
Validatie. InvoiceXmlValidator controleert factuur-XML tegen het semantische datamodel van EN 16931 en de container-verwachtingen van ZUGFeRD / Factur-X, inclusief de BT-24-specificatie-identificatie die EN 16931-businessrule BR-1 voorschrijft. Hij draait in een van twee modi: COMPAT (de standaard; grensgevallen van EN 16931-kardinaliteit worden als waarschuwingen gerapporteerd om de achterwaartse compatibiliteit voor bestaande fixtures te behouden) en STRICT (BT-24-kardinaliteit is een harde fout, wat de semantiek van een externe validator weerspiegelt). De modus is selecteerbaar per aanroep, via een omgevingsoverride of via conformiteitsbeleid.
Schematron. SchematronValidator voert vooraf gecompileerde Schematron-regelsets uit (de CEN EN 16931 .sch-regels die bij de build naar XSLT zijn gecompileerd) tegen factuur-XML met behulp van de in-process PHP-XSLT-processor, en parseert het SVRL-rapport tot gestructureerde bevindingen. De enum ZugferdProfile modelleert de conformiteitsprofielen — MINIMUM, BASIC WL, BASIC, EN 16931, EXTENDED en het Duitse XRechnung B2G CIUS over EN 16931.
Wat deze module wel en niet claimt
Sectie met titel “Wat deze module wel en niet claimt”Deze module produceert en controleert gestructureerde factuurgegevens. Ze claimt niet dat een document een juridisch conforme factuur is, dat het is goedgekeurd door de belastingautoriteit of dat het gegarandeerd door enige autoriteit wordt aanvaard.
- De validator controleert uitsluitend het semantische model van EN 16931 en de container van ZUGFeRD / Factur-X / UBL. Het is geen validator van de belastingautoriteit. Nationale uitbreidingen en clearance-platforms — bijvoorbeeld het Italiaanse SDI, het Franse Chorus Pro, het Duitse XRechnung-transport — vallen op transportniveau buiten de scope.
- Zoals EN 16931-1 zelf stelt, draagt het kernsemantische model de essentiële informatie die een elektronische factuur nodig heeft om juridische en fiscale compliance te ondersteunen; de uitgever van de factuur is verantwoordelijk voor het naleven van de regels van de relevante wetgeving. Dit is geen validator van de belastingautoriteit.
- Ondersteuning van een standaard is niet hetzelfde als conformiteit ermee. Raadpleeg je belasting- en complianceadviseurs om de toereikendheid voor de regelgeving in jouw jurisdictie te beoordelen.
Waarom het zo werkt
Sectie met titel “Waarom het zo werkt”De module synthetiseert bewust nooit factuur-XML. Embedding, EN 16931-validatie en Schematron-uitvoering zijn drie onafhankelijke oppervlakken over XML die de caller aanlevert en bezit. Zo blijft NextPDF een producent en controleur, nooit de uitgever, omdat juridische verantwoordelijkheid niet aan een library kan worden gedelegeerd. Validatie valt standaard terug op COMPAT, zodat een grensgeval-kardinaliteitsbevinding een waarschuwing is in plaats van een regressie. STRICT is opt-in wanneer je de semantiek van een externe validator nodig hebt. Het resultaat is een schone scheiding: NextPDF rapporteert wat het waarneemt, en de uitgever bepaalt of het document aan de wet voldoet.
Ontwerpachtergrond: Facturen en e-facturatie.
API-oppervlak
Sectie met titel “API-oppervlak”| Klasse | Verantwoordelijkheid |
|---|---|
ZugferdEmbedder | Koppel ZUGFeRD / Factur-X CII XML aan een PDF/A-4f- of PDF/A-3b-carrier. |
ZugferdXmpSchema | Injecteer de declaratie van het Factur-X XMP-uitbreidingsschema. |
ZugferdProfile | Enum voor conformiteitsprofielen (MINIMUM … EXTENDED, XRECHNUNG). |
PeppolEmbedder | Koppel Peppol BIS 3.0 UBL factuur-/creditnota-XML aan een PDF/A-carrier. |
InvoiceXmlValidator | Controleer XML tegen het EN 16931-datamodel; modus COMPAT of STRICT. |
InvoiceValidatorMode | Enum voor validatiemodus: COMPAT (standaard) of STRICT. |
SchematronValidator | Voer vooraf gecompileerde Schematron-regelsets uit; parseer SVRL-bevindingen. |
InvoiceValidationResult / SchematronResult | Gestructureerde resultaten: profiel, bevindingen, ernst. |
Codevoorbeeld — Snelstart
Sectie met titel “Codevoorbeeld — Snelstart”use NextPDF\Enterprise\Invoice\ZugferdEmbedder;use NextPDF\Enterprise\Invoice\ZugferdProfile;
$pdf = ZugferdEmbedder::basic($pdfAManager, $fileAttachment, $ciiXml) ->embed(ZugferdProfile::EN16931);Codevoorbeeld — Productie
Sectie met titel “Codevoorbeeld — Productie”use NextPDF\Enterprise\Invoice\InvoiceXmlValidator;use NextPDF\Enterprise\Invoice\InvoiceValidatorMode;
$result = $validator->validate($ciiXml, InvoiceValidatorMode::STRICT);
foreach ($result->findings as $finding) { $logger->warning('invoice.finding', [ 'rule' => $finding->ruleId, 'severity' => $finding->severity->value, ]);}// A clean result is one input to your decision, not a compliance verdict.// The invoice issuer remains responsible for relevant legislation.Randgevallen en valkuilen
Sectie met titel “Randgevallen en valkuilen”- Een welgevormde PDF die geen herkenbare factuurpayload draagt, levert een “not an invoice”-resultaat op in plaats van een exceptie te gooien.
COMPATis de standaard validatiemodus: een ontbrekende BT-24-specificatie-identificatie wordt als een waarschuwing gerapporteerd, zodat aanroepsites die op een booleaanse geldigheidsvlag afgaan niet regressen. GebruikSTRICTom van BT-24 een harde fout te maken die overeenkomt met de semantiek van externe KoSIT / Mustang.- De caller levert de factuur-XML. NextPDF genereert of corrigeert deze niet; een lege bevindingenlijst maakt een niet-conforme payload niet conform.
- De Schematron-engine vereist
ext-xsl. Regelsets worden bij de build gecompileerd; de runtime voert uitsluitend de vooraf gecompileerde XSLT uit.
Prestaties
Sectie met titel “Prestaties”De kosten van validatie schalen mee met de grootte van de ingebedde XML en het aantal Schematron-regels. De kosten van embedding schalen mee met de carriergrootte en worden gedomineerd door de PDF/A-serialisatie. Het prestatiebudget van de pagina weerspiegelt het renderen van documentatie, niet de factuurdoorvoer.
Beveiligingsnotities
Sectie met titel “Beveiligingsnotities”Alle XML-parsing verloopt via de geharde XML-guard: resolutie van externe entiteiten is uitgeschakeld (XXE-veilig), DOCTYPE wordt geweigerd en decompressie is begrensd. De XSLT-processor draait met netwerk- en bestandssysteembronladen uitgeschakeld en registreert nooit PHP-functies, zodat document(), xsl:include, xsl:import en result-document het netwerk of de schijf niet kunnen bereiken. Behandel factuur-XML uit niet-vertrouwde bronnen als vijandig.
Datalocatie & PII-mitigaties
Sectie met titel “Datalocatie & PII-mitigaties”Factuur-XML kan persoonlijke, commerciële en financiële gegevens bevatten. De verwerking is in-process en lokaal; de module doet tijdens embedding of validatie geen uitgaande netwerkoproepen. Pas je eigen bewaar- en minimalisatiecontroles toe op geëxtraheerde XML en bevindingen.
Veilige telemetrie & logopschoning
Sectie met titel “Veilige telemetrie & logopschoning”Bevindingen en validatielogs kunnen regel-identificaties en tagwaarden bevatten. Ze bevatten geen volledige factuurpayloads. Schoon veldwaarden op of redigeer ze voordat je logs doorstuurt naar gedeelde bestemmingen als die waarden gevoelig zijn.
Conformiteit
Sectie met titel “Conformiteit”| Gedrag | Referentie | Status |
|---|---|---|
| Kernsemantisch model voor facturen | EN 16931-1:2026 §4 | Gebouwd tegen; uitgever blijft verantwoordelijk voor relevante wetgeving |
| Specificatie-identificatie (BT-24) | EN 16931-1:2026 BR-1 | Gecontroleerd (waarschuwing in COMPAT, fout in STRICT) |
| UN/CEFACT CII-syntaxbinding | CEN/TS 16931-3-3:2020 | Embed ondersteund |
| UBL 2.1-syntaxbinding | CEN/TS 16931-3-2:2020 | Embed ondersteund |
| PDF/A-3 associated file | ISO 19005-3:2012 §6.7.8 | Carrier ondersteund |
| PDF/A-4f ingebed bestand | ISO 19005-4:2020 Annex A | Carrier ondersteund |
Deze tabel legt vast tegen welke specificaties NextPDF Enterprise is gebouwd en wat het controleert. Het is geen verklaring van certificering, goedkeuring door de belastingautoriteit of toereikendheid voor regelgeving. De uitgever van de factuur is verantwoordelijk voor het naleven van de regels van de relevante wetgeving; dit is geen validator van de belastingautoriteit.
FIPS-modusgedrag
Sectie met titel “FIPS-modusgedrag”Deze module voert geen cryptografische ondertekening uit. Het ondertekenen van een hybride factuur en de bewaring van sleutels in FIPS-modus vallen hier buiten de scope; zie de Signature-module.
Dreigingsmodel
Sectie met titel “Dreigingsmodel”Niet-vertrouwde factuur-XML is de primaire invoer. Mitigaties: XXE-veilige parsing, weigering van DOCTYPE, begrensde decompressie, een XSLT-processor met netwerk- en bestandsbronladen uitgeschakeld, en geen claimsynthese — de caller levert en bezit de factuurinhoud.
Gedragscontract
Sectie met titel “Gedragscontract”ZugferdEmbedder/PeppolEmbedderkoppelen door de caller aangeleverde factuur-XML aan een PDF/A-4f- of PDF/A-3b-carrier; NextPDF synthetiseert nooit factuur-XML.InvoiceXmlValidatordraait inCOMPAT(standaard; grensgevallen van EN 16931-kardinaliteit zijn een waarschuwing) ofSTRICT(BT-24-kardinaliteit is een harde fout).SchematronValidatorvoert vooraf gecompileerde regelsets uit via de in-process XSLT-processor en parseert SVRL-bevindingen; een lege bevindingenlijst maakt een niet-conforme payload niet conform.- Alle XML-parsing is XXE-veilig: resolutie van externe entiteiten uitgeschakeld,
DOCTYPEgeweigerd, decompressie begrensd.
Publicatiegrens
Sectie met titel “Publicatiegrens”Deze pagina documenteert uitsluitend extern waarneembaar gedrag en het ondersteunde openbare API-oppervlak. Interne namespace-paden, helperklassen, mechanismetabellen, runbook-bestandsnamen en ticketprefixen vallen buiten de scope.
Core-terugval
Sectie met titel “Core-terugval”NextPDF Core genereert of valideert geen gestructureerde facturen. Een Core-only-implementatie kan een PDF produceren, maar heeft geen ZUGFeRD / Factur-X / Peppol-embedding, geen EN 16931-validator en geen Schematron-engine.
Pro-terugval
Sectie met titel “Pro-terugval”In een Pro-only-implementatie is het ondersteunde oppervlak de Pro-e-factuurdetectie en -validatie van Factur-X / ZUGFeRD-payloads. Pro genereert geen hybride ZUGFeRD / Factur-X- of Peppol-UBL-carriers, voegt het XRechnung CIUS-profiel niet toe en draait de in-process Schematron-engine niet; een configuratie die in een Pro-only-implementatie generatie, het XRechnung CIUS-profiel of Schematron aanvraagt, heeft geen Enterprise-component om eraan te voldoen. Zie Pro Compliance voor het Pro-detectie- en -validatieoppervlak.
Opmerking over de Enterprise-grens
Sectie met titel “Opmerking over de Enterprise-grens”Interne mechanismedetails blijven in de interne documentatie van de bronrepository en vallen buiten de scope van deze handleiding.
Implementatiegrens
Sectie met titel “Implementatiegrens”De Schematron-engine vereist de PHP-extensie ext-xsl; het provisioneren en activeren ervan is de verantwoordelijkheid van de operator. De verwerking is in-process en lokaal; de module doet tijdens embedding of validatie geen uitgaande netwerkoproepen. Nationaal e-facturatietransport, clearance-platforms en archiveringssystemen vallen buiten deze module en zijn de verantwoordelijkheid van de operator.
Juridische-compliancegrens
Sectie met titel “Juridische-compliancegrens”NextPDF produceert gestructureerde facturen die voldoen aan het datamodel uit EN 16931 en rapporteert regelbevindingen. Het produceert geen “juridisch conforme facturen”, levert geen “door de belastingautoriteit goedgekeurde” uitvoer en garandeert niet dat een factuur wordt aanvaard door een belastingautoriteit, rechtbank of register. De uitgever van de factuur is verantwoordelijk voor het naleven van de regels van de relevante wetgeving; dit is geen validator van de belastingautoriteit. Nationale e-facturatieplatforms, clearance-modellen, archiveringsmandaten en vereisten voor digitale handtekeningen verschillen per jurisdictie en zijn de verantwoordelijkheid van de uitgever. Raadpleeg je belasting- en juridische adviseurs.
Zie ook
Sectie met titel “Zie ook”- Factuurreferentie — API-referentie voor de embedders, validators en de Schematron-engine.
- Pro Compliance — Pro-e-factuurdetectie en -validatie.
- Document E-Filing — optimalisatie van levering aan rechtbank/register.
- Enterprise-overzicht
- Functiematrix Core versus Pro versus Enterprise