Check a Luxembourg VAT number

Validate a VAT number from Luxembourg against the EU's VIES service, here or from your own code.

Country prefixLU
Local namenuméro d'identification à la TVA
FormatLU followed by 8 digits
ShapeLU12345678 (an example of the shape, not a real registration)
Pattern^LU\d{8}$

Check a Luxembourg VAT number now

VAT number with its 2-letter EU country prefix (give vat or name)

Uses one of your 3 free calls. Nothing is charged, and a call that fails is not counted.

How the check works

The check asks VIES, the European Commission's VAT Information Exchange System, which in turn asks the member state's own tax database. Valid means the number is registered for intra-EU trade at the moment of the check. Where the member state shares them, the answer also carries the registered name and address. Spaces, dots and hyphens in the number are ignored.

From your code

curl -H "Authorization: Bearer $API_KEY" \
  "https://tools.funwords.eu/vat/validate?vat=LU12345678"

One GET request, JSON back: valid, and the registered name and address when they are shared. A failed check is never charged. Keys, monthly plans and code in Python and Node.js: Company check API. Reference: tool page.

Questions

What does a Luxembourg VAT number look like?

LU followed by 8 digits, for example LU12345678 (an example of the shape, not a real registration). Locally it is called numéro d'identification à la TVA.

How do I check that a Luxembourg VAT number is valid?

Enter it on this page, or send it to the API. The check asks VIES, the European Commission's VAT Information Exchange System, which in turn asks the member state's own tax database. Valid means the number is registered for intra-EU trade at the moment of the check.

Why would a real number come back as not valid?

The business may not be registered for intra-EU trade, the registration may have ended, or the number may be written with the wrong prefix or a missing digit. A member state's database can also be unavailable for a short time; the check then fails instead of answering not valid.

Other countries

Austria · Belgium · Bulgaria · Cyprus · Czech Republic · Germany · Denmark · Estonia · Greece · Spain · Finland · France · Croatia · Hungary · Ireland · Italy · Lithuania · Latvia · Malta · Netherlands · Poland · Portugal · Romania · Sweden · Slovenia · Slovakia · Northern Ireland