SAP SuccessFactors logoMicrosoft Dynamics 365 logo

HR to ERP

SAP SuccessFactors to Dynamics 365 integration: Employee Central workers in Microsoft's ERP

With an integration between SAP SuccessFactors and Microsoft Dynamics 365, every worker from Employee Central reaches Dynamics 365 automatically, in the right legal entity and with cost centre and department as dimensions. Changes go through on their effective date and a termination sets the employee to terminated in Dynamics, so no more hours or expenses can be booked.

What the integration does

Employers with SAP SuccessFactors Employee Central for HR and Dynamics 365 for accounting get a monthly export of new employees, which finance enters into Dynamics by hand. Someone who moves to another department or location mid-month keeps booking on the old cost centre for weeks.

  1. HR records a hire, transfer or departure in Employee Central, with an effective date.
  2. KoppelHet fetches the changed workers and reads which data applies on which date.
  3. On the effective date the worker lands in the Dynamics company of their legal entity, with cost centre and department.
  4. The manager from Employee Central becomes approver for hours and expenses.
  5. On departure KoppelHet sets the end date and the status terminated in Dynamics.
SAP SuccessFactors → KoppelHet → Microsoft Dynamics 365SOURCESAP SuccessFactorsTARGETMicrosoft Dynamics 365KoppelHetmapping · logging · monitoringSAP SuccessFactors → KoppelHet → Microsoft Dynamics 365SOURCESAP SuccessFactorsTARGETMicrosoft Dynamics 365KoppelHetmapping · logging · monitoring
Out: Employee with number, name and job title · Legal entity as company in Dynamics · Cost centre and department as dimension · Manager as approver · Hire and termination date

What to watch for with SAP SuccessFactors and Microsoft Dynamics 365

  • Company, cost centre and department are stored in Employee Central as external codes, such as 8500 for a company. Dynamics uses its own codes for companies and dimension values. KoppelHet records that translation once in a table finance can view.
  • Cost centres in SuccessFactors have a validity period; SuccessFactors rejects a job change dated outside that period. A dimension value in Business Central has no period. KoppelHet therefore compares on code and passes on what applies on the worker's effective date.
  • Someone can have two concurrent employments in Employee Central. In Dynamics 365 Finance that fits as two employments under one worker; in Business Central it is one employee per company, so with two employments in the same legal entity KoppelHet chooses the main one.
  • When asked for changes, SuccessFactors returns all valid rows, including rows that only start next month. Dynamics only knows the current state per employee. KoppelHet schedules such a future row and writes it on the day itself.
  • In Employee Central the manager is the user ID of another worker. In Business Central the time sheet approver is a Business Central user. KoppelHet looks up the right user for the manager ID; if the manager has no Dynamics account, finance gets a notice.
  • A transfer to another company is a change on the same worker in Employee Central. Because each legal entity has its own company in Dynamics, it becomes a termination in one company and a hire in the other, on the same date.
  • The integration only requests the legal entities in SuccessFactors that have a company in Dynamics. Workers in countries running another ERP stay out of scope.

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 · Basic

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

What if finance has not created a cost centre yet?

Then KoppelHet still creates the employee, but without that dimension, and finance gets a notice. As soon as the code exists, the integration fills it in.

Are salary or pay components included?

No. For hours and expenses Dynamics only needs the organisation data. Pay components stay in SuccessFactors and payroll.

Technical details for IT

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

  • Employee Central through the OData API (v2), first filtered on lastModifiedDateTime, then the effective-dated records with fromDate and toDate. Entities PerPersonal, EmpEmployment and EmpJob (company, costCenter, department, managerId, jobTitle). Authentication with OAuth 2.0 and a SAML bearer assertion.
  • FOCostCenter is effective dated with startDate as part of the key; an EmpJob with a startDate outside the cost centre's validity gives the error invalid external code (SAP KBA 2892425).
  • Business Central through API v2.0 per company - employees (status Active, Inactive or Terminated) and defaultDimensions with parentType Employee; dimensionValues are read-only. Dynamics 365 Finance through the Worker and Employment per company entities.

Which fields are transferred

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

Field in SAP SuccessFactorsField in Microsoft Dynamics 365Notes
userIdnumberOr personIdExternal; we choose one fixed key at the start
PerPersonal firstName, lastNamegivenName, surname
EmpJob jobTitlejobTitle
EmpEmployment startDateemploymentDate
EmpEmployment endDateterminationDate en status Terminated
EmpJob companyCompany (Business Central) of legal entity (Finance)Through a table of external codes
EmpJob costCenterdefaultDimensions (kostenplaats)
EmpJob departmentdefaultDimensions (afdeling)
EmpJob managerIdTime Sheet Approver User IDThrough the manager's Dynamics user

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.