Barèmes URSSAF 2026 mis à jour — Simulez votre bulletin dès maintenant
bulletin-paie.com

Structure du Fichier DSN — Blocs NEODeS S10 à S90

Le fichier DSN est un fichier texte structuré selon la norme NEODeS (Norme d'Échange Optimisée des Données Sociales). Il est organisé en blocs hiérarchiques identifiés par des préfixes (S10, S20, S21, S80, S89, S90). Chaque bloc contient un ensemble de rubriques décrivant un aspect spécifique de la déclaration : émetteur, établissement, salarié, contrat, rémunération, cotisations.

Comprendre cette structure est essentiel pour diagnostiquer les anomalies de transmission et interpréter les comptes-rendus métier (CRM) renvoyés par les organismes.

Vue d'ensemble de la structure

Un fichier DSN suit toujours le même schéma : un envoi (S10) contient une ou plusieurs déclarations (S20), chaque déclaration contient les données d'un établissement et de ses salariés (S21), suivies des totaux de contrôle (S80, S89, S90).

S10

S10 — Envoi

En-tête de l'envoi. Identifie l'émetteur (logiciel, concentrateur ou tiers déclarant), le type de déclaration et la norme utilisée.

S20

S20 — Déclaration

En-tête de la déclaration. Identifie le type (DSN mensuelle, signalement arrêt, signalement fin de contrat), la fraction déclarée et la période.

S21

S21 — Établissement / Individu

Cœur de la DSN. Contient les données de l'établissement déclarant et de chaque salarié : identité, contrat, rémunération, cotisations individualisées.

S44

S44 — Agrégé établissement (ancien)

Bloc historique (maintenu pour compatibilité). Contient des agrégats de cotisation au niveau établissement. Progressivement remplacé par les blocs S21.

S80

S80 — Identification DSN

Récapitulatif de la déclaration. Contient le nombre d'individus déclarés, le nombre de blocs et la date de constitution du fichier.

S89

S89 — Récapitulatif déclaration

Bilan quantitatif de la déclaration pour contrôle d'intégrité : nombre d'individus, total brut, total cotisations.

S90

S90 — Total envoi

Pied de fichier. Contient le nombre total de déclarations (S20) incluses dans l'envoi.

Hiérarchie des blocs

Les blocs sont imbriqués selon une hiérarchie stricte. Un bloc enfant ne peut exister sans son bloc parent. Voici l'arborescence simplifiée d'une DSN mensuelle :

S10 ─ Envoi
│
├── S20 ─ Déclaration
│   │
│   ├── S21.G00.06 ─ Établissement
│   │   ├── S21.G00.11 ─ Versement OPS
│   │   ├── S21.G00.15 ─ Adhésion prévoyance
│   │   └── S21.G00.22 ─ Bordereau cotisation agrégée
│   │
│   ├── S21.G00.30 ─ Individu (salarié 1)
│   │   ├── S21.G00.40 ─ Contrat
│   │   │   ├── S21.G00.51 ─ Rémunération
│   │   │   ├── S21.G00.52 ─ Prime
│   │   │   ├── S21.G00.53 ─ Activité
│   │   │   ├── S21.G00.60 ─ Arrêt de travail
│   │   │   ├── S21.G00.62 ─ Fin de contrat
│   │   │   ├── S21.G00.65 ─ Lieu de travail
│   │   │   ├── S21.G00.70 ─ PAS
│   │   │   ├── S21.G00.78 ─ Base assujettie
│   │   │   ├── S21.G00.81 ─ Cotisation individuelle
│   │   │   └── S21.G00.85 ─ Versement individu
│   │   └── ...
│   │
│   ├── S21.G00.30 ─ Individu (salarié 2)
│   │   └── ...
│   │
│   └── S21.G00.30 ─ Individu (salarié N)
│
├── S80 ─ Identification DSN
├── S89 ─ Récapitulatif
└── S90 ─ Total envoi

Détail des blocs principaux

S10 — Envoi

Le bloc S10 est le premier bloc du fichier. Il identifie le logiciel émetteur, le type d'envoi (normal ou test) et le concentrateur éventuel. C'est l'enveloppe technique de la déclaration.

Référence Contenu
S10.G00.00

Envoi

Nom du logiciel · Éditeur · Numéro de version · Code envoi (01=normal, 02=test)

S10.G00.01

Émetteur

SIREN · NIC · Nom · Adresse · Contact

S10.G00.02

Contact émetteur

Nom · Prénom · Adresse e-mail · Téléphone

S20 — Déclaration

Le bloc S20 identifie la nature de la déclaration (mensuelle, signalement arrêt, FCTU), son type (normale, annule et remplace, néant) et la période concernée. Un envoi peut contenir plusieurs déclarations S20, par exemple si l'entreprise a plusieurs établissements.

Référence Contenu
S20.G00.05

Déclaration

Nature (01=DSN mensuelle, 02=signalement arrêt, 04=FCTU) · Type (01=normale, 02=annule et remplace, 03=néant) · Fraction · Numéro d'ordre · Date du mois déclaré

S20.G00.07

Contact déclaration

Nom · Prénom · E-mail · Téléphone

S21 — Établissement / Individu

Le bloc S21 constitue le cœur de la DSN. Il contient toutes les données de l'établissement déclarant et de chaque salarié. C'est le bloc le plus volumineux et le plus complexe, avec plus de 20 sous-blocs couvrant l'identité, le contrat, la rémunération, les cotisations et le prélèvement à la source.

Référence Contenu
S21.G00.06

Établissement

SIRET · Effectif · IDCC convention collective · Adresse · Code APE/NAF

S21.G00.11

Versement OPS (Organisme de Protection Sociale)

Code organisme · BIC · IBAN · Montant versé

S21.G00.15

Adhésion prévoyance

Référence contrat · Code organisme · Code population

S21.G00.22

Bordereau de cotisation agrégée

Identifiant organisme · Date début/fin période · CTP · Montant assiette · Montant cotisation

S21.G00.30

Individu (identité)

NIR · Nom de naissance · Nom d'usage · Prénoms · Date de naissance · Lieu de naissance

S21.G00.40

Contrat

Numéro de contrat · Date de début · Nature de contrat · Statut conventionnel · Quotité de travail · Modalité temps de travail · Code complément PCS-ESE

S21.G00.51

Rémunération

Date début/fin période · Montant · Type (01=rémunération brute, 02=salaire brut soumis, 10=net fiscal, etc.)

S21.G00.52

Prime / gratification / indemnité

Type · Montant · Date de versement

S21.G00.53

Activité

Type (01=travail, 02=maladie, 03=AT, etc.) · Mesure (heures/jours) · Quantité

S21.G00.54

Autre suspension

Motif (congé parental, sabbatique, etc.) · Date début/fin

S21.G00.60

Arrêt de travail

Motif (01=maladie, 02=maternité, etc.) · Date dernier jour travaillé · Date de fin prévisionnelle · Subrogation

S21.G00.62

Fin de contrat

Motif de rupture · Date de fin · Date de notification · Dernier jour travaillé et payé

S21.G00.63

Préavis

Date début/fin · Préavis effectué (oui/non)

S21.G00.65

Lieu de travail

Code commune INSEE · Code postal · Pays

S21.G00.70

PAS (prélèvement à la source)

Taux PAS · Type de taux (01=barème, 02=personnalisé, 03=neutre) · Montant retenu · Identifiant fiscal

S21.G00.71

Régularisation PAS

Mois de rattachement · Montant · Taux

S21.G00.78

Base assujettie

Code composant (01=plafonnée, 02=déplafonnée, 03=CSG, etc.) · Date début/fin · Montant

S21.G00.79

Composant de base assujettie

Code · Montant · Identifiant technique

S21.G00.81

Cotisation individuelle

Code cotisation · Identifiant organisme · Montant assiette · Montant salarié · Montant employeur · Taux salarié · Taux employeur

S21.G00.82

Cotisation établissement

Code · Identifiant organisme · Assiette · Montant

S21.G00.85

Versement individu

Date de versement · Rémunération nette fiscale · Montant net versé · Montant PAS · Taux PAS

S80 / S89 / S90 — Totaux et contrôle

Les blocs de fin de fichier servent au contrôle d'intégrité. Ils contiennent des compteurs et des totaux permettant de vérifier que le fichier a été transmis intégralement et que les données sont cohérentes.

S80

Identification DSN

Récapitulatif de la déclaration. Contient le nombre d'individus déclarés, le nombre de blocs et la date de constitution du fichier.

S89

Récapitulatif déclaration

Bilan quantitatif de la déclaration pour contrôle d'intégrité : nombre d'individus, total brut, total cotisations.

S90

Total envoi

Pied de fichier. Contient le nombre total de déclarations (S20) incluses dans l'envoi.

Exemple de fichier DSN

Voici un extrait simplifié d'un fichier DSN mensuel pour un établissement avec un salarié. Les données sont fictives mais respectent le format NEODeS. Chaque ligne suit le format référence,'valeur'.

S10.G00.00.001,'01'
S10.G00.00.002,'QuickDSN'
S10.G00.00.003,'Quick'
S10.G00.00.004,'4.2.1'
S10.G00.00.005,'01'
S10.G00.00.006,'2601'
S10.G00.01.001,'123456789'
S10.G00.01.002,'00012'
S10.G00.01.005,'SARL DUPONT SERVICES'
S20.G00.05.001,'01'
S20.G00.05.002,'01'
S20.G00.05.003,'01'
S20.G00.05.004,'01'
S20.G00.05.005,'012026'
S20.G00.05.010,'12345678901234'
S21.G00.06.001,'12345678901234'
S21.G00.06.002,'015'
S21.G00.30.001,'1850175012345'
S21.G00.30.002,'MARTIN'
S21.G00.30.004,'JEAN'
S21.G00.30.006,'15011985'
S21.G00.40.001,'00001'
S21.G00.40.007,'01'
S21.G00.40.008,'01'
S21.G00.40.009,'01012020'
S21.G00.51.001,'012026'
S21.G00.51.002,'3126012026'
S21.G00.51.011,'3000.00'
S21.G00.51.012,'001'
S21.G00.78.001,'01'
S21.G00.78.004,'3000.00'
S21.G00.81.001,'100'
S21.G00.81.004,'3000.00'
S21.G00.85.001,'2526012026'
S21.G00.85.002,'2345.67'
S21.G00.85.003,'2200.45'
S80.G01.00.001,'001'
S89.G00.91.001,'001'
S90.G00.90.001,'001'

Un fichier DSN réel est beaucoup plus volumineux : il contient l'ensemble des rubriques obligatoires pour chaque salarié, incluant toutes les bases assujetties et cotisations individuelles. Les logiciels de paie conformes comme QuickDSN génèrent automatiquement ce fichier.

Format des données

Chaque ligne du fichier DSN contient une seule rubrique au format :

S21.G00.40.007,'01'

Où :

Élément Description
S21 Groupe de blocs (S10, S20, S21, S80, S89, S90)
G00 Sous-groupe fonctionnel
40 Numéro de bloc (identifie le type d'information)
007 Numéro de rubrique dans le bloc
'01' Valeur (entre quotes simples)

Règles de formatage

  • Les dates sont au format JJMMAAAA (ex : 15012026 pour le 15 janvier 2026)
  • Les montants sont en euros avec 2 décimales, séparateur point (ex : 3000.00)
  • Les valeurs textuelles sont entre quotes simples (ex : 'MARTIN')
  • L'encodage est ISO 8859-1 (latin1), pas UTF-8
  • Le séparateur entre référence et valeur est une virgule
  • Chaque ligne se termine par un retour chariot (CR/LF)

Attention à l'encodage : le fichier DSN utilise l'encodage ISO 8859-1 (Latin-1), et non UTF-8. Les caractères accentués non conformes à cet encodage provoquent des rejets à la transmission.

FAQ

Questions fréquentes sur la structure DSN

Combien de lignes contient un fichier DSN typique ?
Cela dépend du nombre de salariés. Pour une entreprise de 10 salariés, un fichier DSN mensuel contient typiquement entre 500 et 1 500 lignes. Pour 50 salariés, comptez entre 2 500 et 7 000 lignes. Chaque salarié génère entre 50 et 150 lignes selon la complexité de sa situation (multi-contrats, primes, cotisations spécifiques).
Peut-on ouvrir et lire un fichier DSN avec un éditeur de texte ?
Oui, le fichier DSN est un fichier texte plat (extension .dsn) au format CSV simplifié. Chaque ligne suit le format référence,'valeur'. Vous pouvez l'ouvrir avec n'importe quel éditeur de texte (Notepad, VS Code, etc.). Cependant, l'interprétation des données nécessite la connaissance du cahier technique NEODeS.
Le bloc S21.G00.81 est-il obligatoire pour chaque cotisation ?
Oui, depuis la phase 3 de la DSN, les cotisations individuelles (bloc S21.G00.81) sont obligatoires. Chaque cotisation due par le salarié et l'employeur doit être ventilée individuellement : URSSAF, retraite complémentaire, prévoyance, mutuelle. Cela permet aux organismes de recevoir directement les montants qui leur sont dus.
Quelle est la différence entre S21.G00.78 et S21.G00.79 ?
Le bloc S21.G00.78 (base assujettie) déclare les assiettes de cotisation mensuelles du salarié (plafonnée, déplafonnée, CSG-CRDS, etc.). Le bloc S21.G00.79 (composant de base assujettie) détaille la décomposition de cette assiette quand elle résulte de plusieurs composants (par exemple, décomposition entre base normale et rappel de salaire).
Quelle version de la norme NEODeS est en vigueur ?
La norme évolue annuellement. Chaque version est identifiée dans le bloc S10 de l'envoi. Le passage à une nouvelle norme est annoncé plusieurs mois à l'avance sur dsn-info.fr. Les logiciels conformes sont mis à jour automatiquement. Vérifiez la version en vigueur sur le portail net-entreprises.fr.

QuickDSN

Déclaration Sociale Nominative gratuite. Bulletins conformes en option.