Simplerinvoicing CIUS NL — the national CIUS
Simplerinvoicing CIUS NL (also called "NLCIUS" in NEN documentation) is the Dutch specialisation of PEPPOL BIS Billing 3.0 / EN 16931. It adds constraints specific to the NL legal and banking context: mandatory KvK Handelsregister number, BSN privacy handling, restricted BTW VAT codes, enhanced IBAN markup. It is the layer that makes a UBL invoice "valid in the Netherlands".
Origin and continuity 2009-2026
Simplerinvoicing CIUS NL was not born in 2017 with EN 16931 — it has evolved since the Simplerinvoicing format of 2009. Key milestones:
- 2009-2012 — Simplerinvoicing 1.0. UBL 2.0 format + NL extensions.
Identifier
urn:www.simplerinvoicing.org:si:si-ubl:1.0. - 2013-2017 — Simplerinvoicing 2.0. Migration to UBL 2.1. First EN 16931 (draft) alignment.
- 2018-2020 — Transition period. Coexistence of Simplerinvoicing 2.0 and PEPPOL BIS Billing 3.0 (recommended for cross-border).
- 2021 — NLCIUS 1.0 (NEN-NLCIUS-1). Official publication by NEN as NL standard (national ISO equivalent). Progressive deprecation of Simplerinvoicing 2.0.
- 2023 — NLCIUS 1.0.2. Minor corrections, alignment with PEPPOL BIS 3.0.16.
- 1 January 2025 — Total Simplerinvoicing 2.0 sunset. Only NLCIUS 1.0 accepted in B2G.
- May 2025 — NLCIUS 1.0.3. Current version. Adds forbidden BSN code in Schematron rules.
CIUS structure — what gets customised?
A CIUS (Core Invoice Usage Specification) — per EN 16931 — never modifies the core standard: it restricts. NLCIUS applies this logic to PEPPOL BIS Billing 3.0, which is itself a CIUS of EN 16931. It is thus a "CIUS of a CIUS".
Comparison PEPPOL BIS Billing 3.0 vs. Simplerinvoicing CIUS NL:
Element | PEPPOL BIS 3.0 | CIUS NL
─────────────────────────────────────┼─────────────────┼──────────────────────
EndpointID schemeID | any ICD | 0106 (KvK) or
| | 0190 (OIN) mandatory
─────────────────────────────────────┼─────────────────┼──────────────────────
PartyLegalEntity/CompanyID | optional | mandatory
| | (KvK 8 digits)
─────────────────────────────────────┼─────────────────┼──────────────────────
PaymentMeans/Code 58 (SEPA Credit) | optional | IBAN mandatory
| | valid NL scheme
─────────────────────────────────────┼─────────────────┼──────────────────────
BTW TaxCategory codes | S/Z/E/AE/G/K… | restricted to
| | S, Z, E, AE, K, G
| | (not all EN 16931)
─────────────────────────────────────┼─────────────────┼──────────────────────
BuyerReference (BT-10) | recommended | MANDATORY for B2G
| | (admin internal
| | reference)
─────────────────────────────────────┼─────────────────┼──────────────────────
BSN (Burgerservicenummer) | not documented | FORBIDDEN —
| | AVG/GDPR privacy
─────────────────────────────────────┼─────────────────┼──────────────────────
Document totals | tolerance 0.02€ | tolerance 0.01€
| | (stricter)
─────────────────────────────────────┼─────────────────┼──────────────────────
Charges/Allowances (BG-20/BG-21) | free | code mandatory
| | (UNCL 7161/5189) KvK and OIN identifiers
Two national identifiers structure the Dutch PEPPOL ecosystem:
- KvK (Handelsregister): Chamber of Commerce number, 8 digits.
Registered as ICD
0106in the PEPPOL ICD registry. Every NL company registered in the KvK must use this number in EndpointID and PartyLegalEntity/CompanyID. See dedicated KvK page. - OIN (Overheidsidentificatienummer): Dutch public bodies identifier,
20 digits. Registered as ICD
0190. Used to address ministries, ZBOs, municipalities, provinces. Managed by Logius in the Digikoppeling Serviceregister.
BSN and privacy — a special case
The BSN (Burgerservicenummer) is the Dutch social security number for natural persons (9 digits). Under Dutch law (Wet Algemene Bepalingen Burgerservicenummer 2007), it is FORBIDDEN to disseminate the BSN outside cases explicitly provided by law (healthcare, tax administration, employer).
BTW VAT mapping → EN 16931 codelists
| NL BTW regime | Description | TaxCategory code | Rate |
|---|---|---|---|
| Standard | Standard rate 21% | S | 21.00 |
| Verlaagd | Reduced 9% (food, books, transport) | S | 9.00 |
| Nul | 0% (intra-EU export, zero-rated) | Z | 0.00 |
| Vrijgesteld | Exempt (healthcare, education, art. 11 OB) | E | 0.00 |
| Verlegd | Reverse charge (art. 12 OB) | AE | 0.00 |
| Margeregeling | Margin (second-hand, art. 28b OB) | G | 0.00 |
| KOR (small entrepreneurs) | Small businesses, 20 000 € threshold | K | 0.00 |
See BTW regimes page for the detailed legal basis.
IBAN and bank references
NLCIUS enforces strict IBAN validation:
- NL IBAN format:
NL[2]ABCD[10]— 4 bank letters + 10 digits. ISO 13616 mod-97 validation. - BIC mandatory if the payer account is not in the SEPA zone (BIC is optional for SEPA).
- Payment code: 58 (SEPA Credit Transfer) or 59 (SEPA Direct Debit) recommended. Code 30 (national credit transfer) historic but to be avoided.
- Account name (BT-85) recommended for audit traceability.
Full UBL example
Synthetic example of an NLCIUS B2G invoice — Voorbeeld B.V. supplier billing the Ministerie van Economische Zaken for a consultancy engagement:
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
<!-- CustomizationID — combines EN 16931 + PEPPOL BIS + CIUS NL -->
<cbc:CustomizationID>
urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0#conformant#urn:fdc:nen.nl:nlcius:v1.0
</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>2026-NL-1042</cbc:ID>
<cbc:IssueDate>2026-05-19</cbc:IssueDate>
<cbc:DueDate>2026-06-18</cbc:DueDate>
<cbc:InvoiceTypeCode>380</cbc:InvoiceTypeCode>
<cbc:DocumentCurrencyCode>EUR</cbc:DocumentCurrencyCode>
<cbc:BuyerReference>OINNL00000123</cbc:BuyerReference>
<!-- Supplier — KvK Handelsregister identifier -->
<cac:AccountingSupplierParty>
<cac:Party>
<cbc:EndpointID schemeID="0106">12345678</cbc:EndpointID>
<cac:PartyIdentification>
<cbc:ID schemeID="0106">12345678</cbc:ID>
</cac:PartyIdentification>
<cac:PartyName>
<cbc:Name>Voorbeeld B.V.</cbc:Name>
</cac:PartyName>
<cac:PostalAddress>
<cbc:StreetName>Voorbeeldstraat 12</cbc:StreetName>
<cbc:CityName>Amsterdam</cbc:CityName>
<cbc:PostalZone>1011AA</cbc:PostalZone>
<cac:Country><cbc:IdentificationCode>NL</cbc:IdentificationCode></cac:Country>
</cac:PostalAddress>
<cac:PartyTaxScheme>
<cbc:CompanyID>NL123456789B01</cbc:CompanyID>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:PartyTaxScheme>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Voorbeeld B.V.</cbc:RegistrationName>
<cbc:CompanyID schemeID="0106">12345678</cbc:CompanyID>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingSupplierParty>
<!-- Customer — OIN (NL public administration) -->
<cac:AccountingCustomerParty>
<cac:Party>
<cbc:EndpointID schemeID="0190">00000001003214345000</cbc:EndpointID>
<cac:PartyName>
<cbc:Name>Ministerie van Economische Zaken</cbc:Name>
</cac:PartyName>
<cac:PartyLegalEntity>
<cbc:RegistrationName>Ministerie van Economische Zaken</cbc:RegistrationName>
<cbc:CompanyID schemeID="0190">00000001003214345000</cbc:CompanyID>
</cac:PartyLegalEntity>
</cac:Party>
</cac:AccountingCustomerParty>
<!-- IBAN mandatory if SEPA credit transfer -->
<cac:PaymentMeans>
<cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
<cac:PayeeFinancialAccount>
<cbc:ID>NL44RABO0123456789</cbc:ID>
<cbc:Name>Voorbeeld B.V.</cbc:Name>
<cac:FinancialInstitutionBranch>
<cbc:ID>RABONL2U</cbc:ID>
</cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
<!-- Taxation — 21% standard rate -->
<cac:TaxTotal>
<cbc:TaxAmount currencyID="EUR">525.00</cbc:TaxAmount>
<cac:TaxSubtotal>
<cbc:TaxableAmount currencyID="EUR">2500.00</cbc:TaxableAmount>
<cbc:TaxAmount currencyID="EUR">525.00</cbc:TaxAmount>
<cac:TaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21</cbc:Percent>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:TaxCategory>
</cac:TaxSubtotal>
</cac:TaxTotal>
<cac:LegalMonetaryTotal>
<cbc:LineExtensionAmount currencyID="EUR">2500.00</cbc:LineExtensionAmount>
<cbc:TaxExclusiveAmount currencyID="EUR">2500.00</cbc:TaxExclusiveAmount>
<cbc:TaxInclusiveAmount currencyID="EUR">3025.00</cbc:TaxInclusiveAmount>
<cbc:PayableAmount currencyID="EUR">3025.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>
<cac:InvoiceLine>
<cbc:ID>1</cbc:ID>
<cbc:InvoicedQuantity unitCode="C62">1</cbc:InvoicedQuantity>
<cbc:LineExtensionAmount currencyID="EUR">2500.00</cbc:LineExtensionAmount>
<cac:Item>
<cbc:Name>Consultancy Project Q2 2026</cbc:Name>
<cac:ClassifiedTaxCategory>
<cbc:ID>S</cbc:ID>
<cbc:Percent>21</cbc:Percent>
<cac:TaxScheme><cbc:ID>VAT</cbc:ID></cac:TaxScheme>
</cac:ClassifiedTaxCategory>
</cac:Item>
<cac:Price>
<cbc:PriceAmount currencyID="EUR">2500.00</cbc:PriceAmount>
</cac:Price>
</cac:InvoiceLine>
</Invoice>