
Leave, absence and time
SAP SuccessFactors to Deputy integration: employees, approved time off and balances from Employee Central in Deputy
With an integration between SAP SuccessFactors and Deputy, every employee from Employee Central appears automatically in Deputy, at their location and with their SuccessFactors ID on the agreement. Time off approved in SuccessFactors arrives in Deputy as approved leave in hours, together with the time account balance.
What the integration does
Organisations that have Employee Central as their HR foundation and use Deputy for teams with changing shifts enter new employees in Deputy by hand. The planner does not see time off and balances from SuccessFactors, so they sometimes schedule someone who is off.
- HR records a new employee or a different location in Employee Central.
- KoppelHet creates the employee in Deputy with a workplace per location and the SuccessFactors ID as payroll ID.
- Approved time off becomes approved leave in Deputy, with start and end time; cancelled time off is withdrawn.
- Daily, KoppelHet writes the balance of each time account to the matching leave rule in Deputy.
- After the end date from Employee Central, KoppelHet terminates the employee in Deputy.
What to watch for with SAP SuccessFactors and Deputy
- SuccessFactors stores both a number of days and a number of hours on each time off record. Deputy only works with hours, with a start and end time. KoppelHet uses the hours from SuccessFactors and places them from the start of the shift in Deputy, so a short day is also deducted as a short day.
- A time off request in SuccessFactors can be pending, approved, rejected or cancelled. Deputy by default puts leave arriving through the API up for approval. KoppelHet only takes over approved requests and sets them to approved in Deputy straight away, and withdraws the leave on a cancellation.
- In SuccessFactors a balance sits on a time account, and a time type can have several accounts, for example per year. Deputy has one balance per leave rule, and a new balance replaces the old one. KoppelHet adds up the open accounts per time type and writes the total in hours to Deputy.
- Setting the balance in Deputy through the API does not work for installs in the United Kingdom. For organisations with a Deputy install per country, KoppelHet skips balances there and only takes over time off and employees, so the integration runs as normal in other countries.
- Employee Central records a termination ahead of time with an end date. Deputy terminates an employee as soon as the instruction comes in. KoppelHet keeps the end date and only carries out the termination after that day, so planned shifts stay in place until the departure.
- Deputy attaches leave to a location, for availability and timesheets. In Employee Central an employee has one location on the job record. KoppelHet uses that location for the leave and moves leave falling after a transfer to the new location, so the new planner sees it.
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 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.
Frequently asked questions
Do approved timesheets go back to SuccessFactors?
Not in this integration. Hours go from Deputy to payroll per country; hours to SuccessFactors can be added later as an extension.
Can employees request leave in Deputy?
They can, but then it is not in SuccessFactors. We choose one place; with SuccessFactors as the leading system, that is SuccessFactors.
Does this also work with SuccessFactors Time Tracking?
The integration only uses Time Off. If you also use Time Tracking, we choose at the start where hours are recorded.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- SuccessFactors through the OData API v2 with OAuth 2.0 (SAML bearer assertion), filtered on lastModifiedDateTime. Entities PerPersonal, PerEmail, EmpEmployment, EmpJob (location, standardHours) and EmpEmploymentTermination; time off from EmployeeTime (approvalStatus, timeType, startDate, endDate, quantityInHours, quantityInDays) and balances from EmpTimeAccountBalance.
- Deputy through POST /api/management/v2/employees (firstName, lastName, primaryLocation, workplaces[].agreement.payrollId, externalId, startDate) and POST /api/v1/supervise/employee/{employeeid}/terminate. Leave through POST /api/v1/resource/Leave (Employee, LeaveRule, Company as location, DateStart, DateEnd, Start, End, Status 1); balance through POST /api/v1/resource/LeaveAccrual (Hours, TransactionDate), not for UK installs.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in SAP SuccessFactors | Field in Deputy | Notes |
|---|---|---|
userId / personIdExternal | workplaces[].agreement.payrollId en externalId | |
PerPersonal (firstName, lastName), PerEmail | firstName, lastName, contact.email1 | |
EmpJob.location | primaryLocation en workplaces[].location | Through a table of locations |
EmpEmployment.startDate | startDate | |
EmployeeTime (APPROVED), timeType | Leave met Status 1 en LeaveRule | |
EmployeeTime.quantityInHours | Start en End | |
EmpTimeAccountBalance | LeaveAccrual (Hours) | |
EmpEmploymentTermination.endDate | terminate na die datum |
Related
Ashby → SAP SuccessFactors
Ashby to SAP SuccessFactors integration: hire as a new employee in Employee Central
Bullhorn → SAP SuccessFactors
Bullhorn to SAP SuccessFactors integration: placements as employees or contingent workers in Employee Central
Carerix → SAP SuccessFactors
Carerix to SAP SuccessFactors integration: successful placement as a new employee in Employee Central
Greenhouse → SAP SuccessFactors
Greenhouse to SAP SuccessFactors integration: a hire as a new employee in Employee Central