Versions and Release Notes
Here you'll find the most important changes in the current and upcoming FactoorSharp versions.
Version 19.0
CurrentVersion 19.0 introduces free, local invoice validation, improves how XRechnung price details and PDF attachments are handled, and hardens FactoorSharp against crafted documents.
What's new in detail:
-
Validate invoices offline ValidationInvoices can now be validated directly in your application, with no internet connection and no extra cost per check. The more thorough check with additional online-service tests is still available whenever you need it.
// Default: validation through the online service (with Valitool/VeraPDF extra checks) ValidationResult result = FacturXValidator.Validate("invoice.pdf"); // New: validation runs entirely offline, no internet connection and no quota needed ValidationResult localResult = FacturXValidator.Validate("invoice.pdf", extendedValidation: false); ' Default: validation through the online service (with Valitool/VeraPDF extra checks) Dim result As ValidationResult = FacturXValidator.Validate("invoice.pdf") ' New: validation runs entirely offline, no internet connection and no quota needed Dim localResult As ValidationResult = FacturXValidator.Validate("invoice.pdf", extendedValidation:=False) -
Support for ZUGFeRD 2.5.2 CoreInvoices can now be created in the latest ZUGFeRD format.
-
More flexibility with international formats (BT-24) CoreBesides XRechnung, related formats such as Peppol BIS Billing 3.0 can now be flagged correctly too – handy for businesses with European trading partners.
invoice.SpecificationIdentifier = SpecificationIdentifiers.PeppolBisBilling30; invoice.SpecificationIdentifier = SpecificationIdentifiers.PeppolBisBilling30 -
Reference to goods receipt documents (BT-15-00) CoreInvoices can now be linked to the matching goods receipt document.
invoice.SetReceivingAdviceReferencedDocument("WE-2026-0142"); invoice.SetReceivingAdviceReferencedDocument("WE-2026-0142") -
Add further attachments to a Factur-X PDF PDFExtra documents such as terms and conditions or calculations can now be attached to a Factur-X PDF file.
byte[] terms = File.ReadAllBytes("terms.pdf"); PdfUtils.AddAttachment("invoice.pdf", "terms.pdf", terms); Dim terms As Byte() = File.ReadAllBytes("terms.pdf") PdfUtils.AddAttachment("invoice.pdf", "terms.pdf", terms) -
PDF attachments are now reliably preserved PDFExisting attachments on a PDF invoice, such as delivery notes or calculations which are attached to the original PDF file, are no longer lost when adding Factur-X information and creating the PDF-A/3 file – and their description is now preserved too.
-
More accurate pricing for XRechnung invoices (BT-147, BT-148) CoreFixed a bug where the gross price per line item and line-level discounts were sometimes read incorrectly from XRechnung documents.
-
Correct tax category on line-item discounts (BT-95) CoreThe tax category of a discount or surcharge on an invoice line wasn't written in the correct format when saving to ZUGFeRD 2.5 – this is now fixed.
-
More reliable error messages during online validation ValidationErrors such as oversized files or an exhausted validation quota are now reported more clearly and can be caught individually in your own application.
try { var result = FacturXValidator.Validate("invoice.pdf"); } catch (FileTooLargeException) { // File exceeds the allowed size } catch (QuotaExceededException) { // Validation quota used up } Try Dim result = FacturXValidator.Validate("invoice.pdf") Catch ex As FileTooLargeException ' File exceeds the allowed size Catch ex As QuotaExceededException ' Validation quota used up End Try -
Better protection when reading documents SecurityReading invoice files is now hardened against crafted, malicious files – both against known XML attack techniques and against excessive memory usage on very large files.
Version 18.5
Version 18.5 introduces support for invoicing periods, improves how payment terms are handled, and fixes several bugs around ZUGFeRD 2.0 and 2.5.
Highlights
Version 18.4
Version 18.4 introduces a new visualization component and fixes a number of bugs in working with ZUGFeRD 2.5.
Highlights
Version 18.3
Version 18.3 adds support for ZUGFeRD 2.5 and extends validation to Italian and Spanish invoices.
Highlights
Version 18.2
Version 18.2 extends PDF processing further and improves quota management for validation.
Highlights
Version 18.1
Version 18.1 extends FactoorSharp's PDF processing further and adds signing support for all .NET target platforms.
Highlights
Version 18.0
Version 18.0 is the first published release of FactoorSharp. It forms the stable foundation for working with ZUGFeRD, Factur-X and XRechnung in modern .NET applications.