

HR to ITSM
SAP SuccessFactors to Freshservice integration: requesters and requests from Employee Central
With an integration between SAP SuccessFactors and Freshservice, every employee from Employee Central becomes a requester in Freshservice with department, location and manager, and a hire with a future start date sets up an onboarding request straight away, just as a departure sets up an offboarding request. Freshworks has its own SuccessFactors connector with recipes for requesters, historical data, onboarding and offboarding; KoppelHet comes in when the integration must work with OAuth and read-only rights, or when job changes, multiple employments and custom termination reasons matter.
What the integration does
Organisations with SuccessFactors Employee Central and Freshservice as service desk run into the sign-in of Freshservice's SuccessFactors connector: it uses a username and password, a route SAP is closing. HR also does not want an account with rights to create employees and terminate them.
- HR records a hire in Employee Central, often weeks before the start date.
- KoppelHet sees the new job record, first creates the manager if they are not yet a requester, and then the new employee.
- The onboarding request is submitted on behalf of the manager, with start date, job title, department and location.
- A job change or transfer produces a service request for access and workplace on the effective date.
- A termination produces an offboarding request with the reason; after the end date the requester is deactivated.
What to watch for with SAP SuccessFactors and Freshservice
- Freshservice's SuccessFactors connector asks for a username and password. SAP is ending sign-in to its APIs with username and password and names OAuth as the replacement. KoppelHet reads Employee Central with OAuth, so the integration does not stop when SAP closes that route.
- For the connector the account needs admin rights on employee management, including creating, updating and terminating. KoppelHet only asks for read rights in SuccessFactors on the data the service desk uses.
- A hire is in Employee Central with the future start date as its effective date. KoppelHet sees that record straight away and submits the onboarding request as soon as the hire is recorded, while the requester's department and job only change on the start date.
- Termination reasons in SuccessFactors are customer-specific codes. KoppelHet translates them to the separation types in Freshservice's offboarding form, so a summary dismissal gets a different kit than retirement.
- Someone with a second employment in another country has two user IDs but one person ID in SuccessFactors. In Freshservice that becomes one requester; the end of one employment does not yet produce an offboarding request.
- In Freshservice the manager must already exist as a requester before they can be linked to an employee or submit a request. If the manager comes from a country outside this service desk, KoppelHet still creates them as a requester, without an onboarding request.
- A change that takes effect next month is already in SuccessFactors now. KoppelHet only updates the requester on the effective date, so Freshservice does not run ahead of a transfer that does not yet apply.
This integration is also part of joiner, mover, leaver.
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 we need SAP Integration Suite?
No. KoppelHet reads directly from the SuccessFactors OData API. An existing integration platform is left alone.
Do employees from all countries end up in Freshservice?
Only the companies that belong to this service desk. Managers from other countries are added as requesters, without requests.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- SuccessFactors Employee Central is read through the OData API (v2) on lastModifiedDateTime, with OAuth 2.0 (SAML bearer assertion) and a read-only role. Entities PerPerson (personIdExternal), PerPersonal, PerEmail, EmpEmployment and EmpJob (effective-dated with startDate, eventReason, department, location and managerId as userId), plus FODepartment and FOLocation.
- Freshservice is written through the Freshservice API v2: requesters (with department_ids, location_id, reporting_manager_id and custom_fields; deactivated after departure), POST /api/v2/onboarding_requests and /api/v2/offboarding_requests with initiator_id, and place_request for a catalog item on a job change. A request on behalf of someone else requires an administrator's API key.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in SAP SuccessFactors | Field in Freshservice | Notes |
|---|---|---|
PerPerson.personIdExternal | Eigen aanvragersveld (custom_fields) | May contain letters; external_id in Freshservice is a number for SCIM |
PerPersonal (voornaam, achternaam) | first_name en last_name | |
PerEmail (zakelijk) | primary_email | |
EmpJob.jobTitle | job_title | |
EmpJob.department (FODepartment) | department_ids | |
EmpJob.location (FOLocation) | location_id | |
EmpJob.managerId | reporting_manager_id en initiator_id | Through the manager's userId |
EmpJob.startDate bij een aanname | Onboardingverzoek (cf_date_of_joining) | |
EmpJob.eventReason bij beëindiging | Offboardingverzoek (cf_separation_type) | Through a table of your own event reasons |
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