DSN (Déclaration Sociale Nominative) has been mandatory in France since 2017 for all French employers. Every month, your ERP must generate a compliant file, transmit it to the Net-Entreprises portal, and handle rejection responses if they arise. In theory, simple. In practice, missing configuration parameters, unsynchronised HR data, and URSSAF rejections cost payroll teams several hours every single month.
This guide covers the technical prerequisites, monthly workflow, and DSN capabilities of the leading ERP platforms in the French market — so your next submission goes through cleanly on the first attempt.
What DSN is and why your ERP must handle it natively
Legal obligations and the DSN calendar
The Déclaration Sociale Nominative (DSN) was made mandatory by French decree n°2016-611 of 18 May 2016, with full rollout taking effect in January 2017 for the private sector. It replaced around forty separate social declarations: monthly URSSAF reporting, sick-leave pay certificates, secondment declarations, and more. Today, Net-Entreprises reports that DSN covers nearly 80 procedures and is used by more than 2.2 million companies employing 28 million workers (Net-Entreprises).
There are two types of DSN submission:
Monthly DSN: transmitted no later than the 5th of the following month for companies with 50 or more employees, or the 15th for smaller ones. It contains all payroll data for the period: contributions, remuneration, and contractual details.
Event notification: submitted within 5 calendar days of the triggering event. Main types: sick leave (illness, workplace accident), early return to work, end of contract with reason for termination. This notification triggers the payment of CPAM or France Travail benefits. A late submission creates a gap in the employee’s entitlements.
The filing deadline is non-negotiable: a late submission incurs a penalty of 1.5% of contributions due, with a minimum of €250 per missing declaration (URSSAF).
Native ERP payroll module versus specialist payroll software
The question most CFOs ask is straightforward: should you use the ERP’s native payroll module, or keep a specialist payroll solution (Silae, ADP, Cegedim RH) connected via an interface?
The answer depends on your company’s size and complexity. For an SME with fewer than 100 employees operating under a single collective agreement, the native payroll module in an ERP like Cegid XRP Flex or Sage 100 covers DSN without additional development. For a mid-market company with multiple collective agreements or multiple sites, a specialist payroll solution connected via API is often more reliable for collective agreement coverage and regulatory updates.
The central issue: in both cases, the DSN file is generated by the payroll software (native or third-party), but the source data comes from the ERP. Contracts, absences, variable pay elements — any desynchronisation between the ERP and the payroll software produces an inconsistent DSN.
The 5 prerequisites in your ERP before activating DSN
Configuring social organisations in the reference data
Before sending the first DSN, the ERP must know the exact recipient organisations:
- The URSSAF office linked to each establishment (including the workplace accident/occupational disease risk code)
- The supplementary pension fund (AGIRC-ARRCO)
- The provident and health insurance provider (with contract codes and contribution rates)
- The paid leave fund if applicable (construction, entertainment, port handling)
Each organisation is identified in the DSN by a SIRET number and a standardised organisation code. An error in this reference data is the single most common cause of first-submission rejections: the recipient organisation does not recognise the declaring company.
Before the first submission: compare the organisation codes in the ERP with the affiliation certificates sent by each organisation at the time of hiring or contract renewal.
EDI codes and DSN data flows
DSN is an XML file structured according to the NEODeS standard (Norme d’Echange par Ordre et Données Economiques et Sociales). The current version for 2026 is NEODeS 2026.1 (Net-Entreprises).
What the ERP must do:
- Generate a file compliant with the current standard (your vendor must update this engine with each normative revision)
- Transmit via EDI deposit to Net-Entreprises (FTPS protocol or via the Net-Entreprises REST API)
- Retrieve the business acknowledgements (CRM — Comptes Rendus Métier) returned by Net-Entreprises after processing
The critical point: the ERP generates and deposits the DSN, but final validation is carried out by the recipient organisations (URSSAF, pension funds). The Net-Entreprises acknowledgement confirms only the technical conformity of the file, not the acceptance of contributions. Business-level rejections arrive in the days that follow, in the CRM.
Synchronisation with HR data
DSN aggregates data from several ERP modules: payroll, HR, and time management. DSN quality depends directly on the quality of this synchronisation.
The fields most often inconsistent across modules:
- NIR (social security number): entered at the time of hiring, sometimes with a transcription error. An incorrect NIR prevents the employee from being identified in social organisation databases.
- Contract start and end dates: an end of contract recorded in HR but not passed to payroll generates a missing event notification.
- Absences: sick leave recorded in time management but not passed to payroll produces an incorrect contribution base.
- Collective agreement codes: a change of collective agreement not reflected in payroll results in incorrect contribution rates.
Best practice: set up automatic weekly reconciliation between the HR module and the payroll module in the ERP, before the monthly close. Some ERPs offer a pre-DSN data consistency dashboard. If yours does not, compensate with a manual control procedure covering NIR numbers, open contracts, and absences for the month.
The monthly DSN workflow in the ERP, from D-10 to D-5
Payroll preparation and contribution base review
At D-10 before the filing deadline, the monthly cycle must be launched. Key steps:
- Enter or import variable elements (overtime, bonuses, non-automated absences)
- Run HR/payroll reconciliation checks
- Run a preliminary payroll calculation to verify contribution bases
- Check the Social Security ceiling (PSS) for employees whose gross pay is close to the threshold
- Verify workplace accident/occupational disease rates if URSSAF has notified a rate change during the year
At D-7, run a pre-DSN consistency check: some ERPs include a pre-check module that flags anomalies (missing NIR, absent organisation code, negative contribution base). If this module is not available, exporting the key data to CSV and spot-checking a sample will catch the obvious errors before submission.
Generating the DSN file and pre-submission checks
At D-5, after payroll validation:
- Generate the DSN file from the ERP’s payroll module.
- Run a local syntax check if the ERP provides this tool (simulation before the live submission).
- Deposit the file on Net-Entreprises via the ERP’s EDI interface or the web portal.
- Keep the order number and deposit identifier returned by Net-Entreprises.
Net-Entreprises returns an immediate acknowledgement on the syntactic conformity of the file. Business checks (contribution consistency, employee identification) are carried out by the organisations in the following days.
Handling rejections: common errors and corrections
DSN rejections fall into two categories: technical rejections (malformed file) and business rejections (data inconsistent with the organisations’ reference databases).
Common technical rejections:
- Corrupt file or file size out of bounds: check that the export process was not interrupted.
- Company SIRET unknown in the Net-Entreprises register: verify the SIRET in the ERP’s configuration (sos-paie.fr).
- Correction submission sent without a prior normal submission: ensure that a monthly DSN has been submitted and accepted before sending a cancel-and-replace.
Common business rejections:
- Unknown NIR: the declared social security number matches no insured person in the CNAV databases. Common cause: a typing error at the time of hiring. Solution: compare the NIR against the employee’s Carte Vitale.
- Provident organisation not linked to the company: check that the provident contract was declared when it was set up.
- Contribution rate inconsistent with the declared workplace accident risk code: check whether URSSAF notified a rate change during the year.
The DSN correction rule: you never correct a past declaration directly. You regularise on the next monthly DSN by declaring the differences. If the correction is urgent (protecting an employee’s entitlements), a cancel-and-replace file can be sent within 5 calendar days of the initial DSN, subject to conditions defined by Net-Entreprises.
ERP and DSN: comparison of the main features
SAP HCM and SAP SuccessFactors Employee Central Payroll
SAP offers two approaches depending on company size. SAP HCM (on-premise or cloud via RISE with SAP) includes a France payroll engine natively configured for DSN, with regulatory updates delivered via the SAP HR Legal Change Package subscription. SuccessFactors Employee Central Payroll is the cloud SaaS version, recommended for new deployments since 2023.
Strengths: robustness for complex multi-establishment companies, native connectors with SAP S/4HANA for accounting flows. Watch point: regulatory updates require an implementation project for HCM on-premise clients, which creates a risk of lag between a update’s release and its actual deployment in your environment. For RISE with SAP clients, updates are automated.
Sage 100 Payroll and Cegid Payroll (in the context of the 2026 Cegid-Silae merger)
Sage 100 Payroll is one of the reference solutions in the French SME/mid-market. DSN is managed natively, with automatic regulatory updates in SaaS mode. The integration with Sage 100 Commercial Management and Sage 100 Accounting simplifies the reconciliation of social charges with cost-centre accounting.
Cegid Payroll (formerly Quadra Paie) covers a similar scope. In the context of the merger announced between Cegid and Silae in September 2026, valued at over €10 billion (Maddyness, September 2026), IT directors using both tools should monitor the convergence roadmap. The merger is expected to finalise in the first half of 2027 and no migration timeline has been communicated at this stage: existing contracts remain valid, but this is the right time to formalise your contractual commitments.
Odoo and agnostic platforms
Odoo has a Payroll module that can handle DSN via a community connector (the OCA module l10n_fr_hr_payroll). This connector does not benefit from the same level of regulatory maintenance as a dedicated commercial solution: each DSN normative update (moving to NEODeS 2026.1, for example) requires a module update, which may arrive later than the effective date.
Recommendation for companies running Odoo: use a specialist payroll solution (Silae, PayFit, Sage Payroll) connected via API to Odoo for variable pay elements, and let the payroll software manage DSN. This guarantees regulatory updates on time without depending on the open-source community’s release calendar.
7 questions to ask your vendor about DSN compatibility
Before signing a contract or renewal, ask these questions:
1. Which version of NEODeS is supported today, and when will the next regulatory update be available? A serious vendor gives you a precise date, not “as soon as possible.”
2. Does the DSN engine handle event notifications automatically, or do they have to be triggered manually? Sick-leave notifications within 5 calendar days are non-negotiable.
3. What is the procedure in the event of a rejection after the filing deadline? Your vendor must have a documented emergency correction process.
4. Does the ERP automatically retrieve business acknowledgements (CRM) from Net-Entreprises, or do you have to check the portal manually? Automatic retrieval prevents rejections from sitting unprocessed.
5. How are inter-period regularisations handled in the DSN? An overpayment or underpayment of contributions must be regularised in the next monthly DSN: verify that the engine handles this case without manual intervention.
6. Does the software support the “pay trigger date” reform planned for 2027? This structural change will require pay elements to be linked to the employment period rather than the payment date. The payroll engine architecture must be compatible to avoid an emergency rebuild.
7. What are the support SLAs on the day of the DSN deadline, if an anomaly blocks submission before midnight? A helpline reachable on the 5th or the 15th of the month in the evening is a legitimate requirement for any solution sold to companies with more than 50 employees.
To go further, see our comparison of payroll software for French mid-market companies and our guide on integrated HRMS versus a dedicated payroll module.