VAT Number Checker – EU VIES VAT Validation, Bulk & Proof avatar

VAT Number Checker – EU VIES VAT Validation, Bulk & Proof

Pricing

Pay per event

Go to Apify Store
VAT Number Checker – EU VIES VAT Validation, Bulk & Proof

VAT Number Checker – EU VIES VAT Validation, Bulk & Proof

VAT number checker for all 27 EU states + XI via official VIES. Validate VAT numbers in bulk, get company name, address and the VIES consultation number as audit proof. Outage-resilient, MCP-ready.

Pricing

Pay per event

Rating

0.0

(0)

Developer

W System

W System

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

10 days ago

Last modified

Security

Limited permissions

Share

VAT Number Checker – EU VIES VAT Validation, Bulk & Proof Number

VAT number checker – validate EU VAT numbers for all 27 member states + Northern Ireland (XI) against the official European Commission VIES service — one at a time or in bulk. Every check can return the VIES consultation number: the official, dated proof of verification that tax authorities accept in audits (e.g. for reverse-charge / intra-community supply invoices).

Built for finance teams, e-commerce, marketplaces, KYB/onboarding pipelines and AI agents (works as a tool through Apify's MCP server).

Quick answers

  • Which source does it check? The official European Commission VIES service, for all 27 member states plus Northern Ireland (XI).
  • What does it cost here? $0.005 per VAT number answered by VIES plus $0.005 per run start; outages, fallback rows and format errors are free.
  • What happens when VIES is down (MS_UNAVAILABLE)? It retries, then falls back to the official national register (PL, CZ, FI, FR) or your last successful VIES result, always flagged fallback: true, never a false "invalid". Details: VIES is down: how to handle MS_UNAVAILABLE.
  • Can I get audit proof? Yes. Pass your own VAT number as requester to get the VIES consultation number.
  • Can I use it without Apify? Outside Apify, the same check is on the W System REST API and remote MCP server at https://api.wsystem.dev (MCP endpoint https://api.wsystem.dev/mcp/): 20 free calls/day per IP with no API key or signup, then $0.01 per check via x402 (USDC on Base), or a monthly plan (Starter EUR 19 for 5,000 units, Pro EUR 49 for 25,000). REST docs and a free key: api.wsystem.dev/docs.
  • Who makes it? W System, which also runs the W System EU business data API and MCP server. Full product page with prices and FAQ: EU VAT number validation API.

Why this Actor

  • ✅ All 28 VIES countries: AT, BE, BG, CY, CZ, DE, DK, EE, EL/GR, ES, FI, FR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK, XI
  • 🧾 Consultation number (audit proof): add your own VAT number as requester and keep the proof with each check
  • 🔁 Handles VIES outages: automatic retries with exponential backoff on MS_UNAVAILABLE, timeouts and rate limits. If a member state is still down:
    1. National fallback for 🇵🇱 PL (Biała lista, Ministry of Finance), 🇨🇿 CZ (ARES), 🇫🇮 FI (YTJ/PRH VAT register) and 🇫🇷 FR (SIRENE + VAT key check), returned with fallback: true, source, legal_status
    2. otherwise the last successful VIES answer this Actor saved in your account, labelled with its date (fallback_type: "last_vies_result")
    3. otherwise member_state_unavailable (never a false "invalid") Fallback rows have no consultation number (that only comes from a live VIES check) and are not charged. Turn off with "useFallback": false. No free automated national source exists for DE (BZSt eVatR needs a German requester VAT ID), ES (certificate), IT (captcha), NL, BE, HU (NAV credentials), so those fall straight to the cached result.
  • 🇬🇧 GB numbers: accepted and check-digit validated. Live HMRC validation needs HMRC Developer Hub OAuth credentials, which are not configured in this Actor yet, so GB rows return status: "not_configured" (free). 🇬🇧 XI (Northern Ireland) is fully checked in VIES.
  • 📦 Batch: check up to 1,000 VAT numbers per run, 4 checked at once
  • 🧹 Input cleaning: spaces, dots and dashes are removed, GR is mapped to EL, and wrong formats are rejected before calling VIES
  • 🇭🇺 Extra Hungarian enrichment: legal form (Kft., Zrt., Bt., Nyrt.…), törzsszám check-digit validation, postal code, links to official registers
  • 🤖 Agent-ready: clean JSON, usable as an MCP tool from Claude, Cursor, ChatGPT and other agents via mcp.apify.com
  • 💶 Fair pricing: you pay only for checks that VIES actually answered (valid or invalid). Outages and format errors are free

Input

{ "vatNumbers": ["HU33119856", "IE6388047V", "DE811193231"], "requesterVatNumber": "HU33119856" }

requesterVatNumber is optional. Set it to your own EU VAT number to receive consultation numbers.

Output (one item per VAT number)

{
"vat": "IE6388047V", "country_code": "IE", "status": "valid", "valid": true,
"name": "GOOGLE IRELAND LIMITED",
"address": "3RD FLOOR, GORDON HOUSE, BARROW STREET, DUBLIN 4",
"request_date": "2026-10-15T12:25:47.434Z",
"consultation_number": "WAPIAAAAaE_hpYRy",
"source": "VIES (European Commission)"
}

status is one of valid, invalid, invalid_format, member_state_unavailable (retry later), error, not_configured (GB without HMRC credentials). Fallback rows add fallback, fallback_type (national_source | last_vies_result), legal_status, source_url, vies_error. Hungarian numbers also get an hu object (legal_form, checksum_valid, postal_code, …). Some countries (e.g. Germany) do not disclose name or address through VIES. Those fields are then null.

Pricing

Pay per event: $0.005 per VAT number checked + $0.005 per run start. 1,000 checks ≈ $5. Only VIES-answered checks are charged; outages, fallback rows, GB not_configured and format errors are free.

Use with AI agents (MCP)

Add Apify's MCP server to your agent with this Actor as a tool: https://mcp.apify.com/?tools=wsystem/eu-vat-checker Example prompts:

  • "Verify these customer VAT IDs before I issue reverse-charge invoices and give me the VIES consultation numbers: DE811193231, FR40303265045."
  • "Is FR40303265045 a valid VAT number? Give me the registered name and address."
  • "Check my 300 suppliers' EU VAT numbers and list which ones are invalid or need a retry because VIES was down."

Use via API

curl -X POST "https://api.apify.com/v2/acts/wsystem~eu-vat-checker/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" -d '{"vatNumbers":["HU33119856"]}'

Use cases

EU VAT validation API · VIES bulk check · reverse charge compliance · B2B checkout VAT exemption · KYB / supplier onboarding · customer master data cleansing · invoice validation.

Data comes live from the public VIES service of the European Commission. This Actor is independent and not affiliated with the European Commission or any tax authority. Hungarian enrichment is computed locally from the VIES response, with no scraping of registers. Results confirm VAT registration validity at the time of the check. They are not legal or tax advice.

Publisher: W System.