EU VAT Validation API
built for developers
One endpoint. Validate any European VAT number against VIES with aggressive Redis caching, structured JSON responses, and predictable pricing.
- 27
- EU member states
- <10ms
- cached response
- 24h
- response cache
- free
- to start
Quick start
One POST request. Pass the VAT number, get back the company name, address, and validation status in JSON.
curl https://taxid.dev/api/v1/validate/DE/DE123456789 \
-H "Authorization: Bearer vat_xxxxxxxxxxxx"{
"valid": true,
"vat": "DE123456789",
"country_code": "DE",
"company_name": "Example GmbH",
"address": "Musterstraße 1, 10115 Berlin",
"cached": true,
"request_id": "req_01j..."
}What TaxID does
A thin, reliable wrapper around VIES — without the SOAP, the downtime surprises, or the cryptic error messages.
VIES-backed
Every validation hits the EU Commission's official VIES system. You get the same authoritative data used by tax authorities across all 27 member states.
Sub-10ms cached
Valid numbers are cached in Redis for 24 hours. Repeat lookups for the same VAT number resolve in under 10ms — no VIES roundtrip required.
27 EU member states
Full coverage from Austria to Sweden. Each country endpoint validates format locally before hitting VIES, saving quota on malformed numbers.
Company name & address
Every successful response includes the registered company name and address as returned by the national tax authority — ready to print on invoices.
Stripe-style errors
Machine-readable error codes like vat_invalid, service_unavailable, and country_not_supported. Never parse a human-readable string to branch your logic.
Format validation first
Each VAT number is checked against a country-specific regex before the VIES call. Invalid formats fail instantly without consuming your monthly quota.
Pricing
Start free. No credit card required. Upgrade when you need more.
Free
$0forever
100 validations/month
- All 27 EU countries
- Company name + address
- JSON responses
- No credit card
Starter
$19/month
1,000 validations/month
- All 27 EU countries
- Sub-10ms cached
- Stripe-style errors
- Email support
Growth
$49/month
10,000 validations/month
- All 27 EU countries
- Sub-10ms cached
- Priority support
- Email support
Need more than 10,000 validations? Contact us for custom pricing.
Frequently asked questions
Is TaxID free to use?
Yes. The free plan includes 100 EU VAT validations per month with no credit card required. Paid plans start at $19/month.
How does TaxID handle VIES downtime?
When VIES is unavailable, TaxID returns a structured service_unavailable error code. Previously cached results remain accessible during outages so your app never hard-fails on validated numbers.
What data does the API return?
valid, vat, country_code, company_name, address, cached, and request_id. Company name and address come directly from the national tax authority's VIES record.
Which EU countries are supported?
All 27 EU member states — Austria through Sweden. Each country validates format locally before hitting VIES.
How does TaxID compare to calling VIES directly?
VIES is SOAP-based, frequently unavailable, and has no caching. TaxID wraps it in a REST/JSON API with Redis caching, structured error codes, and sub-10ms cached responses.
Something else on your mind?
hello@taxid.dev