7 min read

How to Check if a Customer's VAT Number Is Valid (No Code Needed)

If you sell B2B across borders, validating the customer's VAT number is the gating step that lets you skip charging VAT under the reverse charge rules. Get it wrong and your invoice is treated as B2C, the customer's VAT was missing, and you owe the VAT yourself plus penalties. The good news: checking is free, public, and takes about ten seconds per number.

This is the non-technical version. For developers who want to integrate the same checks into a billing system, see our VIES API guide.

Why validation matters

The reverse charge for cross-border B2B services depends on the buyer being a registered business in the destination country. The supplier's evidence that this is true is the buyer's VAT number. If the number is invalid, fictitious, or belongs to a deregistered business, the supplier has no evidence and the supply is treated as B2C: full VAT applies.

This is not theoretical. Tax authorities run regular post-audit sweeps that match supplier reverse-charge invoices to buyer VAT registrations. Mismatches result in assessments. The supplier is liable; the buyer is generally not pursued. So the burden of validation is on you, not your customer.

The fastest way: use a free validator

Our free Tax ID Validator handles single and batch lookups across:

It returns the registered name and address (where the source provides them), so you can also confirm the number belongs to the entity you are billing. No account or signup needed.

The country-by-country list of official sources

If you prefer to go straight to the official sources, here they are.

European Union: VIES

The VIES portal validates any EU VAT number against the issuing Member State. The number format is the country prefix (DE, FR, IT, etc.) plus the national VAT number. VIES returns valid or invalid; for some Member States it also returns the registered name and address.

VIES has known limitations: each Member State maintains its own back-end database, and some are slow to update or temporarily unavailable. A "no, invalid" can sometimes be a transient outage. If you get a negative result for a number you have reason to believe is real, retry within 24 hours and document both attempts.

United Kingdom: HMRC

HMRC has a public lookup page that returns valid or invalid plus the registered name. UK numbers are nine digits prefixed with GB, sometimes with a three-digit branch suffix (twelve total).

Norway: Brønnøysund

The Brønnøysund Register Centre publishes Norway's company register. The public search lets you look up the organisasjonsnummer and confirm VAT registration status.

Switzerland: UID

The Swiss UID (Unique Enterprise Identifier) register at uid.admin.ch. Switzerland uses the format CHE-XXX.XXX.XXX with the suffix MWST for VAT-registered businesses.

United States: there is no VAT

The US uses sales tax, not VAT. There is no national VAT number. For sales tax compliance, you need state-level resale or exemption certificates, which are validated by inspecting the certificate itself, not by lookup.

Australia: ABR

The Australian Business Register (ABR) lets you search by ABN. Output includes the entity name, GST registration status, and effective dates of any registration changes.

New Zealand: NZBN

The New Zealand Business Number lookup confirms registered businesses; GST registration status is tracked separately by IRD but visible alongside the NZBN.

Canada: GST/HST registry

Canada Revenue Agency runs a GST/HST registry lookup. Numbers are nine digits, RT, plus a four-digit suffix.

Brazil: CNPJ via BrasilAPI

BrasilAPI exposes Receita Federal data on the CNPJ (Cadastro Nacional da Pessoa Jurídica). Format is XX.XXX.XXX/XXXX-XX. Returns the trade name, registered name, and active status.

Other countries

Most VAT or GST jurisdictions publish a public registry. Quality varies: South Africa, India (GSTIN), UAE, Saudi Arabia, Singapore, Japan, and Mexico all have reliable lookups. Some jurisdictions only provide format validation (a check digit calculation) rather than a live registry check.

What "valid" actually means

There are three levels of validation:

  1. Format check: the number matches the expected pattern (correct length, correct check digit). Cheapest, but a number that passes the format check can still be fake.
  2. Existence check: the number is registered with the tax authority. This is what VIES, HMRC, and the other registries do.
  3. Active status check: the number is registered and currently active (not deregistered or struck off). VIES does this implicitly; some registries do not.

For reverse charge purposes, you need at least an existence check. An active status check is better. A deregistered number from six months ago will pass format validation and fail existence validation.

What to do when validation fails

Several causes, several fixes.

Customer typed their number wrong

Most common case. Capture the number with the country prefix, strip whitespace, normalise dots and dashes, then validate. If it still fails, ask the customer for a corrected number. Until you have a valid number, do not apply reverse charge.

Customer is not VAT-registered

They may be small enough to be below the registration threshold. If they have no VAT number, treat them as a consumer (B2C) and charge the destination country's VAT. They can recover it as a final consumer cannot, but only if they later register; you do not get to know.

VIES says "service unavailable" for a Member State

VIES proxies queries to each Member State's back-end. If the back-end is down, VIES returns service unavailable. Retry within 24 hours. Some businesses default to a "graceful unknown" treatment (continue with reverse charge but flag the transaction for re-validation), which is generally acceptable as long as the retry happens.

Customer's number is valid but the name does not match

This is a real risk: someone provides a real VAT number that belongs to another company. If the name on your invoice does not match the registered name returned by the lookup, you may be facilitating VAT fraud. Reject the transaction or escalate.

How often to revalidate

VAT numbers can be deregistered. Best practice for ongoing B2B relationships:

For high-volume billing systems, automated revalidation per invoice is the safest pattern. The Tax ID Validator handles batch lookups for this.

Documentation: what to keep

For each B2B reverse charge transaction, store:

VIES returns a unique consultation number for each successful lookup. Keep it. It is the single piece of evidence that satisfies most EU tax authorities in audit.

Why this matters more than people think: in an EU VAT audit, the auditor will pull a sample of your reverse-charge invoices and check each VAT number against VIES on the date of audit. Numbers that have since been deregistered look the same as numbers that were never valid. The VIES consultation number from the original transaction is your proof that you validated at the right moment.

Recap

DeterminedAI validates customer tax IDs at signup and on every invoice, stores the consultation reference automatically, and applies the right reverse charge or VAT treatment downstream. The tax ID validator and exposure dashboard are free to use without an account.

Tax ID Validator · Exposure Dashboard · VIES API guide

Try DeterminedAI free →