
Leave, absence and time
Personio to Quinyx integration: employees and approved absences from Personio in the schedule
With an integration between Personio and Quinyx, new employees, changes, departures and approved absences from Personio reach Quinyx automatically, so planning schedules with the current staffing. KoppelHet puts approved time off in the schedule the same day and translates offices and contracts into units and agreements in Quinyx.
What the integration does
Organisations that manage time off in Personio and schedules in Quinyx often see approved leave in the schedule late. Leave approved in the morning for the same afternoon then only reaches the planner the next day, and someone is scheduled while on leave.
- HR records a new employee in Personio, with office, department and weekly hours. KoppelHet places the employee with an agreement in the right Quinyx unit.
- An employee requests time off in Personio and the manager approves it.
- KoppelHet sees the approval at the next check and puts the absence in Quinyx, in whole or half days or in hours.
- If the absence is moved or removed in Personio, KoppelHet adjusts the schedule right away.
- On departure KoppelHet sets the last working day in Quinyx.
What to watch for with Personio and Quinyx
- KoppelHet checks several times a day, so an afternoon off approved in the morning is in the schedule that same morning.
- Personio sends a notification when an absence is created, moved or deleted, but deliberately not on approval. Relying on notifications alone therefore misses the moment time off becomes final. KoppelHet therefore requests the absences changed since the previous round on a fixed interval and checks the approval status.
- Personio stores a time zone with every absence, while Quinyx returns times in UTC by default. For time off in hours KoppelHet converts the times, so a morning off at a German location does not shift by an hour.
- Absences in Personio are tracked in days or in hours, with half days at the start or end. Quinyx has a full absence and a partial absence from the start or the end of the shift. KoppelHet chooses the matching form per absence.
- Personio itself recommends keeping Personio as the source of truth for absences. KoppelHet therefore writes nothing back to Personio, so a change in the schedule does not overwrite the time off record.
- Personio also tracks attendance itself. If employees clock in Quinyx, attendance in Personio stays empty or is duplicated. KoppelHet keeps time recording in Quinyx and does not create attendance in Personio, unless you want that later as an extension.
- Personio calls a location an office, Quinyx works with units. An employee who helps out at a second location stays at their own office in Personio; in Quinyx they get an extra role there, so they can be scheduled in both.
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 worked hours go back to Personio?
Not in this integration. The hours usually go to payroll per country. That can be added later as an extension.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Personio is read through the Personio API v2 with client credentials. Absences through GET /v2/absence-periods with updated_at.gte and approval.status; days per period through /v2/absence-periods/{id}/breakdowns. Webhooks absence-period.created, absence-period.updated.timerange and absence-period.deleted; an approval does not trigger a webhook.
- Quinyx is written with employees through the Employees API v3 and roles through /hr/v3/role-assignments, agreements through wsdlUpdateAgreementsV2. Absences through the v2 Absences API (full or part-time with absenceRate and absenceRateDirection); Quinyx returns dates and times in UTC by default, with the Prefer header for another time zone.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Personio | Field in Quinyx | Notes |
|---|---|---|
Person id | badgeNumber | |
Voornaam en achternaam | personalInformation.firstName, lastName | |
E-mail | email | |
office | employment.homeGroupId | Through a table from Personio offices to Quinyx units |
weekly_working_hours | Contracturen (agreement) | |
Startdatum dienstverband | employment.employmentStartDate | |
Einddatum dienstverband | leaveDate | |
Absence period (approval.status APPROVED) | Absence | One Quinyx type per absence type |
starts_from en ends_at (met timezone_id) | Begin en einde van de absence |
Related
Ashby → Personio
Ashby to Personio integration: hires with hours and entity as new employees in Personio
Bullhorn → Personio
Bullhorn to Personio integration: placements as a person with employment in Personio
Carerix → Personio
Carerix to Personio integration: successful placement as a new employee in Personio
Greenhouse → Personio
Greenhouse to Personio integration: hired candidates as employees in Personio