Verlof, verzuim en uren
Personio Planday koppeling: medewerkers, eigen velden, contracturen, afwezigheid en saldi uit Personio in Planday
Met een koppeling tussen Personio en Planday komen medewerkers, hun personeelsnummer uit een eigen veld, contracturen en goedgekeurde afwezigheid uit Personio in Planday, op het juiste portaal en de juiste afdeling. KoppelHet houdt daarnaast de verlofsaldi in Planday gelijk aan Personio, zodat de planning met de actuele uren en saldi rekent.
Wat de koppeling doet
Organisaties die HR in Personio voeren en in Planday roosteren, zetten medewerkers, het personeelsnummer voor de salarisverwerking, contracturen en saldi vaak met de hand over, terwijl de planning daar wel mee rekent.
- HR maakt in Personio een medewerker aan of wijzigt zijn office, afdeling of weekuren.
- KoppelHet bepaalt het Planday-portaal en de afdeling, en maakt de medewerker aan met het personeelsnummer uit Personio als salarisnummer.
- De weekuren worden uren per maand en een contractregel in Planday.
- Afwezigheid die in Personio is goedgekeurd, wordt in Planday ingediend en goedgekeurd; een verwijderde afwezigheid wordt ingetrokken.
- Dagelijks boekt KoppelHet het verschil tussen het saldo in Personio en in Planday als correctie op de verlofrekening.
Waar je op let bij Personio en Planday
- Het personeelsnummer voor de salarisverwerking staat in Personio vaak in een eigen veld. KoppelHet zet dat nummer als salarisnummer in Planday, zodat uren uit Planday bij de salarisverwerking op het goede nummer binnenkomen.
- Personio kent per dienstverband de weekuren en de uren van een voltijdweek. Planday legt werkuren per maand vast en wijst een contractregel toe die op het portaal moet bestaan. KoppelHet rekent de weekuren om naar maanduren en kiest de contractregel die bij die uren hoort.
- Personio stuurt geen melding als een afwezigheid wordt goedgekeurd, alleen bij aanmaken, verschuiven en verwijderen. KoppelHet vraagt daarom elke paar minuten de afwezigheden op die sinds de vorige ronde zijn gewijzigd en zet alleen goedgekeurde in Planday. Een aanvraag waarvan verwijdering nog wacht op goedkeuring, blijft in het rooster tot die definitief weg is.
- Personio geeft bij een afwezigheid aan of die in de eerste of tweede helft van de dag begint of eindigt. Planday rekent bij een concept-aanvraag zelf de registratie per dag uit op basis van de verlofrekening. KoppelHet past de eerste en laatste dag van dat concept aan op het dagdeel uit Personio voordat de aanvraag wordt ingediend.
- Personio raadt aan Personio leidend te houden voor afwezigheid. Planday neemt saldi niet als vast getal over, maar wel als correctie op een opbouwrekening met een eigen referentie. KoppelHet boekt dagelijks het verschil met het Personio-saldo, zodat medewerkers in de Planday-app hetzelfde saldo zien zonder dat Planday terugschrijft.
- Planday kan medewerkervelden verplicht maken. KoppelHet vult die velden, uit Personio of met een vaste waarde per portaal, zodat de verplichte velden die de vestigingen gebruiken verplicht kunnen blijven.
- Bij een vertrek in Personio geeft KoppelHet de laatste werkdag als laatste actieve dag aan Planday en laat de diensten daarna loskoppelen. Die diensten komen open te staan, zodat de vestiging ziet welke diensten na het vertrek nog ingevuld moeten worden.
Hoe we het bouwen en beheren
- De koppeling draait op het KoppelHet platform, gehost in een datacenter in de EU.
- Elke synchronisatie en elke fout is zichtbaar in de functionele logging; bij een fout krijgt jullie beheerder een melding.
- Een mutatie die niet door kan, wordt niet half doorgezet maar klaargezet om opnieuw te proberen.
- KoppelHet is ISO 27001-gecertificeerd. Gegevens gaan versleuteld over en blijven niet langer op het platform dan nodig.
- Na livegang beheren wij de koppeling en passen we hem aan als jullie proces verandert.
- De koppeling past naast je bestaande integratielaag. Alleen de velden uit het ontwerp gaan over; het platform houdt geen eigen registratie bij.
Implementatie en prijs
Dit is geen app die je aanzet. We bouwen de koppeling voor jullie organisatie op ons platform, met bouwstenen die we steeds opnieuw gebruiken. Zo is het maatwerk, zonder dat we bij nul beginnen.
Een consultant bereidt de intake voor en analyseert beide systemen. Daarna leggen we de mapping en uitzonderingen per veld vast, testen we in de test- of acceptatieomgeving en gaan we live op een moment dat jij kiest. De kosten bestaan uit een eenmalig bedrag voor de inrichting en een maandbedrag voor platform, monitoring en beheer.
Veelgestelde vragen
Gaan gewerkte uren uit Planday naar Personio?
Niet in deze koppeling. Uren gaan van Planday naar de salarisverwerking; aanwezigheid in Personio kan later als uitbreiding.
Wat als een office geen afdeling in Planday heeft?
Dan wordt de medewerker niet aangemaakt en verschijnt er een melding in het platform. Na het aanvullen zet de volgende ronde de medewerker alsnog.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- Personio via de API v2 met client credentials. Persons en employments (weekly_working_hours, full_time_weekly_working_hours, legal_entity, office, org_units, termination.last_working_day) via webhooks en opvragen. Afwezigheid via GET /v2/absence-periods met updated_at.gte (approval.status PENDING, APPROVED, DELETION_PENDING of SUBSTITUTE_REQUESTED; starts_from.type en ends_at.type FIRST_HALF of SECOND_HALF; timezone_id). Webhooks absence-period.created, absence-period.updated.timerange en absence-period.deleted; geen melding bij goedkeuring.
- Planday via de Open API met OAuth 2.0 per portaal. POST en PUT /hr/v1.0/employees (departments, employeeGroups, workHours per maand, contractRulesRuleId, salaryIdentifier, custom_-velden), PUT /hr/v1.0/employees/deactivate/{employeeId} (date, keepShifts). Verlof via /absence/v1.0/absencerequests (draft, submit, approve, cancel) en saldi via POST /absence/v1.0/accounts/{accountId}/adjustments.
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in Personio | Veld in Planday | Toelichting |
|---|---|---|
Personeelsnummer (eigen attribuut) | salaryIdentifier | |
first_name, last_name | firstName, lastName | |
email | userName en email | |
office en legal_entity | Planday-portaal en departments | |
org_units (afdeling of team) | employeeGroups | |
weekly_working_hours | workHours (per maand) en contractRulesRuleId | |
Absence period (approval.status APPROVED) | Absence request, daarna approve | |
starts_from.type en ends_at.type (FIRST_HALF, SECOND_HALF) | Registraties per dag uit het concept | |
termination.last_working_day | deactivate met date en keepShifts |
Gerelateerd
Ashby → Personio
Ashby Personio koppeling: aannames met uren en entiteit als nieuwe medewerker in Personio
Bullhorn → Personio
Bullhorn Personio koppeling: plaatsingen als persoon met dienstverband in Personio
Carerix → Personio
Carerix Personio koppeling: geslaagde plaatsing als nieuwe medewerker in Personio
Greenhouse → Personio
Greenhouse Personio koppeling: aangenomen kandidaten als medewerker in Personio