HomeValidatorsFinance & Global IDsVAT Number Validator

VAT Number Validator

Finance & Global IDs

Validate VAT numbers for all 27 EU countries plus UK, Norway, and Switzerland. Per-country format rules with checksum for DE and NL. Instant, browser-only.

Reviewed by the thecalcu.com team · Last updated July 31, 2026

What is a VAT?

The VAT Number Validator checks whether a VAT (Value Added Tax) registration number follows the official format for its issuing country. It covers all 27 EU member states, the United Kingdom (GB), Northern Ireland for EU purposes (XI), Norway (NO), and Switzerland (CHE), 30 country formats in total.

VAT numbers are the primary identifier used in European B2B commerce. They appear on invoices, customs documents, and intra-EU supply declarations. Every country uses its own format, Germany's is 11 characters starting with DE and ending in a checksum digit; the Netherlands always contains a B in the middle; Sweden uses 14 characters; Ireland has letters embedded in the middle of the number. This diversity makes VAT number validation non-trivial: a single regex cannot cover all countries.

This validator uses a per-country dispatch table, applying the specific format rule for whichever country the prefix identifies. For Germany and the Netherlands, it also verifies the checksum digit, a mathematical property embedded in the number that detects most single-digit transcription errors.

What this validator does not check: whether the number is currently registered or active with the issuing tax authority. Format and checksum validation only, it cannot confirm registration status. For a live check against tax authority records, use the European Commission's VIES system directly.

For related financial identifier validation, use the IBAN Validator for bank account numbers or the GST Validator for India's equivalent of VAT.

Why Use a VAT Number Validator?

VAT numbers are entered in ERP systems, e-commerce checkout flows, customs declarations, and B2B invoice systems. An incorrectly formatted VAT number causes invoice rejection by the recipient's accounts payable team, failed VIES lookups, and potential VAT liability issues if zero-rated intra-EU supplies are invoiced without a valid counterparty VAT number.

The most common errors are: wrong country prefix (GR instead of EL for Greece), missing a character (Germany requires exactly 9 digits after DE), incorrect placement of the B in a Dutch number, or including punctuation characters like dots or hyphens that some countries print in their official format but omit from the electronic number.

Who Should Use This Validator?

Finance and accounts payable teams, Verifying VAT numbers on supplier invoices before payment is a standard control in European accounting. A format check is the first gate before running a live VIES lookup.

E-commerce platforms handling EU B2B sales, Online stores that offer VAT exemption for verified business customers need to validate the format of submitted VAT numbers before applying zero-rate pricing and before confirming against VIES.

Developers building European invoicing or ERP integrations, Any application that collects, stores, or transmits VAT numbers needs client-side format validation. This tool documents the exact format rule for all 30 supported countries.

Import/export and customs teams, Cross-border shipments within the EU and to/from the UK and Switzerland require VAT numbers on documentation. A format check prevents paperwork errors at the customs stage.

Freelancers and consultants working with EU clients, Independent contractors who invoice EU businesses need to collect and verify their client's VAT number to issue a correct reverse-charge invoice.

What Insights Does the VAT Number Validator Give You?

The validator identifies the country from the prefix and names it, confirms whether the format matches the country's specification, and, for Germany and the Netherlands, reports whether the checksum passed or failed.

Where no checksum is available, the tool states this explicitly rather than implying full verification. This scoping is important for compliance: format validity is a necessary but not sufficient condition for a VAT number being registered and active.

How to use this VAT calculator

  1. Type or paste the VAT number into the input field, including the 2-letter country prefix (e.g. DE123456789, GB123456789, FR12345678901).
  2. Spaces and dots are stripped automatically, entering CHE-123.456.789 works the same as CHE123456789.
  3. The result updates automatically as you type.
  4. Check the Valid or Invalid badge.
  5. If Invalid, the error message names the country, states the expected format, and gives an example.
  6. If Valid, the details show the country name, format description, and checksum status.

Formula & Methodology

Each country has a fixed format rule. Selected rules:

| Country | Prefix | Format | Length | Checksum |
|---|---|---|---|---|
| Germany | DE | DE + 9 digits | 11 | Yes, mod 11 |
| France | FR | FR + 2 alphanum + 9 digits | 13 | No |
| Netherlands | NL | NL + 9 digits + B + 2 digits | 14 | Yes, mod 11 |
| UK | GB | GB + 9 digits (standard) | 11 | No |
| Sweden | SE | SE + 12 digits | 14 | No |
| Italy | IT | IT + 11 digits | 13 | No |
| Spain | ES | ES + alphanum + 7 digits + alphanum | 11 | No |
| Greece | EL | EL + 9 digits | 11 | No |
| Switzerland | CHE | CHE + 9 digits + optional MWST/TVA/IVA | 12–16 | No |

