Validation TVA via VIES
Validez un numero de TVA europeen via le systeme VIES (VAT Information Exchange System) de la Commission europeenne. Retourne le statut de validite, le nom et l'adresse de l'entreprise associee au numero de TVA.
GET
/api/v2/vat/{vatNumber}Headers
| Header | Value | Description |
|---|---|---|
X-API-Key | pk_live_... | Votre cle API publique |
X-API-Secret | sk_live_... | Votre cle API secrete |
Paramètres
| Name | Type | Description |
|---|---|---|
vatNumberrequis | string | Numero de TVA europeen complet (prefixe pays inclus)Exemple: BE0200065765 |
Exemple de requête
cURL
curl -X GET \ "https://companybelgium.be/api/v2/vat/BE0200065765" \ -H "X-API-Key: pk_live_votre_cle" \ -H "X-API-Secret: sk_live_votre_secret"
JavaScript / Node.js
const vatNumber = 'BE0200065765';
const response = await fetch(
`https://companybelgium.be/api/v2/vat/${vatNumber}`,
{
headers: {
'X-API-Key': process.env.API_KEY,
'X-API-Secret': process.env.API_SECRET,
},
}
);
const data = await response.json();
if (data.success) {
const vat = data.data;
if (vat.valid) {
console.log(`Numero TVA valide : ${vat.countryCode}${vat.vatNumber}`);
console.log(`Entreprise : ${vat.name}`);
console.log(`Adresse : ${vat.address}`);
} else {
console.log('Numero de TVA invalide ou inactif');
}
}Python
import requests
vat_number = 'BE0200065765'
response = requests.get(
f'https://companybelgium.be/api/v2/vat/{vat_number}',
headers={
'X-API-Key': 'pk_live_votre_cle',
'X-API-Secret': 'sk_live_votre_secret',
}
)
data = response.json()
if data['success']:
vat = data['data']
if vat['valid']:
print(f"Numero TVA valide : {vat['countryCode']}{vat['vatNumber']}")
print(f"Entreprise : {vat['name']}")
print(f"Adresse : {vat['address']}")
else:
print("Numero de TVA invalide ou inactif")Exemple de réponse
200 OK
{
"success": true,
"data": {
"valid": true,
"countryCode": "BE",
"vatNumber": "0200065765",
"name": "SA BELGACOM",
"address": "BOULEVARD DU ROI ALBERT II 27\n1030 BRUXELLES",
"requestDate": "2026-04-17T10:00:00.000Z"
},
"timestamp": "2026-04-17T10:00:00.000Z"
}Codes d'erreur
400 Bad Request
Format du numero de TVA invalide400 Bad Request
{
"success": false,
"error": "Invalid VAT number format. Expected format: country code (2 letters) followed by digits, e.g. BE0200065765",
"timestamp": "2026-04-17T10:00:00.000Z"
}502 Bad Gateway
Le service VIES de la Commission europeenne est temporairement indisponible502 Bad Gateway
{
"success": false,
"error": "VIES service is currently unavailable. Please try again later.",
"timestamp": "2026-04-17T10:00:00.000Z"
}Mise en cache
Durée du cache: 24 heures
Notes
- Cet endpoint est un wrapper autour de l'API officielle VIES de la Commission europeenne (ec.europa.eu).
- Le numero de TVA doit inclure le prefixe pays (BE, FR, DE, NL, etc.). Tous les pays de l'UE sont supportes.
- Les resultats sont mis en cache pendant 24 heures pour eviter les appels redondants a VIES.
- Un numero valide mais inactif retournera valid: false avec name et address a null.
- Le service VIES peut etre temporairement indisponible (maintenance, surcharge). Dans ce cas, une erreur 502 est retournee.