Namespace EInvoice.Core.Validation

Classes

CvdValidator

Validates an invoice against the XRechnung CVD CIUS rules (BR-DECVD-01 through BR-DECVD-06).

En16931Validator

Validates an invoice against EN 16931 business rules.

IbanValidator

Validates International Bank Account Numbers (IBAN, ISO 13616) using format and MOD 97-10 checksum.

LeitwegIdValidator

Validates Leitweg-IDs used in German public sector e-invoicing (XRechnung BT-10). Format: [Mandant]-[Verwaltungseinheit]-[Prüfziffer], e.g. 04011000-12345-03. Check digit uses ISO 7064 MOD 97-10.

LocalOnlyXmlResolver

An XML resolver that restricts URI resolution to files within a specific base directory. Prevents SSRF and path-traversal attacks during XSD schema loading.

UblCrValidationContext

Optional UBL syntax metadata used to opt in to advisory UBL-CR checks. The EN 16931 Invoice model intentionally does not expose raw UBL syntax fields such as UBLExtensions, UBLVersionID, or ProfileExecutionID. Provide these values explicitly when such checks should run.

VatCategoryIndex

Pre-indexed view of invoice items grouped by VAT category code. Built once per validation call; shared across all rules to eliminate repeated collection scans.

XRechnungValidator

Validates an invoice against XRechnung rules (EN 16931 + BR-DE-* rules).