Siret bien géré
- Stocker en texte : conserver les zéros initiaux en base, éviter la conversion numérique et préserver l’intégrité des imports systématiquement.
- Afficher lisiblement : utiliser le masque Excel 000 000 000 00000 et le regroupement 3-3-3-5 pour faciliter la lecture.
- Valider systématiquement : appliquer regex puis contrôle mod10 (Luhn) côté serveur pour filtrer erreurs et ainsi sécuriser les imports.
Le numéro SIRET est composé de 14 chiffres (9 chiffres du SIREN suivis de 5 chiffres NIC) et se présente couramment en 3‑3‑3‑5 pour la lisibilité, par exemple 123 456 789 01234 ; ce plan explique le formatage Excel, la regex et la validation fiable pour usage administratif et base de données. Vous voyez ces suites numériques sur des factures et des formulaires et vous savez que la moindre erreur coûte du temps. Ce constat pose un double enjeu pratique pour les équipes comptables et IT : afficher proprement et stocker sans perte. On perd fréquemment des zéros initiaux quand le champ devient numérique et cela casse les imports automatiques. Une validation préventive évite des retours administratifs douloureux.
Le format et le formatage Excel et base de données pour afficher correctement le SIRET
Le SIRET combine le SIREN neuf chiffres et le NIC cinq chiffres pour former quatorze chiffres. Vous devez conserver ce champ en texte pour préserver les zéros initiaux et éviter la conversion automatique. Ce format lisible s’affiche souvent en groupes 123 456 789 01234 pour faciliter la lecture humaine. On stocke idéalement le SIRET en varchar ou texte dans la base pour maintenir l’intégrité des données. Le SIRET reste une chaîne texte
Le détail du SIREN NIC et du regroupement en 3-3-3-5 pour lisibilité
Vous comprenez que le SIREN identifie l’entreprise et sert d’identifiant national. La NIC localise l’établissement précis Ce format présenté 123 456 789 01234 sert d’exemple non réel pour l’affichage. Une séparation en affichage aide la lecture sur documents imprimés.
La méthode de formatage Excel personnalisé et stockage en texte pour zéros
Le format personnalisé Excel à utiliser est 000 000 000 00000 et il affiche les espaces. Vous pouvez aussi paramétrer Google Sheets avec un format similaire ou préfixer d’une apostrophe pour forcer texte. Ce choix évite la perte des zéros initiaux lors d’export CSV et conserve l’exactitude. On recommande le stockage en texte dans le CSV et la base SQL pour préserver l’intégrité.
| Élément | Longueur | Format lisible | Format Excel conseillé | Regex courte |
|---|---|---|---|---|
| SIREN | 9 | 123 456 789 | 000000000 | ^\\d{9}$ |
| NIC | 5 | 01234 | 00000 | ^\\d{5}$ |
| SIRET complet | 14 | 123 456 789 01234 | 000 000 000 00000 | ^(\\d{3}\\s?\\d{3}\\s?\\d{3}\\s?\\d{5})$ |
Le stockage correct ne dispense pas d’une vérification avant l’usage administratif. Vous combinez une vérification regex et un con
trôle mod10 pour fiabilité. Ce couple filtre la plupart des fautes de saisie et rend les imports sûrs. Une validation côté serveur reste la garantie finale avant insertion en base.
La validation fiable du numéro SIRET avec regex contrôle mod10 et snippets prêts
Le contrôle commence par une regex stricte pour valider le format avant calcul. Vous appliquez ensuite l’algorithme mod10 de type Luhn pour vérifier la clé finale. Ce duo évite les SIRET manifestement faux et les erreurs de frappe courantes. On place ces validations côté client et côté serveur pour rapidité et sécurité.
Le principe du chiffre de contrôle mod10 de type Luhn appliqué au SIRET
Le principe consiste à multiplier certains chiffres par deux et ajuster les résultats. Vous calculez la somme pondérée et comparez le résultat au dernier chiffre prévu. Ce dernier chiffre est la clé Une démonstration simple clarifie le calcul manuel pour transparence administrative. Le dernier chiffre valide ou invalide
Les regex et snippets JavaScript Python PHP pour valider et nettoyer les données
Vous testez d’abord le format avec la regex ^(\\d{3}\\s?\\d{3}\\s?\\d{3}\\s?\\d{5})$ pour accepter les espaces. Ce contrôle doit être suivi par une fonction Luhn qui traite la chaîne nettoyée des espaces. La regex stricte vérifie quatorze chiffres Une regex stricte ^\\d{14}$ convient pour vérification initiale sans espaces et sans séparateurs. La présentation ci dessous fournit des snippets prêts à copier pour serveur et client.
// JavaScript client simplefunction cleanSiret(s){return s.replace(/\\s+/g,'');}function isValidLuhn(s){ let sum=0; for(let i=0;i<14;i++){ let n=parseInt(s[13-i],10); if(i%2===1){n*=2; if(n>9)n-=9;} sum+=n; } return sum%10===0;}
# Python serveurdef cleansiret(s): return s.replace(' ','')def isvalidluhn(s): s=s[::-1] total=0 for i,c in enumerate(s): n=int(c) if i%2==1: n*=2 if n>9: n-=9 total+=n return total%10==0
// PHP serveurfunction cleansiret($s){return strreplace(' ','',$s);}function isvalid_luhn($s){ $s=strrev($s); $sum=0; for($i=0;$i<14;$i++){ $n=intval($s[$i]); if($i%2==1){$n*=2; if($n>9)$n-=9;} $sum+=$n; } return $sum%10===0;}
Le code nettoie puis valide
| Méthode | Usage typique | Avantage | Remarque |
|---|---|---|---|
| Regex strict | Validation front-end rapide | Filtre les formats incorrects | Ne vérifie pas le chiffre de contrôle |
| Contrôle mod10 (Luhn) | Validation logique côté client ou serveur | Détecte erreurs de saisie | Complément indispensable à la regex |
| Validation serveur (JS/Python/PHP) | Contrôle définitif avant insertion en base | Sécurité et intégrité des données | Fournir snippet et tests unitaires |
Vous trouverez ci dessous des conseils pratiques pour implémentation simple. Ce passage couvre stockage formatage validation et intégration en base. Le lecteur peut copier les snippets et tester rapidement en local. Une FAQ liée sur la vérification gratuite reste utile pour les cas étranges.
- Stocker le SIRET en texte sans spaces.
- Afficher avec masque 000 000 000 00000 pour lisibilité.
- Valider d’abord par regex puis par Luhn.
- Exécuter la vérification côté serveur avant insertion.
- Proposer un champ d’entrée qui nettoie les espaces.
Ce que personne ne vous dit souvent : les erreurs viennent plus de l’import que de la saisie. Vous testez vos règles avec jeux de données réels et cas limites pour détecter les patterns cassants. Le SIRET doit être validé systématiquement





