Validate EU VAT numbers against the official VIES register and look up EU VAT rates inside your n8n workflows. Uses the vatnode API.
Use it when a workflow onboards a business customer, issues an invoice, or decides whether the reverse charge applies — cases where the number has to be registered, not just correctly formatted.
Follow the community nodes installation guide and use the package name n8n-nodes-vatnode.
| Operation | API key | What it does |
|---|---|---|
| Validate | Required | Verifies the number against the live VIES register. Returns validity, registered company name and address, registration date, and the VIES consultation number when your account has a requester VAT configured. Spends one request from your monthly quota. |
| Check Format | Not needed | Checks the number against its country pattern. Runs offline: no network call, no quota. A valid format does not mean the number is registered. |
| Operation | API key | What it does |
|---|---|---|
| Get | Not needed | Standard, reduced, super-reduced and parking rates for one country, plus the VAT number format. |
| Get Many | Not needed | The same for every covered country, one n8n item per country. |
Rate data comes from the European Commission's Taxes in Europe Database, checked daily against that source and updated on any change.
Only the Validate operation needs credentials. Everything else runs without an account.
To get a key:
- Create an account at vatnode.dev/register. No card required, and the free plan includes a monthly request quota.
- Open Dashboard → API Keys (vatnode.dev/dashboard/api-keys) and create a key. Live keys start with
vat_live_. Every account also gets avat_test_key, which returns fixture data for any VAT number and never spends quota — useful while you build the workflow. - In n8n, add a new Vatnode API credential and paste the key.
Worth doing: set your own VAT number under Dashboard → Account details → Requester VAT. VIES then issues a consultation number with every successful check, and vatnode returns it as consultationNumber. Keep it with the invoice record — that is the evidence a tax auditor asks for.
The credential test sends the reserved XX0000001 test VAT number, which never reaches VIES and never spends quota.
VIES validation covers the 27 EU member states plus XI (Northern Ireland). Rate lookups cover those plus around 17 other European jurisdictions (rates only, no VIES validation). Greece is EL, not GR — that is the VIES convention, and vatnode follows it.
Three workflows are ready to import from templates/:
- Validate a VAT number submitted through a form
- Decide reverse charge before issuing an invoice
- Re-check customer VAT numbers on a schedule
Import one with Workflows → Import from File.
A typical onboarding workflow:
- Check Format filters out typos without spending quota.
- Validate confirms the remaining numbers against VIES.
- A downstream IF node routes on
valid, and theconsultationNumberis stored with the customer record as audit evidence.
Tested against n8n 1.x. Requires Node.js 20.15 or newer.