EU VAT Number Validator (VIES) + Bulk Check

Two checks in one place: an instant offline test of the format and national check digit, then the official VIES lookup that tells you whether the number is actually registered for intra-EU trade - with the trader's name and address where the member state discloses them.

The format and check-digit test runs entirely in your browser. Only if you ask for the official VIES lookup is the number passed to the European Commission's register - nothing is stored on our side.

Greek numbers use the EL prefix, not GR - both are accepted here.

Enter a VAT number

You get an instant offline verdict on the format and national check digit, then an optional live lookup in the official EU VIES register for the trader's name and address.

Why two different checks?

A VAT number can fail in two completely different ways, and confusing them costs real money. It can be malformed - the wrong length, the wrong shape, or a check digit that doesn't add up, which almost always means a typo. Or it can be perfectly well-formed but not registered, meaning the business never had it, or has since been deregistered.

The offline test catches the first kind instantly, with no network round-trip. Fifteen member states publish a check-digit algorithm, and this tool implements all of them: Austria (Luhn), Belgium (mod 97), Germany (ISO 7064 mod 11,10), Denmark, Greece, Spain (mod 23 for personal NIFs, a Luhn variant for company CIFs), Finland, France (the DGFiP key over the SIREN), Italy (Luhn plus a province-code sanity check), Luxembourg (mod 89), the Netherlands (the BSN elfproef or ISO 7064 mod 97,10 for numbers issued since 2020), Poland, Portugal, Sweden and Slovenia. The remaining countries publish no algorithm, so those get a format check only.

Only VIES - the European Commission's VAT Information Exchange System - can answer the second question, because it queries each member state's own live register. That is the check that matters for zero-rating an intra-EU B2B invoice, and the one a tax auditor will expect you to have run.

About the VIES lookup

VIES doesn't send CORS headers, so a browser cannot call it directly. This page routes the single lookup through our own server, which forwards it to the Commission and returns the answer. No API key is involved, nothing is stored, and the number is used only for that one request.

Preguntas frecuentes

Wie kann ich eine USt-IdNr kostenlos prüfen?

USt-IdNr eingeben - zuerst wird die Prüfziffer nach ISO 7064 (Modulo 11,10) sofort im Browser geprüft, danach können Sie die Nummer im offiziellen VIES-Register der EU-Kommission abfragen. Beachten Sie: Deutschland gibt aus Datenschutzgründen keinen Firmennamen an VIES weiter, daher zeigt die Abfrage nur gültig oder ungültig. Für eine qualifizierte Bestätigungsanfrage mit Namen und Anschrift nutzen Sie das BZSt-Portal.

Comment vérifier un numéro de TVA intracommunautaire ?

Saisissez le numéro : la clé de contrôle française (calculée à partir du SIREN) est vérifiée instantanément dans votre navigateur, puis vous pouvez interroger le registre officiel VIES pour obtenir le nom et l'adresse de l'entreprise. Un numéro de TVA français comporte FR, deux caractères de clé, puis les 9 chiffres du SIREN.

Come si verifica una partita IVA su VIES?

Inserisci la partita IVA (11 cifre): il codice di controllo Luhn e il codice provincia vengono verificati subito nel browser, poi puoi interrogare il registro ufficiale VIES per ottenere denominazione e indirizzo. Ricorda che una partita IVA italiana valida può non essere iscritta al VIES: l'iscrizione agli scambi intracomunitari va richiesta separatamente all'Agenzia delle Entrate.

Can I bulk validate VAT numbers?

Yes - paste up to 50 per run, as a plain list or a CSV/TSV where the VAT column is detected automatically. Every row gets the offline format and checksum verdict immediately, then each valid-looking number is checked against VIES one at a time with a live progress bar. Malformed numbers are skipped rather than wasting a VIES request. The results table, including trader names, exports to CSV.

Why only 50 at a time?

VIES rate-limits aggressively and will start refusing requests if hit too fast. This tool deliberately queries one number at a time with a short pause between them, which keeps you inside the limits. For larger lists, run several batches - or check the format offline first (that part has no limit at all) and only send the plausible ones to VIES.

VIES says "MS unavailable" - is the VAT number invalid?

No. That means the member state's own register was offline or rate-limiting when VIES asked, so no answer exists yet. It's an availability problem, not a verdict. This tool shows those rows as "Unavailable" in amber rather than marking them invalid. Retry in a few minutes; national registers are frequently down outside EU office hours and on weekends.

Why is the trader name blank for a valid German or Spanish VAT number?

Some member states - Germany and Spain among them - never disclose the trader's name and address through VIES for data-protection reasons. VIES returns only valid or invalid for those countries. That's a limitation of the source data, not of this tool. Germany offers a separate qualified confirmation service through the BZSt for businesses that need the name on record.

Should I use EL or GR for Greek VAT numbers?

VIES uses EL, not the ISO country code GR. This tool accepts either and converts GR to EL automatically, so a pasted list with a mix of both still works.

Is a valid check digit enough to zero-rate an invoice?

No. To zero-rate an intra-EU B2B supply you need evidence the customer's VAT number was valid in VIES at the time of supply. A correct check digit only proves nobody mistyped it. Always run the VIES lookup and keep a record of the date - many tax authorities expect exactly that.

Is my VAT number stored anywhere?

The offline format and checksum test never leaves your browser. If you choose to run the VIES lookup, the number is passed through our server to the European Commission for that one request and is not logged or stored. Nothing about your list is retained after the response comes back.

Herramientas relacionadas