One endpoint. Official VIES lookups (EU + Northern Ireland) with company name and address, offline IBAN checks with bank/BIC lookup, 24-hour caching and last-known-good fallback during outages. You only pay for successful validations.
Get a free key on RapidAPI Read the docscurl -X POST https://vatpulse1.p.rapidapi.com/validate \
-H "X-RapidAPI-Key: $RAPIDAPI_KEY" \
-H "X-RapidAPI-Host: vatpulse1.p.rapidapi.com" \
-H "Content-Type: application/json" \
-d '{"vat": "IE6388047V", "iban": "DE89 3704 0044 0532 0130 00"}'{
"vat": {
"valid": true,
"vat_number": "IE6388047V",
"country_code": "IE",
"name": "GOOGLE IRELAND LIMITED",
"address": "3RD FLOOR, GORDON HOUSE, BARROW STREET, DUBLIN 4",
"source": "vies",
"cached": false,
"stale": false,
"checked_at": "2026-10-17T22:44:26.350Z",
"error": null
},
"iban": {
"valid": true,
"iban_formatted": "DE89 3704 0044 0532 0130 00",
"bank": { "name": "Commerzbank Köln", "bic": "COBADEFFXXX" },
"sepa": true,
"cached": false
},
"billable": true,
"usage": { "plan": "free", "used": 1, "limit": 100, "remaining": 99 }
}Member states go offline regularly. We serve the last confirmed result (flagged stale with its timestamp) or an explicit member_state_unavailable, never a false "invalid".
EU + Northern Ireland (XI) via the European Commission's VIES REST API. UK (GB) via HMRC is coming soon: built, not yet enabled. Every response says which source answered.
Cache hits, stale fallbacks, malformed input and upstream errors never count against your quota. Check /usage anytime.
mod-97 checksum, per-country length and structure for 127 countries, bank name and BIC for 43 countries.
invalid_format, invalid_country, service_unavailable, rate_limited, quota_exceeded… Build logic, not regexes on error strings.
Runs on Cloudflare Workers. Cached answers return in milliseconds; VAT format typos are rejected locally before any upstream call.
Billing unit: one request with at least one fresh, definitive result. Validating a VAT number and an IBAN in the same request counts once. Subscriptions, keys and billing are handled by RapidAPI.
Subscribe to the free plan (100 validations per month) on RapidAPI. Upgrade or cancel there anytime.
Get a free key on RapidAPIWhat it actually takes to validate an IBAN (mod-97, per-country length and structure, bank code extraction, BIC lookup) and how to do it with a single API request.
Looking for a VIES alternative? There is no second source of EU VAT truth, but there is a better way to use the official one. Here's a checklist for picking a reliable VAT validation API.
A practical guide to checking EU VAT numbers from your code: formats, VIES (and HMRC for the UK), handling errors, caching, and sample code in curl, JavaScript and Python.
Why VIES outages break checkouts and invoicing, what the MS_UNAVAILABLE error really means, and a caching + fallback pattern that keeps VAT validation working.