# EU VAT ID Number Formats by Country for ERP Customer and Supplier Validation

> Source: https://netray.co/tools/eu-vat-id-number-format-reference
> Publisher: Netray (netray.co), AI and integration engineering for ERP and manufacturing systems.
> Section: Free Tools

## Short answer

Format patterns for EU VAT numbers by country, ready to turn into validation rules in your customer and supplier master.

## Category

regional

## Region

European Union

## Audience

- ERP consultant
- Master data specialist
- Finance controller

## Tool

**Kind:** worksheet

**Mode:** reference

**Columns:**

#### Country

**Key:** country

**Type:** text

#### Prefix

**Key:** prefix

**Type:** text

#### Structure after prefix

**Key:** structure

**Type:** text

#### Digits/characters

**Key:** length

**Type:** text

#### Pattern example

**Key:** example

**Type:** text

**Rows:**

**Country:** Austria

**Prefix:** ATU

**Structure:** 8 digits

**Length:** 8

**Example:** ATU12345678

**Country:** Belgium

**Prefix:** BE

**Structure:** 10 digits starting 0 or 1

**Length:** 10

**Example:** BE0123456789

**Country:** Bulgaria

**Prefix:** BG

**Structure:** 9 or 10 digits

**Length:** 9-10

**Example:** BG123456789

**Country:** Croatia

**Prefix:** HR

**Structure:** 11 digits

**Length:** 11

**Example:** HR12345678901

**Country:** Cyprus

**Prefix:** CY

**Structure:** 8 digits then 1 letter

**Length:** 9

**Example:** CY12345678X

**Country:** Czechia

**Prefix:** CZ

**Structure:** 8, 9 or 10 digits

**Length:** 8-10

**Example:** CZ12345678

**Country:** Denmark

**Prefix:** DK

**Structure:** 8 digits

**Length:** 8

**Example:** DK12345678

**Country:** Estonia

**Prefix:** EE

**Structure:** 9 digits

**Length:** 9

**Example:** EE123456789

**Country:** Finland

**Prefix:** FI

**Structure:** 8 digits

**Length:** 8

**Example:** FI12345678

**Country:** France

**Prefix:** FR

**Structure:** 2 check characters then 9 digit SIREN

**Length:** 11

**Example:** FR12345678901

**Country:** Germany

**Prefix:** DE

**Structure:** 9 digits

**Length:** 9

**Example:** DE123456789

**Country:** Greece

**Prefix:** EL

**Structure:** 9 digits

**Length:** 9

**Example:** EL123456789

**Country:** Hungary

**Prefix:** HU

**Structure:** 8 digits

**Length:** 8

**Example:** HU12345678

**Country:** Ireland

**Prefix:** IE

**Structure:** 8 or 9 characters with letters

**Length:** 8-9

**Example:** IE1234567X

**Country:** Italy

**Prefix:** IT

**Structure:** 11 digits

**Length:** 11

**Example:** IT12345678901

**Country:** Latvia

**Prefix:** LV

**Structure:** 11 digits

**Length:** 11

**Example:** LV12345678901

**Country:** Lithuania

**Prefix:** LT

**Structure:** 9 or 12 digits

**Length:** 9 or 12

**Example:** LT123456789

**Country:** Luxembourg

**Prefix:** LU

**Structure:** 8 digits

**Length:** 8

**Example:** LU12345678

**Country:** Malta

**Prefix:** MT

**Structure:** 8 digits

**Length:** 8

**Example:** MT12345678

**Country:** Netherlands

**Prefix:** NL

**Structure:** 9 digits, letter B, 2 digits

**Length:** 12

**Example:** NL123456789B01

**Country:** Poland

**Prefix:** PL

**Structure:** 10 digits (NIP)

**Length:** 10

**Example:** PL1234567890

**Country:** Portugal

**Prefix:** PT

**Structure:** 9 digits

**Length:** 9

**Example:** PT123456789

**Country:** Romania

**Prefix:** RO

**Structure:** 2 to 10 digits

**Length:** 2-10

**Example:** RO1234567890

**Country:** Slovakia

**Prefix:** SK

