Tax ID Lookup
Our lookup API supports VAT numbers for all EU member countries plus the United Kingdom and Australia. The lookup endpoint validates the number before performing a lookup. It returns JSON-encoded responses and uses standard HTTP response codes.
Sample API Request
Below is a request for a Australian VAT number. Review our Authentication guide to authenticate your request.
GET https://v3.api.taxid.pro/lookup
?country=au
&tin=49004028077
&type=vat
Sample API Response
The response contains all of the properties as a Validation response, plus a lookup_data property which contains name and address information about the entity. If a VAT number is not valid, it will not be passed to the lookup service. Note that lookups can be slower than validations as they pass requests to state-run services in different parts of the globe.
{
"is_valid": true,
"message": null,
"tin_compact": "49004028077",
"tin_standard": "49 004 028 077",
"country_name": "Australia",
"format_name": "Business Number",
"lookup_data": {
"name": "BHP GROUP LIMITED",
"address": "3000 VIC"
}
}
Query Parameters
country string required
A two-letter country code, as defined in the ISO standard. If you need to use IRS country codes, see the is_irs query parameter below.tin string required
The tax ID Number. It may contain numbers, letters (uppercase or lowercase), dots, dashes, or slashes. Separators that are not standard for the tax ID format being tested will trigger an invalid response. For example, a U.S. EIN typically uses a dash after the first two digits. Valid input can include this dash, or no dash, and both versions will be valid. However, if if extra dashes are used, or dashes were put in the wrong place, or dots were used instead of dashes, the response will be invalid because the separators aren't appropriate for the format. Experiment with this on our home page.type string optional
This parameter is optional, but recommended. Specify individual, entity, or vat. Exclude this parameter to test all available types for a given country. Some caveats to keep in mind if you do not specify a type:
- The result will be valid if any format is valid.
- The result will only be invalid if all formats are invalid.
- Guidance provided in the message property may be less specific.
For example, there are three types of tax ID numbers in Germany, one for individuals, one for entities, and one for vat numbers. If your tax ID number is a valid Steuernummer, and you do not specify a type, the validator will test all three formats available, and the response will be valid: true because it was valid for one of the three types tested. We recommend experimenting with this setting to ensure you are getting the behavior you are expecting.
locale string optional default: en
The locale parameter determines the language of the message property in the response. Messages are in English by default. If you specify auto, the most appropriate language for the country will be used. Otherwise, the locale can manually be set using a IETF language tag.- auto (Most appropriate language)
- nl (Dutch)
- en (English, default)
- fr (French)
- de (German)
- it (Italian)
- jp (Japanese)
- ru (Russian)
- es (Spanish)