What VIES is
The VAT Information Exchange System connects the VAT databases of the 27 EU member states and Northern Ireland. When you check a number, VIES forwards the question to the national database of that country and returns its answer.
What VIES returns
- Valid / invalid: whether the number is registered for intra-EU transactions.
- Name and address: only if the member state shares them. Germany and Spain, for example, do not.
- Request date and, if you identify yourself with your own VAT number, a consultation number as proof.
A number that is valid for domestic VAT can still be invalid in VIES if the company is not registered for cross-border trade. For the reverse charge, the VIES status is what counts.
Why VIES is often unavailable
VIES has no database of its own: if a national system is down or in maintenance, numbers of that country cannot be checked. Several countries have regular night or weekend maintenance windows, and the services rate-limit automated traffic (errors such as MS_UNAVAILABLE, MS_MAX_CONCURRENT_REQ).
What to do: retry later, keep the error and the time as evidence, and check the format and check digit in the meantime so typos are caught at once.
UK VAT numbers since Brexit
UK numbers (GB prefix) left VIES on 1 January 2021 and are checked with HMRC’s Check a UK VAT number service. Northern Ireland businesses that trade goods with the EU use their number with the XI prefix, which is in VIES.
Automating VIES checks
You can call VIES directly through its SOAP or REST interface and handle retries, rate limits and HMRC separately, or use an API that does this for you:
curl "https://api.vatcheckapi.com/v2/check?vat_number=FR40303265045" -H "apikey: YOUR-API-KEY"
vatcheckapi checks format and checksum first, then VIES or HMRC, and returns one JSON format for all 29 country codes. Try it in the VAT number validator.