EU VAT Validation API for B2B SaaS — vatnode
Dashboard
EU VAT validation — 27 EU member states + Northern Ireland<br>Validate EU VAT numbers —<br>and prove it during audits<br>Validate EU VAT numbers in a single REST call. Every response includes the EU Commission consultation number — the audit token VIES issues to prove the check happened. Plus national registry fallback, enriched company data, and VAT rates for all 27 member states. Built for B2B SaaS and e-commerce selling into Europe.<br>Built for production systems — not just form validation.<br>Get API key Check a VAT number<br>100 free requests/month·No credit card required·50ms cached·99.9% uptime SLA<br>$ curl api.vatnode.dev/v1/vat/IE6388047V<br>{ "consultationNumber": "WAPIAAAAZ27qPadm", ... }<br>Official EU audit token issued by the EU Commission — attach to your invoice records
Request<br>cURLNode.jsPythonPHPGoRuby<br>Copy
curl "https://api.vatnode.dev/v1/vat/IE6388047V" \<br>-H "Authorization: Bearer YOUR_API_KEY"
Response200 OK<br>"valid": true,<br>"vatId": "IE6388047V",<br>"countryCode": "IE",<br>"countryName": "Ireland",<br>"companyName": "GOOGLE IRELAND LIMITED",<br>"companyAddress": "3RD FLOOR, GORDON HOUSE, BARROW STREET, DUBLIN 4",<br>"companyRegistrationDate": null,<br>"companyForm": null,<br>"industryDescription": null,<br>"registryCode": null,<br>"registryCodeName": null,<br>"countryVat": {<br>"vatName": "Value Added Tax",<br>"vatAbbr": "VAT",<br>"currency": "EUR",<br>"standardRate": 23,<br>"reducedRates": [<br>9,<br>13.5<br>],<br>"vatNumberFormat": "IE + 8-9 chars",<br>"vatNumberPattern": "^IE[0-9A-Z+*]{7}[A-Z]{1,2}$"<br>},<br>"checkId": "019d2a89-a5d9-7b97-b710-57b84604de2b",<br>"verifiedAt": "2026-03-26T14:25:57.209Z",<br>"consultationNumber": "WAPIAAAAZ27qPadm",<br>"source": "VIES"
Used to validate VAT at checkout, invoicing, and B2B onboarding.
0+VAT numbers validated<br>0+EU companies checked<br>0EU member states<br>Cache response time
Since January 2020, a valid customer VAT number is a substantive legal condition for zero-rating intra-EU goods supplies — not a best practice. VAT number validation at invoice time is your first line of defence.
Why this matters<br>Boolean VAT validation is not enough for audits<br>During a tax audit, showing that a VAT number was checked and valid at the time of invoice is a legal requirement for zero-rated intra-EU supplies. A boolean result from your own system proves nothing to a tax authority.<br>vatnode returns the official consultation number issued by the EU Commission — a verifiable reference that shows the check was performed, when, and what the result was. vatnode returns it as part of every qualified validation response.
Why a basic VIES call is not enough<br>boolean true is not audit evidence<br>A raw VIES check<br>×Returns valid/invalid — no proof the check happened<br>×No official reference to attach to an invoice<br>×Fails during country-level VIES outages<br>×No enriched company data from national registries
vatnode<br>✓EU Commission consultation number — independently verifiable<br>✓checkId + verifiedAt — permanent, timestamped audit record<br>✓National registry fallback for covered EU countries<br>✓Legal form, registration date, industry — in one call
Everything you need for EU VAT compliance<br>One API call returns validated status, enriched company data, VAT rates, and an audit trail — ready for checkout, invoicing, and B2B onboarding.
Real-time + Resilient<br>National registry fallback via tax authority and company registry APIs keeps validation working even when a country node is temporarily unavailable. Cache hits return in<br>Audit-Proof Evidence<br>Every validation returns an official consultation number from the EU Commission — a verifiable token that proves the check happened at a specific time. Store it alongside your invoices as evidence tax authorities can verify independently.
Know Before You Invoice<br>Subscribe to your customers' and suppliers' VAT IDs. Get a webhook the moment one de-registers — so you fix the next invoice before it goes out wrong, instead of finding out at audit time.
Enriched Company Data<br>Beyond VIES: registration date, legal form (GmbH, SAS, AB…), and industry code from national registries. Local VAT name, abbreviation, all rate tiers, and currency — in every response.<br>Where a VAT number belongs to a sole trader, some fields may constitute personal data under GDPR.
Developer-First<br>Clean REST API over HTTPS. Works with any language — curl, JavaScript, Python, PHP, Ruby, Go. Up and running in minutes.
MCP Server for AI Agents<br>Plug Claude Desktop, Cursor, ChatGPT — anything that speaks Model Context Protocol — straight into vatnode. Your AI assistant validates VAT IDs and looks up rates in the chat, with your key staying on your machine. Open source.
Up and running in minutes<br>No SDK. No infrastructure. Just one HTTP call.
Create your account<br>Sign up and get an API key instantly. Free plan, no credit card required.<br>vat_test_••••••••••••••••<br>vat_live_••••••••••••••••
Make a request<br>One HTTP call. Works with any language — curl, JavaScript, Python, PHP.<br>GET /v1/vat/IE6388047V<br>Authorization: Bearer...