Personio logoManageEngine ServiceDesk Plus logo

HR to ITSM

Personio to ServiceDesk Plus integration: requesters with manager and requests for joiners and leavers

With an integration between Personio and ManageEngine ServiceDesk Plus, every employee from Personio becomes a requester in ServiceDesk Plus, with department, job and manager, and KoppelHet creates a request from that office's template when someone joins or is terminated in Personio. The last working day from Personio becomes the deadline of the offboarding request.

What the integration does

Organisations with Personio for HR and ServiceDesk Plus for IT often let managers register a new colleague themselves through the portal. The form differs per office, the start date does not always match Personio, and a contract extension sometimes still triggers an offboarding request.

  1. Personio reports a new person or a changed employment; KoppelHet fetches the newest employment.
  2. KoppelHet creates or updates the requester, with the Personio ID as employee_id and the supervisor as manager.
  3. Within the onboarding lead time KoppelHet creates the onboarding request from the office's template.
  4. A termination produces an offboarding request with the last working day as deadline.
  5. A task in that request has the service desk disable the requester after the end date.
Personio → KoppelHet → ManageEngine ServiceDesk PlusSOURCEPersonioTARGETManageEngine ServiceDesk PlusKoppelHetmapping · logging · monitoringPersonio → KoppelHet → ManageEngine ServiceDesk PlusSOURCEPersonioTARGETManageEngine ServiceDesk PlusKoppelHetmapping · logging · monitoring
Out: Requester with work email, job and department · Manager with approval right · Onboarding request per office · Offboarding request with the last working day as deadline

What to watch for with Personio and ManageEngine ServiceDesk Plus

  • An extension produces a new employment in Personio, and Personio returns employments with the most recent first. KoppelHet only looks at that newest employment, so the end date of an expired contract does not create an offboarding request in ServiceDesk Plus.
  • In ServiceDesk Plus a requester's status can only be read through the API. KoppelHet therefore puts a task in the offboarding request to disable the requester after the end date, and checks the following night whether that has been done.
  • The supervisor from Personio becomes the requester's manager, and gets the right to approve service requests in ServiceDesk Plus. The approval for an extra licence thus goes to the manager listed in Personio.
  • Each office in Personio gets its own site and onboarding template in ServiceDesk Plus. KoppelHet picks the template that belongs to the office of the new employment, so the workplace is set up by the team at that location.
  • On a termination Personio has a last working day that can be earlier than the end date. KoppelHet sets the last working day as deadline in the offboarding request, in milliseconds as ServiceDesk Plus requires, so laptop and badge come back on time.
  • Personio distinguishes internal and external employees. KoppelHet puts that in a custom user field of ServiceDesk Plus, so the service desk sees in the request that an external does not get an organisation laptop.
  • Not every change to standard fields in Personio sends a webhook. KoppelHet therefore compares all active employments with the requesters in ServiceDesk Plus every night, so for example a new job title is there the next morning.

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, 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 happens on a contract extension?

Nothing in ServiceDesk Plus. KoppelHet looks at the newest employment, so the requester stays active and no offboarding request is created.

Technical details for IT

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

  • Personio through webhooks (Person.created, Person.updated, Employment.created, Employment.updated) and the Personio API v2 (GET /v2/persons/{id}/employments, most recent first; position.title, supervisor.id, office.id, org_units, type, status and termination.last_working_day).
  • ServiceDesk Plus through the v3 API: users with employee_id, name, email_id, login_name, jobtitle, department, reporting_to, service_request_approver and user_udf_fields; status is read-only. Requests through POST /api/v3/requests with subject (required), requester (email_id), template, site, group and due_by_time in milliseconds since 1970.

Which fields are transferred

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

Field in PersonioField in ManageEngine ServiceDesk PlusNotes
person.idemployee_idUnique per requester
Voornaam en achternaamname
Werk-e-mailadresemail_id en login_name
position.titlejobtitle
org_units (type department)department
supervisor.idreporting_to, en service_request_approver op de supervisor
office.idsite en template van het request
type (INTERNAL of EXTERNAL)user_udf_fields (soort medewerker)
termination.last_working_daydue_by_time van het offboardingrequest

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.