Le package R validinsee permet de valider certaines données produites par l’Insee, en particulier la conformité de numéros Siren ou Siret.

Installation

# install.packages("remotes")
remotes::install_github("InseeFrLab/validinsee")

Chargement

Validité de numéros SIREN ou SIRET

La fonction validation_siren vérifie si les éléments d’un vecteur sont des SIREN valides (identifiant de l’entreprise formé de 9 caractères) :

validation_siren(c("200034528", "200034582", NA))
#> [1]  TRUE FALSE    NA

La fonction validation_siret vérifie si les éléments d’un vecteur sont des SIRET valides (identifiant de l’établissement formé de 14 caractères) :

validation_siret(c("20003452800014", "20003452800041", NA))
#> [1]  TRUE FALSE    NA

Règles de validation

La vérification se base sur la formule de Luhn.

  • un SIREN est valide si sa somme de Luhn est un multipe de 10 ;

  • un SIRET est valide si sa somme de Luhn est un multipe de 10 et si la somme de Luhn de son SIREN (9 premiers chiffres) est un multiple de 10 ;

  • un SIRET de La Poste (SIREN 356000000) ne respectant pas la règle ci-dessus fait l’objet d’un traitement différencié : il est valide si la somme des chiffres le composant est un multiple de 5.