How to Check if an EU VAT Number Is Valid (VIES Guide)

First, the misconception worth clearing up: you don't generate a VAT number. It's issued by your national tax authority when your business registers for VAT. Any tool that claims to "generate" one is producing a fake — and using a fabricated VAT number on an invoice is fraud. What you genuinely need is the opposite: a reliable way to check whether a client's VAT number is real before you rely on it.

Here's how to do that properly.

What an EU VAT number is

A VAT identification number is the registration that marks a business as VAT-registered in its country. The format is a two-letter country code followed by the national number — for example NL004321987B12 (Netherlands), DE123456789 (Germany), or FR12345678901 (France). The pattern varies by member state.

Why you need to check it

Your client's VAT number drives how you invoice them. If it's valid, you can treat the transaction as B2B — and for a cross-border EU supply, apply reverse charge. If it's missing or invalid, you treat them as a consumer and charge your domestic VAT rate. Get this wrong and the cost lands on you: issue a reverse-charge invoice to someone who isn't actually registered, and you can be left liable for the VAT.

VIES: the authoritative check

VIES (VAT Information Exchange System) is the European Commission's free service for verifying VAT numbers across all member states. It's the only system that authoritatively confirms whether a number is registered and active. For a valid ID it returns the registered business name and country; for an invalid one, an error.

How to check a number with VIES

  1. Select the client's member state (the country code).
  2. Enter the VAT number without the country prefix.
  3. Submit. VIES returns valid or invalid, and the registered name/country for a valid result.
  4. Keep a record of the result and the date — this is your evidence at audit time.

Why a format check isn't enough

It's tempting to validate with a regular expression — "starts with NL, has the right length." That only tells you the number looks plausible. It cannot tell you whether the number exists, is active, or belongs to the business you're dealing with. A typo that still matches the format passes a regex and fails reality. Only VIES closes that gap.

Limitations to know about

  • Outages happen. VIES depends on each member state's system being reachable, and occasionally one is down. Don't make live invoicing strictly dependent on its uptime — cache valid results and re-check periodically.
  • Name/address aren't always returned. Some countries return only validity, not the full registered details.
  • Validity changes over time. A number valid last quarter can be deregistered. Re-check shortly before issuing an invoice that depends on it.

A reliable workflow

  1. Capture the client's country and VAT number when you first add them.
  2. Validate against VIES immediately — not at the moment you're about to invoice.
  3. Cache the result (valid for a while, invalid for a short while) and re-verify before issuing.
  4. If valid and it's a cross-border EU B2B supply, apply reverse charge with the correct clause.
  5. Record what was checked and when, so the decision is defensible later.

How Plain Statement handles it

When you save a client with an EU VAT ID, Plain Statement checks it against VIES in the background and shows a coloured badge under the tax-ID field — green for verified, red for invalid, amber while unverified. Results are cached (90 days for valid IDs, seven days for invalid ones) so you re-verify before issuing without hammering the service. When a verified client lines up as a cross-border EU B2B supply, the editor offers one-click reverse charge with the correct statutory clause. VIES validation is part of the Basic plan.

Frequently asked questions

Can I generate an EU VAT number?

No. A VAT number isn't something you generate — it's issued by your national tax authority when your business registers for VAT. Anything that "generates" a VAT number is producing a fake; using one is fraud. What you can do is check whether a real number is valid.

How do I check if an EU VAT number is valid?

Validate it against VIES (the EU VAT Information Exchange System), the European Commission's free service. Enter the member-state code and the number; VIES returns whether it's registered and active, plus the registered business name and country for a valid ID.

Why isn't a format check enough?

A format check only confirms a number looks plausible — right country prefix, right length. It can't tell you whether the number actually exists or belongs to the business in front of you. Only VIES confirms the number is real and active.

What if VIES says a VAT number is invalid?

Treat the client as not VAT-registered: don't apply reverse charge, and charge your domestic VAT rate unless they can provide a number that VIES confirms. Re-check shortly before issuing, since registrations and VIES availability can change.

Create an EU VAT-compliant invoice with built-in VIES validation — free to start, no account required.

Create a VAT Invoice Free