Skip to main content

Search OfficeIMO

Enter a topic, API type, or PowerShell command.

Documentation Search all OfficeIMO/

API Reference

Class

InvoiceValidator

Namespace OfficeIMO.Invoicing.Validation
Assembly OfficeIMO.Invoicing.Validation
Modifiers sealed

Validates exact invoice bytes using pinned schema and business-rule artifacts.

Inheritance

  • Object
  • InvoiceValidator

Constructors

public InvoiceValidator(InvoiceRuleBundle bundle, SaxonInvoiceRulesRunner runner = null) #

Creates a validator. Without a runner, business-rule status remains NotRun and IsValid remains false.

Parameters

bundle OfficeIMO.Invoicing.Validation.InvoiceRuleBundle requiredposition: 0
runner OfficeIMO.Invoicing.Validation.SaxonInvoiceRulesRunner = null optionalposition: 1

Methods

public async Task<InvoiceValidationReport> ValidateAsync(Byte[] xml, InvoiceSpecificationRelease release, CancellationToken cancellationToken = default) #
Returns: Task<InvoiceValidationReport>

Runs local schema and configured Schematron validation, preserving cancellation and distinguishing engine failure from invalid input.

Parameters

xml System.Byte[] requiredposition: 0
release OfficeIMO.Invoicing.InvoiceSpecificationRelease requiredposition: 1
cancellationToken System.Threading.CancellationToken = default optionalposition: 2