vatnode API Documentation
vatnode is a REST API that validates EU VAT numbers against the official VIES register, with automatic fallback to national tax and company registries when a country source is unavailable. Each response returns the validity result, company details, VAT rates for that country, and — when you supply your own VAT as requester — an EU Commission consultation number for your audit trail.
Features
- Real-time VAT Validation - Verify VAT numbers directly against the EU VIES database, one at a time or up to 100 per call via bulk validation
- VAT Rates API - Get current VAT rates for all 45 European countries (EU-27 plus non-EU like Norway, Switzerland, and the UK). Need rates without an API key? Try the free open-source eu-vat-rates-data package — available for JavaScript, Python, PHP, Go, and Ruby.
- Smart Caching - Responses are cached for optimal performance
- Change Monitoring - Subscribe to VAT IDs and receive webhooks on changes (paid plans)
- MCP Server for AI agents - Connect Claude, Cursor, ChatGPT and other MCP clients to vatnode in 30 seconds. See the MCP guide.
Base URL
All API requests should be made to:
https://api.vatnode.dev/v1Authentication
Most endpoints require authentication via API key. Include your key in the Authorization header:
curl https://api.vatnode.dev/v1/vat/IE6388047V \
-H "Authorization: Bearer vat_live_your_api_key"See the Authentication section for details on obtaining and managing API keys.
Quick Example
# Validate a VAT number
curl https://api.vatnode.dev/v1/vat/IE6388047V \
-H "Authorization: Bearer vat_live_..."{
"valid": true,
"vatId": "IE6388047V",
"countryCode": "IE",
"countryName": "Ireland",
"companyName": "GOOGLE IRELAND LIMITED",
"companyAddress": "3RD FLOOR, GORDON HOUSE, BARROW STREET, DUBLIN 4",
"companyRegistrationDate": null,
"companyForm": null,
"industryDescription": null,
"registryCode": null,
"registryCodeName": null,
"commercialName": null,
"companyStatus": null,
"secondaryActivities": [],
"companyAgeYears": null,
"consultationNumber": null,
"verifiedAt": "2026-03-26T14:25:57.209Z",
"checkId": "019d2a89-a5d9-7b97-b710-57b84604de2b",
"source": "VIES",
"specialTerritory": null,
"countryVat": {
"vatName": "Value Added Tax",
"vatAbbr": "VAT",
"currency": "EUR",
"standardRate": 23,
"reducedRates": [13.5, 9],
"superReducedRate": null,
"parkingRate": null,
"vatNumberFormat": "IE + 7 digits + 1–2 letters",
"vatNumberPattern": "^IE\d{7}[A-W][A-IW]?$|^IE\d[A-Z+*]\d{5}[A-W]$",
"countryVatUpdatedAt": "2026-03-27"
}
}Next Steps
Quick Start Guide
Get up and running in minutes
Authentication
Learn about API keys
VAT Validation
Validate VAT numbers
VAT Rates
Get VAT rates by country
Bulk VAT Validation
Validate up to 100 VAT numbers in one call
Error Handling
Handle errors gracefully in your application
Scalar API Reference
Interactive OpenAPI reference
Run in Postman
Try the API in Postman in one click