Skip to content
VAT API

Use cases

Where VAT validation fits in your stack

Three places teams validate VAT numbers, with code you can paste. Same endpoint everywhere: one GET, JSON back.

01 · Invoicing

Verify before you issue the invoice

Zero-rated intra-EU invoices need a valid customer VAT number at the time of supply. Check it live at that moment and keep the proof.

fresh=1
skips stored results younger than 24 hours, so the answer is from right now.
requester
with your own VAT number makes VIES return a consultation number: the official proof that you checked.
checked_at
tells you exactly when the verdict was given. Store it next to the invoice.
curl -H "Authorization: Bearer $VAT_API_KEY" \
  "https://vatapi.be/api/v1/vat/BE0684579082?fresh=1&requester=$OWN_VAT_NUMBER"

02 · B2B checkout

Reverse charge at checkout, without blocking orders

A business customer in another member state enters their VAT number; a valid number means you can apply the reverse charge. Speed matters here, and so does not failing when VIES has a bad day.

first answer
wins the race, so a slow or busy source does not hold up the checkout.
valid: null
means "could not decide right now", never a guess. Charge VAT or flag the order for review instead of rejecting it.
Retry-After
tells your retry job when to ask again.
curl -H "Authorization: Bearer $VAT_API_KEY" \
  "https://vatapi.be/api/v1/vat/NL004495445B01"

03 · CRM / ERP onboarding

Clean customer records from the first keystroke

Validate when a customer or supplier is created, normalise the number, and prefill the registered name and address instead of retyping them.

vat_number
comes back normalised (BE 0684.579.082 becomes BE0684579082), ready to store.
name / address
are filled in where the member state discloses them.
stale: true
on an older stored result is still an instant answer, refreshed in the background, so bulk re-checks stay fast.
curl -H "Authorization: Bearer $VAT_API_KEY" \
  "https://vatapi.be/api/v1/vat/DE811907980"

Good to know for every integration

  • Keep your key server-side

    Call the API from your backend. Never ship the key in browser or app code.

  • Use a generous timeout

    Most answers are quick, but a live check can take longer when VIES is struggling. 20 seconds is a safe client timeout.

  • Respect the limits

    60 requests per minute and 5,000 per day. A 429 comes with Retry-After.

This page explains how to use the API, it is not tax advice. Check the VAT rules that apply to your business with your accountant.

Start validating in a minute

Free API key by email. No credit card, no password.