**Structure:** 10 digits

**Length:** 10

**Example:** SK1234567890

**Country:** Slovenia

**Prefix:** SI

**Structure:** 8 digits

**Length:** 8

**Example:** SI12345678

**Country:** Spain

**Prefix:** ES

**Structure:** 9 characters, letter or digit at start and end

**Length:** 9

**Example:** ESX1234567X

**Country:** Sweden

**Prefix:** SE

**Structure:** 10 digits then 01

**Length:** 12

**Example:** SE123456789001

**Notes:** Patterns are formal length and character rules only. A number that matches the pattern can still be invalid or unregistered. Always confirm the status in the EU VIES service before you apply a zero rate on an intra-community supply. Examples are fictitious. Northern Ireland uses prefix XI for goods; check the current rules before using it.

## Content

**Intro:** Every cross-border B2B invoice in the EU depends on a valid VAT ID in the customer master. This reference shows the structure and length of the VAT number for each member state, so you can build validation rules that catch typing errors at the time of entry rather than at the VAT audit.

**Sections:**

#### How to use the table

**Body:** Filter by country, then copy the structure into your validation rule. A simple rule has three parts: the prefix must equal the country of the address, the remaining characters must match the length and character class, and the number must pass a VIES lookup before the first zero rated order is released. Export the table to Excel to keep it next to your data cleansing plan when you migrate customers from an old system into abas, proALPHA, Exact, Visma, IFS or Priority.

#### Pattern check versus real validation

**Body:** A pattern check only proves that the number looks plausible. VIES, the European Commission lookup service, confirms that the number is registered for intra-community transactions at the time of the query. Some national systems also check a modulus control digit, which you can add as a second layer. For audit purposes, store the VIES consultation result with the date and the request identifier, because tax authorities in several countries expect proof that you checked.

#### Country specific traps

**Body:** Germany has both a USt-IdNr, which starts with DE, and a national tax number, which looks different and must not be used for intra-community supplies. The Netherlands has a separate BTW-nummer ending in B and a two digit suffix, which differs from a company registration number. France builds the VAT number from a check key and the nine digit SIREN. Spain and Ireland allow letters inside the number, so a numeric-only rule will reject valid customers.

**Bullets:**

- Do not mix tax numbers and VAT IDs in the same field.
- Allow letters for Spain, Ireland and Cyprus.
- Handle Greece as EL, not GR.
- Strip spaces and dots before validation, then store a clean value.

#### Common mistakes

**Body:** Frequent errors include storing the VAT ID without its prefix, validating only the length, and relying on a one time check at customer creation. A customer can lose its registration later, so schedule periodic revalidation for active customers, and always revalidate before a large zero rated shipment. Keep the result of each check on the customer record.

**Cta:** If your customer master has thousands of unchecked VAT numbers, Netray can run a read-only validation pass over a data extract and give you an exception list to clean up before migration.

**Faq:**

#### Can I rely on the pattern alone for a zero rated sale?

**Answer:** No. The pattern only confirms the format. For an intra-community supply you should confirm the number in VIES on or near the invoice date and keep the evidence. Authorities in many countries can deny the exemption if the customer number was invalid.

#### Why do Spanish and Irish numbers contain letters?

**Answer:** Both countries use alphanumeric identifiers. Spanish numbers typically begin or end with a letter, and Irish numbers include one or two letters in the structure. A rule that allows digits only will wrongly reject valid customers.

#### Does the prefix count as part of the number?

**Answer:** In invoicing and VIES queries the country prefix is part of the displayed VAT ID. Many ERPs store the prefix and the number in separate fields, which is fine as long as the invoice prints them together.

#### How do I handle UK and Swiss customers?

**Answer:** They are outside the EU VAT system and VIES does not cover them. Use their national registration formats and treat sales as exports, with the documentation your customs and tax advisers require.

## Search terms

eu vat number format, vat id format by country, vat number validation regex, vies vat number format, customer master vat validation, ust idnr format, intra community vat number check, erp vat id validation

---
Talk to an engineer: https://netray.co/contact?intent=erp_ai | Machine catalog: https://netray.co/agent/catalog.json
