The free eConnect Validator: check whether your XML complies with UBL, BIS Billing, and NLCIUS.
Before sending an e-invoice, you want to be sure that the XML file is technically correct. The eConnect Validator checks your invoice against XML schemas, Schematron rules, and country-specific validations. The tool is freely available as an online validator.
The eConnect Validator performs multiple checks on your e-invoice file:
XML schema validation. Is the basic structure of the file correct? Are all required XML elements present and properly nested?
Schematron validation. Does the invoice comply with the business rules of the selected profile? This includes rules for VAT calculations, mandatory fields, and code lists.
Profile detection. The system automatically recognises which profile your invoice follows (BIS Billing V3, NLCIUS, PINT, XRechnung) and applies the corresponding validation rules.
Country-specific rules. Additional validation rules apply per country. For the Netherlands these are the NL-R rules, for Germany the DE-R rules, for Denmark the DK-R rules, and so on. The validator applies these automatically based on the country code in the invoice.
The validator supports all common e-invoice formats:
The online validator is available at /en/validator. You do not need to create an account.
When errors are found, the validator provides the exact error code, a description of the problem, and the location in the XML file (XPath). This tells you precisely what needs to be corrected.
The validator produces three types of messages:
Common error codes begin with a prefix indicating the domain: PEPPOL- for Peppol-wide rules, NL-R- for Dutch rules, BR- for base rules from EN 16931. The error description always states the expected behaviour.
When sending a credit note, a few specific validation errors occur regularly. The error appears at Peppol level (for API submissions, for example, as [API400.AT04] Invalid payload). Per rule, the cause and solution:
cac:Delivery/cbc:ActualDeliveryDate), or provide an invoicing period (BG-14). One of the two is mandatory.cac:Delivery/cac:DeliveryLocation/cac:Address/cac:Country/cbc:IdentificationCode) with an ISO 3166-1 alpha-2 code.cac:BillingReference/cac:InvoiceDocumentReference/cbc:ID with the invoice number of the original invoice. Mandatory for credit notes. See also Credit note variants.BR-IC-11 and BR-IC-12 are EN 16931 base rules that only apply when the credit note contains an intra-community VAT category; they do not occur for domestic supplies.
In addition to the manual validator, the eConnect platform also performs automatic validation at the moment of sending. If an invoice does not meet the requirements, sending is blocked and you receive an error message with the relevant validation rule.
For API users: the PSB validates every invoice at submission time and returns the validation results in the API response. This allows you to build validation into your own software process.
Validation rules are updated with every new release of the Peppol BIS Billing specification. eConnect updates the Schematron artefacts and code lists as soon as a new version becomes mandatory. The online validator always validates against the current release.
Tip: after a specification update, verify that your invoices are still valid. New rules may impose stricter requirements on fields that were previously optional.
For each error, the validator shows the exact error code, a description of the problem, and the location in the XML file (XPath). Errors must be resolved before sending, otherwise the invoice will be rejected on the Peppol network. Warnings are points of attention but do not block sending.
The validator supports Peppol BIS Billing V3, NLCIUS/SI-UBL 2.0, all PINT variants, XRechnung, and CII (Cross-Industry Invoice, including Factur-X). The format is detected automatically when you upload your XML file.
Yes. The eConnect platform automatically performs validation at the moment of sending. If an invoice does not meet the requirements, sending is blocked with an error message. API users receive the validation results in the API response.
Want to review sample files to check your own XML structure? Download sample files.
Validate your invoice