Verify the format of EU, UK, Swiss, and Norwegian VAT registration numbers — country prefix, length, allowed characters — and run the checksum where a country defines one. 100% client-side: no VIES calls, so this confirms structural validity, not real-world registration. Use VIES separately to confirm the holder.
Paste one VAT number per line. Country is auto-detected from the prefix.
Format checks for all 30+ codes; ✓ = checksum-verified.
EU member states (plus the UK, Switzerland, and Norway) issue Value-Added Tax registration numbers in country-specific formats — Germany uses 9 digits after DE, France uses 2 alphanumeric check characters and 9 digits after FR, Spain mixes letters and digits after ES. Most countries embed a checksum so the number self-validates without a database lookup: Germany uses the same ISO 7064 MOD-11 variant used by IBAN bank accounts, France's two-letter prefix is (SIREN × 100 + key) mod 97, the Netherlands uses MOD-97 on an extended string, Italy uses a Luhn-like odd/even sum, and the UK uses the historical (Σweights × digit) mod 97 rule with an optional +55 branch. A passing checksum tells you the number was issued by something following the spec; it does not tell you the business is currently registered, that the name matches, or that the VAT rate is correct — for that you need the EU's VIES SOAP service or HMRC's UK API. Use this tool first to reject obvious typos at form-submit time, then call the registry for billable confirmation.