VAT number format checker

Paste a VAT number and the checker strips the punctuation, works out the country from the prefix and tells you whether the structure matches. It does not confirm the number is registered — only VIES can do that, and there is a link below.

Paste it as you received it — spaces, dots and hyphens are ignored.

Country
Normalised
Expected format
Checksum

Check registration in VIES

Rates last verified: 2026-08-16
Formats follow the published national patterns. Some countries issue more than one shape of number, so a structural mismatch is a strong hint rather than proof of error.
How these figures are checked

PrefixPLNational part526025027Check digit4Country comes from the prefix, not the flagVerified for Poland
The prefix names the country, the rest follows a national pattern.

What this checks — and what it does not

There are three separate questions about any VAT number, and they are often confused:

  1. Is it shaped correctly? The right prefix, the right length, digits and letters in the right positions. That is what this page answers, instantly and offline.
  2. Does it exist? Whether the tax authority has actually issued it. Only VIES knows.
  3. Is it valid for intra-EU trade today? A number can exist and still not be authorised for cross-border transactions. Again, VIES.

Use this to catch the transcription error in seconds, then confirm the real ones in VIES. Most rejected numbers never make it past step one.

Greece is EL, not GR

This single detail causes more failed validations than anything else. The ISO country code for Greece is GR, but its VAT prefix is EL. Systems that build the number from a country field produce GR123456789, and VIES rejects it every time.

A few other quirks worth knowing: Austria puts a U after the prefix, the Netherlands has a B before the last two digits, and Swedish numbers end in 01. None of these are optional.

Why the customer’s number is your problem

When you sell B2B to another member state under the reverse charge, you invoice without VAT on the strength of your customer’s VAT number. If that number turns out not to have been valid, the exemption can be denied — and the VAT is then reclaimed from you, not from the customer who gave you the wrong number.

That is why validation is treated as part of the transaction rather than administrative tidiness. VIES issues a consultation number when you check; storing it is what proves you exercised due care if the customer’s registration is later found to have lapsed.

Check at the time of supply, not once when the customer was onboarded. Registrations get cancelled.

The usual mistakes

  • The prefix left in the number field. Some systems want the country and the digits separately; pasting the whole thing gives you DEDE123456789.
  • A national tax number used instead of the VAT number. They are often different identifiers with different lengths — a German company has both a Steuernummer and a USt-IdNr., and only the latter works across borders.
  • Leading zeros dropped by a spreadsheet. Belgian numbers begin with a zero, and Excel removes it the moment the column is treated as a number.
  • Letters that look like digits. A capital O in place of a zero survives copy-paste and fails validation silently.

VAT number formats in the EU

VAT number formats in the EU
Country Prefix Example
Austria AT ATU12345678
Belgium BE BE0123456789
Bulgaria BG BG123456789
Croatia HR HR12345678901
Cyprus CY CY12345678L
Czechia CZ CZ12345678
Denmark DK DK12345678
Estonia EE EE123456789
Finland FI FI12345678
France FR FRXX123456789
Germany DE DE123456789
Greece EL EL123456789
Hungary HU HU12345678
Ireland IE IE1234567L
Italy IT IT12345678901
Latvia LV LV12345678901
Lithuania LT LT123456789
Luxembourg LU LU12345678
Malta MT MT12345678
Netherlands NL NL123456789B01
Poland PL PL1234567890
Portugal PT PT123456789
Romania RO RO1234567890
Slovakia SK SK1234567890
Slovenia SI SI12345678
Spain ES ESX1234567X
Sweden SE SE123456789001

Frequently asked questions

No. It means the number could exist. Whether it does, and whether it is authorised for intra-EU trade, is only answerable through VIES.

Common causes: the trader is registered domestically but not for intra-EU transactions, the registration has been cancelled, or the national database is temporarily unreachable — VIES queries each member state live, so an outage in one country looks like an invalid number.

For Poland, yes — the NIP checksum is calculated, which catches transposed digits that pass a length check. Other countries use their own algorithms; this page verifies their structure only and says so in the result.

Yes, if you rely on the reverse charge. VIES returns a consultation number for each query; storing it with the invoice is the standard evidence that you verified the customer at the time of supply.

No. The format check runs entirely in your browser. Opening VIES is a separate step you take yourself.

Official sources

Related tools