VAT number check (VIES check)
Type an EU VAT number (the two-letter country prefix included, spaces or dots allowed) and this page asks the European Commission’s VIES whether it is registered right now. The answer shows whether the number is valid, the name and address the member state publishes, the date, and where the answer came from: VIES live, or a dated cached answer, marked as such, when a member state is down. Each result explains what it means, links to the country’s format page and can be shared by link (?vat=). 20 free checks a day per address; a free key gives 100 a month. Auf Deutsch: USt-IdNr. prüfen.
Check a VAT number
- The same check your invoicing system would make: the structure and the national check digit first (an impossible number never reaches VIES), then VIES through the Commission’s REST endpoint, with its SOAP service as fallback.
- Every answer says where it came from:
live(VIES answered during the request) orcachewithstale: trueand the date it was obtained (the member state did not answer; cached answers are kept 30 days). - Some member states publish no name or address through VIES (Germany, Spain for most companies): the fields are then empty although the number is valid.
- Evidence: with a key on a paid tier, the
requesteroption returns the VIES consultation number, the reference a tax audit accepts as proof that you checked the number on that day.
What "valid" means, and what it does not
A valid answer means the member state’s register listed the number as active for intra-EU trade at the moment VIES was asked. It does not say who the company is beyond the published name, and it does not say that the customer in front of you is that company. For zero-rating an intra-EU supply, tax administrations expect the number to have been checked and the check to be kept: the date of this answer, the name and the consultation number (paid tiers) are that record.
An invalid answer is a normal answer, not an error. It happens for a number that is not registered for VAT, a number registered for domestic VAT only (some states, notably Spain and Italy, require a separate registration for intra-EU trade), a number that has been deactivated, or a typo. Northern Ireland numbers use the XI prefix and are in VIES for goods only.
What each result means
| Result | What it means | What to do |
|---|---|---|
| Valid (live) | The member state’s register listed the number as active for intra-EU trade when VIES was asked; the name and address are what it publishes. | Keep the dated answer with the invoice or the customer record; on a paid tier, add the VIES consultation number. |
| Valid (cached, stale) | The member state did not answer; the answer is the one obtained on the date shown, from the last 30 days. | Decide per transaction whether a dated answer is enough; retry when the state is back (VIES status). |
| Not registered for VAT | VIES answered: the register does not list the number for intra-EU trade today. A normal answer, not an error. | Check for a typo, a domestic-only registration (Spain, Italy) or a deactivated number; ask for the number as printed on the customer’s invoices. |
| Cannot be a VAT number | The structure or the national check digit fails for that country; VIES was not asked and nothing was counted. | Check the prefix (Greece is EL, Northern Ireland XI) and the digits against the country’s format page. |
| No answer | VIES or the member state is down and no cached answer exists for this number (503, not counted). | Retry after the delay shown; the VIES status page says which states are down and for how long. |
Which countries
The 27 member states plus Northern Ireland (AT, BE, BG, CY, CZ, DE, DK, EE, EL, ES, FI, FR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK, XI). Greece uses the prefix EL, not GR. The United Kingdom is not in VIES since 2021: check a UK VAT number with HMRC. Switzerland and Norway have their own registers.
Share a result by link
Add ?vat= and the number to this page’s address (the result shows a ready-made link with a copy button): the page explains the number’s structure on the server and re-runs the VIES check when the link is opened. Nothing about the result is stored; a shared link is a shared question, not a stored answer.
For developers: the same answer in your code
This page calls GET https://veriport.io/api/v1/vat/validate from your browser with no key. The same call, with a free key, gives 100 checks a month at 2 requests a second; the reference, the OpenAPI document and snippets in six languages are on the product page.
Questions
- Is this the official VIES check?
- No. Veriport is published by Janolab Studio LLC and calls the Commission’s VIES on your behalf; the official page is ec.europa.eu/taxation_customs/vies. The answer is VIES’s answer, with its provenance and date added.
- Why does the check say the member state is unavailable?
- VIES relays each query to the national register; a register that is down returns
MS_UNAVAILABLE. This page then shows a dated cached answer when one exists (marked stale), or says that no answer is available and when to retry. Outages by member state, live and over the last 30 days, are on the VIES status page. - How many checks are free?
- 20 a day per address without a key, 100 a month with a free key (no card). Prepaid packs and the monthly plan add consultation numbers and bulk.
- Is the number I type stored?
- VAT numbers and VIES answers are cached up to 30 days so that an outage can be bridged with a dated answer; nothing else about you is kept: no cookie, no account, no tracker.
Keep every answer as evidence in your own system: 100 calls a month, no card.
Get a free API keySources
- VIES REST API — check-vat-number, check-status (technical information) — European Commission, DG TAXUD, consulted 2026-10-24
- VIES — help page: what the consultation number proves, member-state availability — European Commission, DG TAXUD, consulted 2026-10-24
- VIES — VAT Information Exchange System: FAQ and VAT number structures (Q11) — European Commission, DG TAXUD, consulted 2026-10-24