German checksum algorithm (Doppelter Fakultätsalgorithmus):
Iterates over digits 1–8. At each step: sum = (digit + product) mod 10; if sum is 0, set to 10. product = (2 × sum) mod 11. After 8 digits, check digit = 11 - product (or 0 if result is 1).

Dutch checksum: Multiply digits 1–8 of the 9-digit block by weights 9–2, sum the products, compute remainder mod 11. Check digit equals the remainder (0 if > 9).

Valid examples:
- DE123456789, Germany, passes if checksum digit is correct
- NL123456789B01, Netherlands, passes if 9-digit block checksum is correct
- GB123456789, UK, format only
- EL123456789, Greece (not GR)

Invalid examples:
- GR123456789, wrong prefix for Greece (should be EL)
- FR1234567890, France requires 2 alphanumeric chars then 9 digits (13 total); this is 12
- NL12345678B01, Netherlands requires 9 digits before B, not 8

Related Tools

You may also find these useful: PAN Number Validator.

Frequently Asked Questions

A VAT (Value Added Tax) number is a unique identifier assigned by a country's tax authority to businesses registered for VAT. It is used in commercial invoices, customs declarations, and inter-business (B2B) transactions to identify taxable entities and to allow businesses to reclaim VAT paid on their purchases. In the EU, VAT numbers are issued by each member state's tax administration and follow country-specific formats.
This validator covers all 27 EU member states (Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Ireland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden) plus the United Kingdom (GB), Northern Ireland for EU purposes (XI), Norway (NO), and Switzerland (CHE). Each country's VAT number format is validated against its official specification.
Every EU VAT number begins with a 2-letter country code (the EU standard ISO 3166-1 alpha-2 country code, except Greece which uses EL instead of GR). The length and structure of the digits that follow vary significantly by country, from 8 digits for Finland (FI12345678) to 12 digits for Sweden (SE123456789012). Some countries include letters within the number, such as the Netherlands which always has 'B' in the middle (NL123456789B01).
The EU VAT system uses EL for Greece rather than GR (the standard ISO 3166-1 alpha-2 code) for historical reasons. When the VAT identification system was standardised, Greece's code was derived from the Greek name of the country (Ellada / Ελλάδα), leading to EL. This is the only EU country whose VAT prefix differs from its ISO 3166-1 country code. Entering GR instead of EL is one of the most common mistakes when validating Greek VAT numbers.
No. This tool validates the structural format and, for Germany and the Netherlands, the checksum digit. It does not query the EU's VIES (VAT Information Exchange System) or any national tax authority database. A format-valid VAT number may belong to a business that has deregistered, been dissolved, or never existed. For authoritative VAT registration checks, use the EU VIES portal at ec.europa.eu/taxation_customs/vies.
VIES (VAT Information Exchange System) is the EU's official online portal for verifying whether a VAT number is currently registered and active in any EU member state. It is operated by the European Commission and is the authoritative source for confirming a trading partner's VAT registration before issuing invoices with zero-rated VAT for B2B cross-border supplies. This validator checks format only, use VIES for live registration confirmation.
Several EU countries embed a checksum digit in their VAT numbers that allows mathematical verification without querying a database. This validator implements checksums for Germany (DE) and the Netherlands (NL), which are the largest EU economies and most frequently encountered in international trade. Other countries with documented checksums include Austria, Belgium, Spain, and Italy, but their algorithms have additional complexity or edge cases that make a general-purpose implementation error-prone; for those, this tool validates format only.
UK VAT numbers use the prefix GB and consist of 9 digits (standard), 12 digits (branch traders), or a special format starting with GD (government departments) or HA (health authorities) followed by 3 digits. After Brexit, the UK is no longer in the EU VAT system for Great Britain, but Northern Ireland continues to use the EU VAT system for goods (not services) and uses the prefix XI instead of GB for those purposes.
Swiss VAT numbers use the prefix CHE (not CH) and consist of 9 digits followed by an optional suffix indicating the language: MWST (German), TVA (French), or IVA (Italian). For example: CHE-123.456.789 MWST. This validator accepts the number with or without dots as separators. Switzerland is not an EU member but has its own VAT system and the CHE prefix is widely used in European cross-border trade.
No. All validation runs in your browser. The VAT number you enter is never sent to any server, stored, or shared with any third party. The tool continues to work without an internet connection once the page has loaded.
A format-valid number that fails VIES can mean the business has deregistered from VAT, the number was never issued (structurally plausible but not assigned), the VIES database has a temporary outage (the system is not always 100% reliable), or there is a mismatch in punctuation between how the number is stored in the national database and how it was entered. If the number is important for a transaction, contact the business directly to confirm their VAT registration.
Also known as
EU VAT number checkerVAT registration number validatorcheck VAT number formatEuropean VAT validatorVAT number format checkUK VAT number validator