VAT validation & VAT number lookup via the VIES API
Validate any European VAT number directly against VIES and resolve it to the company behind it, KVK number included. One GET request, answered as clean JSON.
{ "vatNumber": "NL812345678B01", "valid": true, "kvkNumber": "90498488", "name": "Future Finance B.V.", "countryCode": "NL", "source": "VIES", "checkedAt": "2026-07-05T09:14:02Z" }{ "vatNumber": "NL869599084B01", "valid": true, "kvkNumber": "69599084", "name": "Coolblue B.V.", "countryCode": "NL", "source": "VIES", "checkedAt": "2026-07-05T09:13:41Z" } { "vatNumber": "BE0647582688", "valid": true, "kvkNumber": null, "name": "Zeebrugge Logistics BV", "countryCode": "BE", "source": "VIES", "checkedAt": "2026-07-05T09:13:47Z" } { "vatNumber": "NL123456789B01", "valid": false, "kvkNumber": null, "name": null, "countryCode": "NL", "source": "VIES", "checkedAt": "2026-07-05T09:13:52Z" } { "vatNumber": "NL812345678B01", "valid": true, "kvkNumber": "90498488", "name": "Future Finance B.V.", "countryCode": "NL", "source": "VIES", "checkedAt": "2026-07-05T09:14:02Z" }
Try it yourself
Enter a VAT number and see what the API response looks like
Everything a VAT validation API should do
Validated straight at the source, linked to Dutch company data and honest about where the answer comes from.
-
VAT number lookup
-
Send a VAT number and get its status plus the company behind it: KVK number and company name. One GET request, no SOAP.
-
Validated via VIES
-
Every check goes straight to VIES, the European Commission's official database. No copied data: you see what the source says, with the time of the check attached.
-
EU-wide
-
Validate Dutch and other European VAT numbers with the same call. Formatting is normalized automatically: "NL 8123.45.678.B01" becomes "NL812345678B01".
-
Smart caching
-
Repeat checks of the same number are served from cache for up to 24 hours: instant answers without hammering VIES. Double submits and checkout retries are absorbed silently.
-
Honest about the source
-
If VIES is temporarily unreachable we fall back to the last known validation, clearly marked as stale and carrying its original check time. Without one, you get an honest 503 instead of a made-up answer.
-
Ready for checkout & invoicing
-
Confirm tax details at signup or checkout and back your reverse-charge decisions with a validated number on file.
Frequently asked questions
- What is a VIES API?
- VIES (VAT Information Exchange System) is the European Commission's official database for checking whether a VAT number is valid. A VIES API like Companize's makes that check available through a modern REST call instead of VIES's own SOAP interface.
- How do I look up a VAT number?
- Send a GET request with the VAT number to the vat endpoint. You get back whether the number is valid and, when the company is known, its KVK number and name.
- Can I find the company behind a VAT number?
- Yes. A valid Dutch VAT number is resolved to the company behind it, including its KVK number and name. Combine it with the Company Data API for the full company profile.
- Is the VAT validation API free?
- VAT validation is included with every paid Companize plan and isn't metered separately. Because every check depends on the external VIES service, fair-use limits apply to protect the source.
Other Companize APIs
-
Company Data API
-
Search by name or KVK number and get complete company profiles: legal form, status, trade names, activities, addresses and establishments. Everything from the register in one structured response.
-
Address Validation API
-
Validate and complete Dutch addresses as your users type, or resolve a postcode and house number to the exact street, city and municipality. Only real addresses reach your systems.
Be first to build on Companize
Join the waitlist for early access, a free tier at launch and updates as we roll out. No spam, just the important stuff.
We'll only use your email to contact you about early access. Unsubscribe anytime.