Recherche de numéro KVK : le guide complet pour les développeurs
Rechercher des numéros KVK, automatiser les recherches et intégrer les données d'entreprises néerlandaises à votre application : exemples et pièges courants.
Le numéro KVK est la clé de chaque entreprise néerlandaise. Que vous construisiez un système de facturation, développiez une plateforme B2B ou enrichissiez des fiches d’entreprises, la recherche de numéros KVK est l’une des tâches les plus courantes pour les développeurs qui travaillent avec des données d’entreprises néerlandaises.
Dans ce guide, nous expliquons ce qu’est un numéro KVK, comment en rechercher un et comment automatiser tout le processus.
Qu’est-ce qu’un numéro KVK ?
Chaque entreprise immatriculée auprès de la chambre de commerce néerlandaise (Kamer van Koophandel) reçoit un numéro d’identification unique à huit chiffres. Ce numéro est attribué à l’immatriculation et ne change jamais pendant toute la vie de l’entité.
Caractéristiques essentielles du numéro KVK :
- Toujours exactement 8 chiffres
- Peut commencer par un ou plusieurs zéros (par ex.
01234567) - Unique par entité juridique, et non par établissement
- Différent du numéro d’établissement (vestigingsnummer), qui compte 12 chiffres
Remarque : un numéro KVK n’est pas un numéro de TVA. Le numéro de TVA néerlandais est dérivé du numéro d’identification fiscale et suit un autre format (NL123456789B01).
Où rechercher des numéros KVK ?
1. KVK.nl (manuel)
Le site officiel de la chambre de commerce propose une fonction de recherche sur kvk.nl. Vous pouvez chercher par nom d’entreprise, numéro KVK ou adresse. Cela convient bien aux recherches ponctuelles, mais ne se prête pas à l’automatisation.
2. API KVKBase (automatisée)
Avec KVKBase, vous pouvez rechercher des numéros KVK via une API REST simple. C’est idéal pour l’intégrer à votre application.
# Recherche par numéro KVK
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.kvkbase.nl/api/v1/lookup/12345678"
# Recherche par nom d'entreprise
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.kvkbase.nl/api/v1/search?q=Bol.com"
La réponse contient toutes les données publiques : nom commercial, adresse, forme juridique, codes SBI, et plus encore.
3. Exemple en JavaScript
Si vous travaillez depuis une application web, vous pouvez aussi appeler l’API avec fetch :
async function lookupKvk(kvkNumber) {
const response = await fetch(
`https://api.kvkbase.nl/api/v1/lookup/${kvkNumber}`,
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
}
}
);
if (!response.ok) {
throw new Error(`Lookup failed: ${response.status}`);
}
return response.json();
}
// Utilisation
const company = await lookupKvk('12345678');
console.log(company.handelsnaam); // "Voorbeeld BV"
console.log(company.adres); // Adresse complète
Erreurs courantes lors de la recherche de numéros KVK
1. Supprimer les zéros initiaux
L’une des erreurs les plus fréquentes consiste à stocker les numéros KVK sous forme d’entiers plutôt que de chaînes de caractères. Le numéro 01234567 devient alors 1234567, qui n’est plus un numéro KVK valide.
// Faux : ne stockez jamais les numéros KVK sous forme d'entiers
const kvkNumber = 01234567; // Devient 342391 (octal !) ou 1234567
// Correct : stockez toujours sous forme de chaîne
const kvkNumber = "01234567";
Dans votre base de données, utilisez une colonne VARCHAR(8) ou CHAR(8), jamais un type numérique.
2. Ne pas vérifier si l’entreprise est toujours active
Un numéro KVK peut appartenir à une entreprise radiée ou dissoute. Vérifiez toujours le statut de l’entreprise lorsque vous utilisez le numéro pour une facturation ou des contrats.
3. Confondre numéro KVK et numéro d’établissement
Le numéro d’établissement (vestigingsnummer, 12 chiffres) identifie un établissement précis d’une entreprise. Une entreprise peut avoir plusieurs établissements, chacun avec son propre numéro, mais tous partagent le même numéro KVK.
4. Aucune validation de la saisie
Avant d’effectuer un appel d’API, validez le format en local :
function isValidKvkFormat(kvkNumber) {
return /^\d{8}$/.test(kvkNumber);
}
Cela évite des appels d’API inutiles et donne un retour immédiat à l’utilisateur.
Automatisation : quand et pourquoi ?
Rechercher des numéros KVK à la main convient pour une seule entreprise, mais dès que vous traitez de plus gros volumes, vous voulez automatiser le processus. Scénarios typiques :
- Intégration des clients : récupérer automatiquement les données d’entreprise lors de l’inscription d’un client B2B
- Facturation : garantir une raison sociale et une adresse correctes sur les factures
- Enrichissement du CRM : compléter les fiches clients existantes avec des données KVK à jour
- Conformité : vérifier périodiquement que les entreprises sont toujours actives
Avec KVKBase, vous le faites en un seul appel d’API, numéro de TVA et adresse compris.
Cache et performances
Lorsque vous intégrez des recherches KVK à votre application, la mise en cache est essentielle. Les données d’entreprise ne changent pas souvent : un cache de 24 heures suffit dans la plupart des cas.
const cache = new Map();
const CACHE_TTL = 24 * 60 * 60 * 1000; // 24 heures
async function cachedLookup(kvkNumber) {
const cached = cache.get(kvkNumber);
if (cached && Date.now() - cached.timestamp < CACHE_TTL) {
return cached.data;
}
const data = await lookupKvk(kvkNumber);
cache.set(kvkNumber, { data, timestamp: Date.now() });
return data;
}
Conclusion
La recherche de numéros KVK est une brique fondamentale de toute application qui travaille avec des entreprises néerlandaises. En utilisant le bon format (chaîne et non entier), en validant la saisie et en appliquant une mise en cache intelligente, vous construisez une intégration fiable.
KVKBase propose une API rapide et bien documentée qui vous permet de démarrer en quelques minutes. Pas d’authentification complexe, pas d’analyse XML : juste une API REST simple qui renvoie du JSON.