# EU e-invoicing matrix

> Which CIUS, which syntax and which CustomizationID each country needs, plus the
> legal mandate where we have a primary source for it.
> Maintained by Vera (https://vera-business.com). Generated 2026-08-26.

## Columns

- **CIUS, Syntax, CustomizationID, Buyer legal ID** are read from the invoice
  generator. The CustomizationID is the string Vera writes into BT-24.
- **B2B mandate** and **Channel** come from legislation. Each entry names its
  source and the date it was checked, listed under Sources.
- **_not verified_** means no primary source has been checked for that cell.

16 of the 27 EU member states have a
country-specific profile covering national fields, ID schemes and county codes.
The other 11 are marked *(EU default)* and run on generic
Peppol BIS 3.0. 4 non-EU countries (NO, IS, CH, GB)
have their own profile.

What Vera emits and what a country mandates can differ. Italy: Vera emits Peppol
BIS, the Italian mandate runs on FatturaPA through SdI.

## Scope

Vera generates EN16931 XML (UBL 2.1 and CII D16B) for the countries below and
validates it against the KoSIT schematron. VAT returns are prepared as files.

## Coverage

- EU member states: 27 (all generate)
  - with a country-specific profile: 16
  - on the generic EU Peppol BIS default: 11
- Non-EU countries with their own profile: 4 (NO, IS, CH, GB)
- Own CIUS beyond Peppol BIS: 5 (XRechnung, Factur-X, HR-CIUS, CIUS-RO, CIUS-PT)
- Rows with a sourced legal mandate: 3 of 31

## Matrix

| Code | Country | CIUS Vera generates | Syntax | CustomizationID (BT-24) | Buyer legal ID required | B2B mandate | Channel / clearing |
| --- | --- | --- | --- | --- | --- | --- | --- |
| AT | Austria | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| BE | Belgium | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | yes (KBO/BCE number) | _not verified_ | _not verified_ |
| BG | Bulgaria | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| CH | Switzerland *(non-EU)* | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | yes (Swiss UID) | _not verified_ | _not verified_ |
| CY | Cyprus | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| CZ | Czech Republic | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| DE | Germany | XRechnung | UBL | `urn:cen.eu:en16931:2017#compliant#urn:xeinkauf.de:kosit:xrechnung_3.0` | no | Receipt mandatory since 2025-01-01; issuing phased 2027-01-01 (>€800k turnover) and 2028-01-01 (all) | Decentralised, no clearing platform |
| DK | Denmark | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | yes (CVR number) | _not verified_ | _not verified_ |
| EE | Estonia | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| ES | Spain | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| FI | Finland | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| FR | France | Factur-X | CII | `urn:cen.eu:en16931:2017` | no | Receipt 2026-09-01 (all); issuing 2026-09-01 (large/mid) and 2027-09-01 (SME) | PDP (Plateforme de Dématérialisation Partenaire) + e-reporting |
| GB | United Kingdom *(non-EU)* | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| GR | Greece | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| HR | Croatia | HR-CIUS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:mfin.gov.hr:cius-2025:1.0#conformant#urn:mfin.gov.hr:ext-2025:1.0` | yes (OIB) | _not verified_ | _not verified_ |
| HU | Hungary | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| IE | Ireland | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| IS | Iceland *(non-EU)* | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | yes (Kennitala) | _not verified_ | _not verified_ |
| IT | Italy | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | Mandatory since 2019-01-01 (derogation extended to 2027-12-31) | SdI (Sistema di Interscambio) clearing |
| LT | Lithuania | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| LU | Luxembourg | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| LV | Latvia | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| MT | Malta | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| NL | Netherlands | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | yes (KVK number) | _not verified_ | _not verified_ |
| NO | Norway *(non-EU)* | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | yes (Organisasjonsnummer) | _not verified_ | _not verified_ |
| PL | Poland | PEPPOL-BIS *(EU default)* | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| PT | Portugal | CIUS-PT | UBL | `urn:cen.eu:en16931:2017#compliant#urn:feap.gov.pt:CIUS-PT:2.1.1` | no | _not verified_ | _not verified_ |
| RO | Romania | CIUS-RO | UBL | `urn:cen.eu:en16931:2017#compliant#urn:efactura.mfinante.ro:CIUS-RO:1.0.1` | no | _not verified_ | _not verified_ |
| SE | Sweden | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| SI | Slovenia | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |
| SK | Slovakia | PEPPOL-BIS | UBL | `urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0` | no | _not verified_ | _not verified_ |

## ViDA (EU-wide, not per country)

- Adopted: 2025-03 (EU Council)
- Digital Reporting Requirements in force: **2030-07-01**
- Digital Reporting Requirements: real-time reporting + mandatory structured e-invoicing for cross-border intra-EU B2B.

## Sources

### DE - Germany
- B2B mandate: Receipt mandatory since 2025-01-01; issuing phased 2027-01-01 (>€800k turnover) and 2028-01-01 (all)
  - source: Wachstumschancengesetz, §14 UStG n.F. (checked 2026-08-26)
- Channel: Decentralised, no clearing platform
  - source: BMF-Schreiben 15.10.2024 (checked 2026-08-26)
- VAT return: UStVA (monthly/quarterly), ELSTER
  - source: §18 UStG (checked 2026-08-26)

### FR - France
- B2B mandate: Receipt 2026-09-01 (all); issuing 2026-09-01 (large/mid) and 2027-09-01 (SME)
  - source: Loi de finances 2024, art. 91 (checked 2026-08-26)
- Channel: PDP (Plateforme de Dématérialisation Partenaire) + e-reporting
  - source: DGFiP (checked 2026-08-26)
- VAT return: CA3 (monthly) / CA12 (annual)
  - source: DGFiP (checked 2026-08-26)

### IT - Italy
- B2B mandate: Mandatory since 2019-01-01 (derogation extended to 2027-12-31)
  - source: Legge di Bilancio 2018; Council Decision (EU) 2023/1552 (checked 2026-08-26)
- Channel: SdI (Sistema di Interscambio) clearing
  - source: Agenzia delle Entrate (checked 2026-08-26)
- VAT return: LIPE (quarterly) + Dichiarazione IVA (annual)
  - source: Agenzia delle Entrate (checked 2026-08-26)

## Machine access

- This file: https://vera-business.com/ai/eu-e-invoicing-matrix.md
- Human version: https://vera-business.com/eu-e-invoicing
- MCP server (your own invoices and expenses, needs an API key):
  https://api.vera-business.com/mcp
- Free e-invoice validator: https://vera-business.com/validator

## Corrections

A wrong row here is worse than a missing one. If a cell is out of date, write to
hello@vera-business.com with the primary source and it gets fixed and re-dated.
