Free · no account · for the Netherlands
SI-UBL 2.0 / NLCIUS checker for Dutch e-invoices
Paste or drop your XML invoice. We check 30 rules of the Dutch SI-UBL 2.0 standard (NLCIUS, the format behind SimplerInvoicing), Peppol's 9 Netherlands rules and 103 EN 16931 rules — and say for every error what to change in your accounting software.
- KvK number, address and reference
- Payment means and VAT
- SI-UBL 2.0 and Peppol BIS
Ook in het Nederlands:SimplerInvoicing-factuur controleren
Your invoice stays with you. The check runs in your browser: the invoice is not sent and not stored. We only count, anonymously, that the checker was used.
Not the official validator. We re-implement the official rules, but not all of them. For a final check before go-live, use the Dutch Peppol Authority's validator. What exactly is checked?
Sample
Drop an XML file (or a PDF with embedded XML) here, max. 15 MB. Nothing is uploaded.
Sample invoice loaded. Replace the text with your own XML, or pick another sample.
4 errors found
A receiver validating against the official rules would reject this invoice. Below, each error says what to change.
- Standard
- SI-UBL 2.0 (NLCIUS, UBL)
- Invoice
- 2026-0412 · 09/11/2026
- Supplier
- Studio Grachtwerk B.V.
- Customer
- Bakkerij De Korenschoof B.V.
- Reference
- –
- Amount due
- €2,457.71
Supplier in the Netherlands: the Dutch rules apply · 144 rules checked · 4 findings come from the Dutch rules.
ErrorBR-NL-2line 2BT-10, BT-13
No buyer reference or purchase order number
An SI-UBL 2.0 invoice from a Dutch supplier must contain the customer's reference or the purchase order number, so the customer can route and match the invoice.
Fix: Ask the customer for their reference or purchase order number; government customers usually state it in the order. Fill it in as the buyer reference (BT-10) or the order reference (BT-13). Export the invoice again.About this ruleTechnical message
Neither a buyer reference (BT-10) nor a purchase order reference (BT-13) is given.
ErrorBR-NL-1line 11BT-30
Supplier's KvK number or OIN is missing
A Dutch supplier must put its KvK (Chamber of Commerce) number on an SI-UBL 2.0 invoice as its legal registration number, with scheme 0106. Government bodies use their OIN with scheme 0190.
Fix: Enter your 8-digit KvK number in the company settings as the legal registration number. Make sure it is exported with scheme 0106 (government: OIN with 0190). Export the invoice again.- Expected
- schemeID 0106 (KvK) or 0190 (OIN)
About this ruleTechnical message
The seller has no KvK or OIN number (BT-30).
ErrorBR-NL-4line 39BT-50, BT-52, BT-53
Dutch customer's address is incomplete
When a Dutch supplier invoices a customer in the Netherlands in SI-UBL 2.0, the customer's address must contain street, city and post code.
Fix: Complete the customer record: street and house number, post code and city. Export the invoice again.About this ruleTechnical message
The Dutch buyer's address has no post code.
ErrorBR-NL-12line 59BT-81
Payment method code not allowed
An SI-UBL 2.0 invoice from a Dutch supplier may only use payment method codes 30, 48, 49, 57, 58 or 59.
Fix: Use 58 for a SEPA credit transfer or 30 for a credit transfer. Use 59 for SEPA direct debit, 49 for direct debit, 48 for card payment and 57 for a standing agreement. Export the invoice again.- Found
- 31
- Expected
- 30, 48, 49, 57, 58 or 59
About this ruleTechnical message
Payment means code 31 is not one of 30, 48, 49, 57, 58 or 59.
What this check does and doesn't do
The Dutch rules come from the Dutch Peppol Authority's SI-UBL 2.0 validatieset 2.0.3.13 (published 21 May 2026, in force from 17 August 2026), and we test them against the Authority's official test files. Errors from those official rules decide the verdict; our own extra checks are shown separately.
Checked
- 30 SI-UBL 2.0 / NLCIUS rules: 13 errors (KvK number, address, reference, payment means…) and 17 warnings for fields the standard advises against
- Peppol BIS Billing 3.0's 9 Netherlands rules (NL-R-001 … 009), for Peppol invoices from Dutch suppliers
- 103 EN 16931 rules: mandatory fields, VAT categories and every calculation
- UBL and CII (NLCIUS CII), invoices and credit notes
- Separately: check digits of VAT numbers and IBANs (not an official rule)
Not checked
- XML Schema (XSD): element order and unknown elements
- Not every EN 16931 rule, and not the UBL syntax rules (UBL-SR, UBL-CR)
- The CII warning BR-NL-22 (subject code on an invoice note)
- Extensions of NLCIUS, such as SETU for staffing
- Whether the receiver is on Peppol — use the Peppol ID lookup for that
The official check
The Dutch Peppol Authority offers its own validation tool and publishes the validation rules on GitHub. Use that for the final check; your Peppol service provider also validates every invoice before sending.
How it works
- 1
Export the XML
Download the UBL or SI-UBL invoice from your accounting software, or open the XML file you received.
- 2
Paste or drop the file
The check starts right away. Nothing is uploaded; you can also try one of the sample invoices.
- 3
Fix each finding
For every error you see the rule, the line in the XML file and what to change. Change it in your software and export again.
For integrations and AI agents: the same check over the REST API and as the free MCP tool check_si_ubl. REST API · MCP
Frequently asked questions
What is SI-UBL 2.0, and what does SimplerInvoicing have to do with it?
Is this the official validator?
How is SI-UBL 2.0 different from Peppol BIS Billing 3.0?
Why don't I get any KvK or address findings?
My file has no SI-UBL 2.0 identifier. Can I still check it?
Is my invoice stored?
Read next
- E-facturatie in Nederland: wanneer verplicht?When e-invoicing is mandatory in the Netherlands: government, businesses and the 2030 plans (in Dutch).
- Is your customer on Peppol?Search the official Peppol Directory by name, KvK or VAT number or Peppol ID.
- Full e-invoice validatorPeppol BIS, XRechnung, Factur-X and more, with a per-section report and batch checks.