Le numéro SIRET est l’identifiant officiel d’un établissement en France. Il apparaît sur de nombreux documents administratifs et commerciaux, comme le Kbis, les factures ou les déclarations sociales. Comprendre sa composition et savoir le vérifier est utile pour les gestionnaires, les développeurs intégrant des formulaires, ou toute personne qui doit vérifier l’identité d’un établissement. Cet article explique de manière claire et progressive ce qu’est un SIRET, comment il se décompose, comment le formater et comment le valider techniquement et via des services officiels.
Composition : SIREN et NIC
Un SIRET contient quatorze chiffres. Il se compose de deux parties distinctes : le SIREN et le NILe SIREN est un numéro national à neuf chiffres attribué par l’INSEE qui identifie l’entreprise elle-même. Le NIC (Numéro Interne de Classement) comporte cinq chiffres et identifie l’établissement de cette entreprise, c’est-à-dire le site ou l’unité géographique particulière.
Le NIC commence généralement par 00001 pour le premier établissement d’une entreprise, puis s’incrémente pour chacun des établissements supplémentaires. Ainsi, une entreprise ayant plusieurs boutiques ou succursales aura le même SIREN pour tous ses établissements, mais un NIC différent pour chacun, ce qui rend le SIRET (SIREN + NIC) unique pour chaque établissement.
Format et présentation
Le SIRET peut être affiché sans séparation (par exemple 12345678900014) ou de façon lisible en groupes (par exemple 123 456 789 00014). Pour l’ergonomie, il est conseillé d’afficher le SIRET avec des espaces tous les trois chiffres pour le SIREN, puis laisser le NIC séparé ou continuer le regroupement si souhaité. Lors de la saisie dans un formulaire, il est préférable d’accepter les deux formats et de normaliser en supprimant les espaces avant toute validation.
Validation technique
La validation d’un SIRET peut se faire à plusieurs niveaux : vérification du format (14 chiffres), contrôle mathématique (algorithme de Luhn), et vérification dans la base Sirene de l’INSEE pour confirmer l’existence de l’établissement. Le contrôle de type Luhn permet de détecter la majorité des erreurs de saisie communes comme un chiffre en trop, une inversion ou une omission.
Voici les étapes de validation recommandées :
- Supprimer les espaces et caractères non numériques.
- Vérifier que la chaîne contient exactement 14 chiffres.
- Appliquer l’algorithme de Luhn sur la chaîne complète (ou vérifier séparément le SIREN si nécessaire).
- Interroger l’API Sirene (ou le site Sirene) pour confirmer que le SIRET correspond à un établissement enregistré et obtenir les métadonnées associées.
Exemples factices et recommandations d’usage
Pour les tests et le développement, il est crucial d’utiliser des numéros factices afin d’éviter d’exposer ou de réutiliser des identifiants réels. Voici quelques exemples factices qui ne correspondent à aucun établissement réel et qui sont destinés uniquement à des tests :
| Label | Format lisible | Format continu | Usage |
|---|---|---|---|
| Factice A | 123 456 789 00014 | 12345678900014 | Tests d’interface et de validation |
| Factice B | 987 654 321 00020 | 98765432100020 | Tests d’intégration et exemples pédagogiques |
| Factice C | 111 222 333 00033 | 11122233300033 | Documentation et jeux de données non productifs |
Important : n’utilisez jamais de SIRET réels dans des jeux de test publics ou partagés, et respectez la confidentialité et la réglementation en vigueur lorsque vous manipulez des identifiants réels.
Validation via l’API Sirene
L’INSEE met à disposition la base Sirene et une API publique qui permet de rechercher des établissements par SIREN, SIRET, raison sociale, code postal, etc. L’utilisation de cette API côté serveur permet de vérifier qu’un SIRET existe réellement et de récupérer des informations utiles : adresse, date de création, activité principale (NAF), état de diffusion, et plus encore. Pour les intégrations critiques, prévoyez la mise en cache des résultats et gérez les erreurs d’API (quotas, indisponibilité).
Snippet de validation (pseudocode)
// Exemple de validation simple en JavaScript (pseudocode)function nettoyer(s) { return s.replace(/\\D/g, '');}function luhnValide(numero) { let somme = 0; let double = false; for (let i = numero.length - 1; i >= 0; i--) { let ch = parseInt(numero[i], 10); if (double) { ch = ch index.php license.txt readme.html wp-activate.php wp-admin wp-blog-header.php wp-comments-post.php wp-config-sample.php wp-config.php wp-content wp-cron.php wp-includes wp-links-opml.php wp-load.php wp-login.php wp-mail.php wp-settings.php wp-signup.php wp-trackback.php xmlrpc.php 2; if (ch > 9) ch -= 9; } somme += ch; double = !double; } return somme % 10 === 0;}function estSiretValide(siret) { const n = nettoyer(siret); if (!/^[0-9]{14}$/.test(n)) return false; return luhnValide(n);}
Ce snippet illustre la logique basique. En production, combinez ce contrôle avec une requête vers l’API Sirene pour garantir l’existence et l’actualité des données.
Bonnes pratiques UX et sécurité
Pour une bonne expérience utilisateur, fournissez un champ de saisie qui accepte les espaces et met en forme automatiquement le SIRET pendant la saisie. Affichez des messages d’erreur clairs si le format est incorrect, si le contrôle Luhn échoue ou si l’API Sirene ne trouve pas l’établissement. Côté sécurité, loggez sans enregistrer de manière permanente les SIRET si cela n’est pas nécessaire, et conformez-vous aux règles de protection des données.
Le SIRET est un identifiant central pour repérer les établissements en France. Connaître sa structure (SIREN + NIC), savoir le formater et le valider via Luhn et l’API Sirene permet d’assurer la qualité des données et d’éviter des erreurs administratives. En développement, utilisez des exemples factices pour tester, automatisez la normalisation et la validation, et interrogez la source officielle pour confirmer l’existence d’un établissement avant toute action administrative ou commerciale.

