VIES is the European Commission's service for confirming that a business is VAT-registered in another member state. It is free to call directly, but it is a relay to 27 national systems that each have their own opening hours and outages. This API wraps it so that a down member state becomes a clear, uncharged error instead of a wrong answer.
When a national system is offline, VIES answers with an error rather than 'not valid'. A naive integration treats that as invalid and refuses a real customer. Here, those cases return 502 register_unavailable with a plain message, so you can retry or queue the check, and you are never charged for them.
VIES says whether a number is valid. Some member states also share the registered name and address; others, Germany among them, return nothing beyond valid or not valid. This API passes through what the register gave and leaves the rest empty rather than inventing it.
Selling goods or services business-to-business across EU borders usually depends on the buyer being VAT-registered, and valid-in-VIES is the standard evidence. Keep the response, including the source and the retrieved_at time, with the invoice. This API does not issue VIES consultation numbers.
Greece uses the prefix EL in VIES; send GR as the country and we handle it. Spaces, dots and a leading country prefix in the number are stripped for you. Numbers that cannot match their country's format are refused before VIES is asked.
const res = await fetch("https://api.identifyorg.com/v1/verify/vat", {
method: "POST",
headers: { "X-IdentifyOrg-Key": process.env.IDENTIFYORG_KEY, "Content-Type": "application/json" },
body: JSON.stringify({ country: "FR", vat_number: "FR40303265045" }),
});
if (res.status === 502) { /* member state offline: retry later, nothing was charged */ }
const { valid, check_type, source } = await res.json();Yes. This API adds consistent responses, clear outage handling, format checks and one billing line across countries. If you only need an occasional check, the free tool on this site is enough.
It varies by country and day, from minutes to hours. We do not publish uptime figures for systems we do not run.
No. We return the source and the time of the check; if you need an official consultation number, request it from VIES directly.