SAP SuccessFactors logoSilae logo

Payroll integration

SAP SuccessFactors to Silae integration: the French legal entity from Employee Central as salarié and emploi in Silae

An integration between SAP SuccessFactors and Silae turns a hire at the French legal entity in Employee Central into a salarié with an emploi in the Silae dossier, with contract type, status and base salary, and closes the emploi on a termination. KoppelHet writes on the API account of the Silae partner that processes French payroll, because only partners get write access to employees.

What the integration does

Organisations that use Employee Central as their global HR system and have French payroll processed by a firm in Silae send every French hire to that firm as a form. Contract type and cadre or non-cadre status are then entered in Silae again, and a leaver in SuccessFactors sometimes only reaches the firm after the DSN.

  1. HR records a hire at the French legal entity in Employee Central.
  2. KoppelHet reads person, national ID, job and compensation data through OData, including entries with a future effective date.
  3. KoppelHet creates the salarié with one emploi in the Silae dossier of the French legal entity, based on the firm's model employee.
  4. Pay changes go to the same emploi; a termination sets the end date and reason on the emploi.
  5. Anything Silae rejects goes on a list for the firm and HR, with the error message.
SAP SuccessFactors → KoppelHet → SilaeSOURCESAP SuccessFactorsTARGETSilaeKoppelHetmapping · logging · monitoringSAP SuccessFactors → KoppelHet → SilaeSOURCESAP SuccessFactorsTARGETSilaeKoppelHetmapping · logging · monitoring
Out: Salarié with name and social security number · Emploi with contract type, professional status and weekly hours · Base salary per month or per hour · End date and reason for end of employment

What to watch for with SAP SuccessFactors and Silae

  • Silae only writes employees through the API model Usage interne RH (1B), which is reserved for Silae partners. A SuccessFactors customer therefore gets no write account of its own; KoppelHet works on the firm's account, which enables API access per Silae dossier.
  • Employee Central holds the French contract type as a picklist on the job information, Silae as a code, such as 01 for a CDI and 02 for a CDD. For a CDD Silae also asks for a reason and the duration in months. KoppelHet translates the customer's picklist into those codes and holds back a CDD when the reason is missing.
  • In Silae the contract start date must be on or before the start date of the emploi, otherwise Silae creates the salarié without an emploi. Employee Central supplies one start date on a hire; KoppelHet fills it into both fields, so there is never a salarié without an emploi in the dossier.
  • A termination from SuccessFactors lands in Silae as dateFin with a motifFinEmploi, such as 010 for resignation or 138 for a rupture conventionnelle. The event reasons in Employee Central are configured per customer; KoppelHet records the Silae code per reason and reports an unknown reason to the firm.
  • PerNationalId can hold numbers from several countries per person, and Silae wants a fifteen-character NIR with a valid key. KoppelHet only sends the number with country FRA and can let Silae derive civility and place of birth from it with calculerElementsNaissance.
  • Employee Central returns only today's entry by default. KoppelHet requests a French hire for next month with fromDate and toDate, so the salarié is already in Silae and the firm can send the DPAE on time.
  • Silae only updates a field when its matching b flag is true. On a pay change in SuccessFactors KoppelHet only sets the flags for salary and effective date, so status, collective agreement and other settings the firm manages in Silae stay in place.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Complex

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Does leave from SuccessFactors also go to Silae?

Not in the first version. Silae has an API for absences, but the counting depends on the dossier settings. That can be added later as an extension.

Who sends the DPAE?

The firm, by default. Silae can also send a DUE from the create call, but we only agree that if the firm wants it.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • SuccessFactors through OData v2: PerPerson, PerPersonal, PerNationalId, EmpEmployment, EmpJob (filter on company and lastModifiedDateTime, fromDate/toDate for future entries), EmpPayCompRecurring and EmpEmploymentTermination. OAuth 2.0 with SAML bearer assertion and a technical user that only reads the French legal entity.
  • Silae through https://payroll-api.silae.fr/payroll with the partner's OAuth 2.0 client credentials. First ListeSalarieEmplois for existing emploi IDs, then POST /v1/SalarieEmplois/CreationSalarieEmplois with numeroDossier, matriculeSalarieModele and identifiantEmploi 0 for a new emploi or the existing ID for a change. Dates as YYYY-MM-DD.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in SAP SuccessFactorsField in SilaeNotes
PerPerson.personIdExternalmatriculeSalarieKey; without a matricule the salarié cannot be reached through the API
PerPersonal.lastNamenomNaissanceRequired in Silae
PerPersonal.firstNameprenom
PerNationalId (country FRA)numeroSecuriteSocialeFifteen characters with a valid key
EmpJob.contractTypecodeContratTravail (01 CDI, 02 CDD)Lookup per customer
EmpJob.employeeClass of eigen veldcodeStatutCategoriel (cadre of non cadre)
EmpJob.startDate bij hiredateDebutContrat en dateDebut
EmpPayCompRecurring (basissalaris)salaireDeBase met salaireDeBaseEstHoraire
EmpEmploymentTermination.endDate en eventReasondateFin en motifFinEmploi

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.