Is VIES down?
Here is the current answer, measured rather than guessed. We check the European Commission's VAT Information Exchange System every 5 minutes, across 27 EU member states plus Northern Ireland (XI) — 28 endpoints.
Last checked . VIES check-status answered in 110 ms.
Monitoring began 2026-08-09, and we do not backfill history we did not measure.
What is affected right now
- Hungary (HU) — down, reporting
MS_UNAVAILABLE. Details - Luxembourg (LU) — degraded, reporting
SLOW. Details - Malta (MT) — degraded, reporting
SLOW. Details
Recent state changes
- LU Operational → Degraded SLOW
- MT Operational → Degraded SLOW
- FR Degraded → Operational
- CZ Down → Operational
- DE Degraded → Operational
- DK Down → Operational
- FR Operational → Degraded MS_MAX_CONCURRENT_REQ
- BE Degraded → Operational
- CY Degraded → Operational
- CZ Operational → Down TIMEOUT
- DE Operational → Degraded SLOW
- DK Operational → Down TIMEOUT
- BE Operational → Degraded SLOW
- CY Operational → Degraded SLOW
- FR Degraded → Operational
- CZ Degraded → Operational
- DK Down → Operational
- FR Operational → Degraded MS_MAX_CONCURRENT_REQ
- CZ Operational → Degraded MS_MAX_CONCURRENT_REQ
- DK Operational → Down TIMEOUT
Got an error code? Start here
MS_UNAVAILABLE— the national VAT database is not answering. It does not mean the number is invalid.MS_MAX_CONCURRENT_REQ— the member state is rate-limiting you. Usually Germany, and there is a workaround.GLOBAL_MAX_CONCURRENT_REQ— VIES itself is saturated. Rare, and usually brief.- Timeouts — no answer at all, plus the trap where VIES returns HTTP 200 on failure.
Want a live status badge for your README?
Live, cached for 5 minutes, and no attribution required — take them. All 28 badges and embed snippets →
<a href="https://vies.attestwire.com"><img src="https://vies.attestwire.com/badge.svg" alt="VIES status"></a>
JSON API
If you would rather have the data than the page: current state and uptime for every member state, CORS-open, cached for 60 seconds. No key, no rate limit, no signup.
curl https://vies.attestwire.com/api/status.json
How this is measured
So you can judge the numbers for yourself. Every 5 minutes we call the official VIES check-status endpoint, which reports each member state's availability, and we send real check-vat-number requests to a rotating group of four member states — so every country gets independently ground-truthed roughly every 35 minutes. That works out at about 1,440 upstream requests a day, which is deliberately light.
What the words mean: Operational means VIES answered the query. Degraded means it answered slowly (over 4 seconds) or returned MS_MAX_CONCURRENT_REQ / GLOBAL_MAX_CONCURRENT_REQ. Down means MS_UNAVAILABLE, a timeout, or a 5xx.
One judgement call worth flagging: where check-status reports a member state as unavailable but our own recent live query to it succeeded, we show degraded rather than down. The two signals genuinely disagree, and we would rather understate an outage than cry wolf at you.
Uptime is (operational + degraded) ÷ (operational + degraded + down). Checks where we could not reach VIES at all are left out of the denominator rather than blamed on a member state. We have been collecting since 2026-08-09, and windows longer than that show as “–” rather than being backfilled — we will not invent history we did not measure.
Building EU invoicing?
We also make Attestwire, an EN 16931 validation API. Post an invoice as JSON or UBL/CII XML and get back the rule it breaks and how to fix it. Free tier, 100 docs/month, no card needed.
api.attestwire.com/docs · check.attestwire.com — our free French e-invoicing readiness checker.