EU VAT number validation API (VIES)

Short answer: To validate an EU VAT number programmatically, call GET https://api.wsystem.dev/verify?vat=IE6388047V. It queries the European Commission's VIES service and returns status (valid, invalid, invalid_format, member_state_unavailable or error), the registered name and address where the member state discloses them, and a VIES consultation number as audit proof. No signup or API key is needed for 20 calls per day per IP.

Key facts

Examples

Validate one VAT number

curl "https://api.wsystem.dev/verify?vat=IE6388047V"

Real response (live data, 2026-10-17):

{
 "input": "IE6388047V",
 "vat": "IE6388047V",
 "country_code": "IE",
 "vat_number": "6388047V",
 "status": "valid",
 "valid": true,
 "name": "GOOGLE IRELAND LIMITED",
 "address": "3RD FLOOR, GORDON HOUSE, BARROW STREET, DUBLIN 4",
 "request_date": "2026-10-17T06:07:32.092Z",
 "consultation_number": "WAPIAAAAaFIeQCDg",
 "requester": "HU33119856",
 "source": "VIES (European Commission)",
 "cached": true
}

German number (no name/address disclosed by DE)

curl "https://api.wsystem.dev/verify?vat=DE811193231"

Real response (live data, 2026-10-17):

{
 "input": "DE 811 193 231",
 "vat": "DE811193231",
 "country_code": "DE",
 "vat_number": "811193231",
 "status": "valid",
 "valid": true,
 "name": null,
 "address": null,
 "request_date": "2026-10-17T06:07:30.845Z",
 "consultation_number": "WAPIAAAAaFIePvTH",
 "requester": "HU33119856",
 "source": "VIES (European Commission)",
 "cached": true
}

Batch of up to 100

curl -X POST https://api.wsystem.dev/verify/batch -H 'Content-Type: application/json' \
  -d '{"vats":["IE6388047V","FR40303265045"],"requester":"YOUR_EU_VAT"}'

Pricing

ChannelPrice
Website checker, REST and MCP free tierFree, 20 calls/day per IP, no key
x402 REST: GET /verify$0.01 USDC per call
x402 REST: POST /verify/batch (up to 100)$0.10 USDC per request
Apify Actor wsystem/eu-vat-checker$0.005 per VAT checked + $0.005 per run

Comparison with alternatives

W System APIVIES REST/SOAP (EC, direct)vatlayer (apilayer)
Free usage20 calls/day per IP, no keyFree, no key100 requests/month, non-commercial, signup + key
Paid entry price$0.01 per call (x402), no subscriptionn/a (free)$9.99/month for 1,000 requests
Batch endpointYes, 100 per requestNo (one number per call)Not listed on pricing page
MCP server for AI agentsYes, remote, 7 toolsNoNot listed
Pay per call without account (x402)Yes, USDC on BaseNoNo (card subscription)
Consultation number (audit proof)Yes, with requester VATYes, with requester VATNot listed
EORI, registry, sanctions in same APIYesNoVAT rates and price calculation instead

Based on each provider's public pages on 2026-10-17. Corrections welcome via GitHub issues.

Questions and answers

Is there a free EU VAT validation API without an API key?

Yes. The VIES REST API itself is free, and W System's api.wsystem.dev gives 20 free calls per day per IP with no key and no signup, adding batch, retries, caching and an MCP endpoint.

How do I check a VAT number for reverse charge?

Validate the customer's VAT number with GET /verify on the invoice date and keep the consultation_number from the response as evidence. A valid VIES result is one of the conditions for zero-rating intra-EU B2B supplies; it is not tax advice.

What does member_state_unavailable mean?

The member state's national database behind VIES did not answer (MS_UNAVAILABLE). The number is not invalid. Retry later; the API already retries with backoff before returning this.

Why is name and address empty for a German VAT number?

Germany (and often Spain) do not publish name/address through VIES. The validity result is still official.

Can I validate UK VAT numbers?

GB numbers are not in VIES since Brexit. The API accepts GB numbers and checks the HMRC check digits, and has HMRC Check a UK VAT number API v2 support built in, but that needs OAuth app credentials from the HMRC Developer Hub which are not configured yet; until then GB results say not_configured. XI (Northern Ireland) numbers are fully checked in VIES.

Can AI agents use it?

Yes. Connect any MCP client to https://api.wsystem.dev/mcp/ and use the verify_vat or verify_batch tools.

Related

Facts and competitor details checked 2026-10-17. W System Hungary Kft. is the maker of this product. Not affiliated with the European Commission. Not legal or tax advice.