EU VAT Validator: Bulk VIES Verification Without an API Key
Validate EU VAT numbers in bulk via the official VIES service. Returns validity, registered company name, and address. No API key required. Empty results are never charged.
The actor referenced in this article. Pay only for results delivered.
Every EU B2B invoice requires a valid VAT number. Getting that validation wrong costs you in reverse-charge disputes, audit exposure, and rejected EC Sales Lists. The EU VAT Validator actor automates bulk verification against the official VIES service, the same system your tax authority queries.
What is VIES?
VIES (VAT Information Exchange System) is the European Commission’s official service for validating VAT registration numbers issued by EU member states. When you query VIES, you get an authoritative yes/no from the issuing country’s own tax database, plus the registered business name and address when the member state provides them.
What the actor returns
For each VAT number submitted:
- valid: true/false from the issuing country’s tax authority
- countryCode: the 2-letter ISO country code (DE, FR, IT, etc.)
- vatNumber: the number as cleaned and queried
- name: registered business name (where member state discloses it)
- address: registered business address (where disclosed)
- requestDate: timestamp of the VIES query
Some member states (notably Germany) do not disclose name/address through VIES for privacy reasons. The validity flag is always returned regardless.
Supported countries
All 27 EU member states: AT, BE, BG, CY, CZ, DE, DK, EE, EL, ES, FI, FR, HR, HU, IE, IT, LT, LU, LV, MT, NL, PL, PT, RO, SE, SI, SK.
Northern Ireland (XI) is also supported for goods transactions under the Windsor Framework.
Use cases
Accounts payable automation: validate VAT numbers on incoming invoices before posting. Invalid VAT = no reverse-charge entitlement = an accounting error that compounds at audit.
Customer onboarding: verify EU business customers at signup to confirm VAT registration status before granting B2B pricing or intra-community supply terms.
EC Sales List preparation: validate all customer VAT numbers before submitting your quarterly or monthly EC Sales List. VIES is the same check your tax authority runs.
Supplier due diligence: confirm a new supplier is VAT-registered in their claimed jurisdiction before onboarding them.
Bulk cleansing: run your entire CRM or ERP customer list through VIES to identify stale, cancelled, or never-valid VAT numbers before year-end.
Input format
Pass VAT numbers either with or without the country prefix:
{
"vatNumbers": [
"DE123456789",
"FR12345678901",
"IT12345678901"
]
}
The actor auto-detects and strips country prefixes, then routes each number to the correct member state API.
Pricing
Free: pay Apify compute only. Failed and empty results are never charged. The VIES service is publicly accessible and the actor makes no paid API calls.
Explore the scraper referenced in this article: inputs, outputs, and pricing, then run it on Apify.
Company KYB API: Resolve LEI and SEC CIK, Then Check EU VAT
Resolve a list of company names to GLEIF LEIs and SEC EDGAR CIKs in one run, flag EU entities, then validate their VAT numbers with VIES. Python included.
GLEIF LEI Lookup API: Resolve Legal Entity Identifiers Without an API Key
Look up Legal Entity Identifiers (LEIs) and registered company data from the GLEIF global registry. Search by company name or LEI code. No API key required.
World Bank API in Python 2025: GDP, Inflation, and 1,400 Indicators Without the SOAP Hell
The World Bank has a REST API but it returns XML by default, uses quirky pagination, and has undocumented quirks. Here is how to actually use it in Python.
World Bank Trade Data API: How to Pull Global Import and Export Statistics
The World Bank WITS database covers bilateral trade flows between 200+ countries. Here is how to access it programmatically and what the data actually contains.