FactoorSharp.FacturX.Validator
18.2.0
dotnet add package FactoorSharp.FacturX.Validator --version 18.2.0
NuGet\Install-Package FactoorSharp.FacturX.Validator -Version 18.2.0
<PackageReference Include="FactoorSharp.FacturX.Validator" Version="18.2.0" />
<PackageVersion Include="FactoorSharp.FacturX.Validator" Version="18.2.0" />
<PackageReference Include="FactoorSharp.FacturX.Validator" />
paket add FactoorSharp.FacturX.Validator --version 18.2.0
#r "nuget: FactoorSharp.FacturX.Validator, 18.2.0"
#:package FactoorSharp.FacturX.Validator@18.2.0
#addin nuget:?package=FactoorSharp.FacturX.Validator&version=18.2.0
#tool nuget:?package=FactoorSharp.FacturX.Validator&version=18.2.0
FactoorSharp.FacturX.Validator
FactoorSharp.FacturX.Validator is a .NET library for validating Factur-X (ZUGFeRD) and XRechnung documents against technical rules and format requirements.
It is part of the FactoorSharp product family and is designed for automated validation of electronic invoices in backend systems, import pipelines, and compliance workflows.
You can find all available license options here:
https://www.factoorsharp.de
Overview
The library accepts XML invoices and hybrid PDF invoices (PDF/A-3 with embedded XML). It automatically detects the file type and forwards the content to the FactoorSharp validation service for a comprehensive check.
The returned result combines the overall validation outcome with specialized sub-results for the XML payload, the PDF container, and the XML embedding.
Features
- Validation of Factur-X (ZUGFeRD) XML and hybrid PDF documents
- Validation of XRechnung (UBL and CII formats)
- Automatic detection of XML and PDF input
- Detailed validation results (XML, PDF, and embedding checks)
- Synchronous and asynchronous API
- Stream-based and file-path-based input
- Designed for backend processing and automation scenarios
Supported Platforms
- .NET Standard 2.0 / 2.1
- .NET Framework 4.6.1, 4.6.2, 4.8
- .NET 8, .NET 10
Installation
Install the package via NuGet:
dotnet add package FactoorSharp.FacturX.Validator
Usage
Register under https://www.factoorsharp.de and download the trial license.
Validate from a file path
FacturXValidator.SetLicense("your-license-key");
ValidationResult result = FacturXValidator.Validate("invoice.xml");
if (result != null && result.SummaryStatus)
{
// The document passed validation.
}
Validate from a stream
FacturXValidator.SetLicense("your-license-key");
using (Stream stream = File.OpenRead("facturx.pdf"))
{
ValidationResult result = await FacturXValidator.ValidateAsync(stream).ConfigureAwait(false);
if (result != null && result.SummaryStatus)
{
// The document passed validation.
}
}
Check service availability
if (FacturXValidator.IsAvailable())
{
// The remote validator can be contacted successfully.
}
Licensing Model
FactoorSharp is a commercial product licensed per company. The license model is based on the following principles:
- The license is granted to a company, not to individual users
- Usage is based on the number of developers working with the library
- Different license tiers are available (e.g. Freelancer, SME, Corporate)
- Customers are expected to select a license that reflects their actual usage
The model follows a fair-use approach and does not enforce strict technical limits.
License
This software is licensed, not sold. For full terms and conditions, including detailed legal and data protection provisions, please refer to:
https://www.factoorsharp.de/de/Home/Agb
Support
Support is available during an active subscription period.
About
FactoorSharp is developed and maintained by:
STwo Industries GmbH
Eichenkoppel 19
22399 Hamburg
Germany
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net461 is compatible. net462 is compatible. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 is compatible. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.1
- System.Net.Http (>= 4.3.4)
-
.NETFramework 4.6.2
- System.Net.Http (>= 4.3.4)
-
.NETFramework 4.8
- System.Net.Http (>= 4.3.4)
-
.NETStandard 2.0
- No dependencies.
-
.NETStandard 2.1
- No dependencies.
-
net10.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
18.2,0
* Remaining quota is returned with validation result
* Endpoint for retrieving remaining quota