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 all 28 member state services.
Last checked . VIES check-status answered in 279 ms.
The uptime columns fill in as data accrues โ we started monitoring on 2026-08-09. If a window is longer than that you will see a dash, because we do not backfill history we did not actually measure.
Recent state changes
- LV Degraded → Operational
- LV Operational → Degraded SLOW
- DK Down → Operational
- DK Operational → Down TIMEOUT
- LV Degraded → Operational
- LV Operational → Degraded MS_MAX_CONCURRENT_REQ
- MT Degraded → Operational
- DK Down → Operational
- DK Operational → Down TIMEOUT
- MT Operational → Degraded MS_REPORTED_UNAVAILABLE
- MT Degraded → Operational
- LV Degraded → Operational
- MT Operational → Degraded MS_REPORTED_UNAVAILABLE
- LV Operational → Degraded MS_MAX_CONCURRENT_REQ
- MT Degraded → Operational
- DK Down → Operational
- DK Operational → Down TIMEOUT
- MT Operational → Degraded MS_REPORTED_UNAVAILABLE
- LV Degraded → Operational
- LV Operational → Degraded SLOW
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 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.