Dependable VAT validation for EU & UK
One API for VAT number validation across the EU-27 and UK. We cache every result so repeat lookups stay fast — and stay answerable even when VIES is down.
Get notified the day we go live. No card, no spam.
# Validate a German VAT number curl -X POST https://api.vatcore.dev/v1/validate \ -H "Authorization: Bearer vat_live_..." \ -H "Content-Type: application/json" \ -d '{"country":"DE","number":"123456789"}'
{ "valid": true, "country": "DE", "number": "123456789", "name": "Example GmbH", "address": "Musterstr. 1, 10115 Berlin", "source": "vies", "verified_at": "2026-05-28T10:00:00Z", "stale": false }
Built like infrastructure
Six things we got right so you don't have to.
One integration, every market
EU-27 plus UK in a single normalized endpoint. Same request shape, same response shape, every country.
Cache survives outages
When the tax authority is unreachable, we serve a flagged stale result for VAT numbers we've validated before. First-time lookups still depend on the source being up.
Read-through cache
Repeat lookups hit our cache, not the tax authority. A background refresher keeps hot entries warm.
Batch validation
Up to 50 numbers per request, each scored independently. One bad input never kills the batch.
Transparent errors
Clear HTTP codes (400, 402, 429, 502) you can route on. Quota problems are 402, burst-limit hits are 429 — no overloading.
EU-hosted, hashed logs
Your data stays in the EU. VAT numbers are hashed in our logs, never stored in plaintext.
Three steps to your first validation
Sign up & get an API key
Email verification, no card. Receive a prefixed key (vat_live_…) and 100 requests per month.
Call /v1/validate
One POST per VAT number. Country code and number — that's all we need. Or batch up to 50 at once.
Receive normalized JSON
Same response shape regardless of country. Includes name, address, source, verified_at, and a stale flag.
Honest pricing. No surprise bills.
When you hit your monthly quota, we return HTTP 402. No overage charges, ever.
Starter
Popular1,000 requests / month. For small SaaS and early traction.
Join the waitlistFrequently asked questions
Where does the data come from?
VIES (the European Commission's VAT Information Exchange System) for the EU-27, and HMRC for the UK. We do not invent data — we wrap the official sources behind a uniform, reliable interface.
What happens when VIES is down?
For VAT numbers we've validated before, we serve the cached result with a stale: true flag and a last_verified_at timestamp — your checkout keeps working. For first-time lookups during an outage, we return HTTP 502 so you can decide how to handle it.
Is it GDPR-compliant?
Your data stays in the EU. VAT numbers are hashed in our logs, never stored in plaintext. We provide a documented right-of-erasure process for VAT numbers belonging to sole traders.
Can I cancel anytime?
Yes. Self-serve, cancel from your dashboard, no phone call required. Your quota stays available through the end of the current billing period.
Do you support sole-trader VAT numbers?
Yes. VIES and HMRC return registration data the same way regardless of business structure. Note that sole-trader VAT numbers are personal data under GDPR, which is why we hash them in logs.
Be first when we go live
We're building this in public. Drop your email and we'll let you know the day the API is open for signups.