
Verlof, verzuim en uren
Deel Planday koppeling: eigen werknemers met werkuren in Planday, goedgekeurd verlof en saldo erbij
Met een koppeling tussen Deel en Planday komt elke eigen werknemer uit Deel automatisch in Planday, met afdeling, maanduren uit het werkrooster in Deel en een uitnodiging zodra er een werkmail is. Verlof dat in Deel is goedgekeurd, staat daarna als goedgekeurde afwezigheid in Planday, en het saldo in de Planday-app volgt het saldo in Deel.
Wat de koppeling doet
Organisaties die hun eigen werknemers in Deel HR beheren en horeca, retail of zorg plannen in Planday, zetten iedere nieuwe collega met de hand in Planday. Verlof keuren ze in Deel goed en daarna nog een keer in Planday, en het saldo dat medewerkers in de Planday-app zien klopt niet met Deel.
- HR legt een eigen werknemer vast in Deel; Deel stuurt een webhook.
- KoppelHet zet de werknemer in Planday, met afdeling en maanduren, eerst als concept zonder inlog als er nog geen werkmail is.
- Zodra Deel een werkmail heeft, nodigt KoppelHet de medewerker uit voor Planday.
- Een leidinggevende keurt verlof goed in Deel; KoppelHet dient het in Planday in en keurt het daar direct goed.
- Elke nacht zet KoppelHet het verschil in saldo als correctie op de verlofrekening in Planday.
Waar je op let bij Deel en Planday
- Planday kan een medewerker aanmaken zonder gebruikersnaam en e-mail, als concept, en die later uitnodigen. In Deel staat de werkmail van een nieuwe werknemer soms pas vlak voor de start. KoppelHet maakt daarom eerst een concept, zodat de vestiging al kan plannen, en stuurt de uitnodiging zodra Deel de werkmail meldt.
- Planday legt werkuren per maand vast, Deel geeft in het werkrooster de uren per weekdag. KoppelHet telt de uren van de week op en rekent ze om naar een maandgemiddelde, en kiest daarbij de contractregel in Planday die bij dat aantal uren hoort.
- Een Planday-portaal kan verplicht stellen dat bij deactiveren een soort beëindiging wordt gekozen; zonder die keuze weigert Planday de deactivering. Deel geeft per contract aan of de werknemer zelf is vertrokken. KoppelHet vertaalt dat naar de beëindigingssoort van het portaal, met de laatste werkdag uit Deel als datum.
- Verlof indienen in Planday gaat in twee stappen: eerst een concept ophalen dat Planday per dag uitrekent op basis van de verlofrekening, dan dat concept indienen. KoppelHet past bij een halve eerste of laatste dag uit Deel de registratie van die dag aan voor het indienen, en keurt de aanvraag daarna direct goed.
- Bij goedkeuren in Planday is op te geven wat er gebeurt met diensten die al in het rooster staan. KoppelHet laat die diensten openvallen in plaats van ze te verwijderen, zodat de planner ziet welke diensten door goedgekeurd verlof uit Deel een nieuwe invulling nodig hebben.
- Planday markeert het annuleren van een afwezigheidsaanvraag als verouderd en verwijst naar afwijzen. Verwijdert iemand goedgekeurd verlof in Deel, dan wijst KoppelHet de bijbehorende aanvraag in Planday af, zodat de dag weer beschikbaar is in het rooster.
- Deel geeft per verlofbeleid het beschikbare saldo, en markeert beleid zonder limiet, waarbij geen saldo bestaat. Planday neemt een saldo op als correctie op een opbouwrekening met een eigen referentie. KoppelHet boekt alleen voor beleid met een limiet het verschil, met het Deel-beleid als referentie.
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
Kunnen medewerkers ook verlof aanvragen in de Planday-app?
Dat kan, maar dan staat het niet in Deel. In de kleinste opzet vraagt iedereen verlof aan in Deel. Verlof uit Planday terug naar Deel kan later als uitbreiding.
Gaan gewerkte uren uit Planday naar Deel?
Niet in deze koppeling. Een urenstroom voor de salarisverwerking kan later als uitbreiding.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- Deel via de REST API (versie 2026-01-01) met een API-token of OAuth2-app (scopes people:read en time-off:read). Eigen werknemers via de webhooks Employee Created Direct en Employee Updated Direct en GET /rest/people/{hris_profile_id} (worker_id, department, work_location, employments met work_email, voluntarily_left en termination_last_day). Werkrooster via GET /rest/time_offs/dailies, saldi via GET /rest/time_offs/profile/{hris_profile_id}/entitlements (available, is_allowance_unlimited, accrual_unit). Verlof via de webhooks time-off.reviewed, time-off.updated en time-off.deleted.
- Planday via de Open API met OAuth 2.0 per portaal. POST /hr/v1.0/employees (departments verplicht; zonder userName en email een concept), POST /hr/v1.0/employees/{employeeId}/invite, PUT /hr/v1.0/employees/deactivate/{employeeId} (date, terminationTypeId, keepShifts). Verlof via GET /absence/v1.0/absencerequests/draft, POST /absence/v1.0/absencerequests, PUT .../{id}/approve (existingShifts, coverShifts) en .../{id}/deny; saldi via POST /absence/v1.0/accounts/{accountId}/adjustments (value, effectiveDate, externalReference).
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in Deel | Veld in Planday | Toelichting |
|---|---|---|
worker_id | salaryIdentifier | Vaste sleutel |
first_name, last_name | firstName, lastName | |
employments[].work_email | userName en email (via invite) | |
department en work_location | departments en employeeGroups | Via een tabel |
work_schedule (uren per weekdag) | workHours (per maand) en contractRulesRuleId | |
direct_employee_termination_last_day en voluntarily_left | deactivate met date en terminationTypeId | |
Time off (approved) | Absence request: draft, submit, approve | |
Entitlements (available) | Adjustment op de verlofrekening met externalReference |
Gerelateerd
Ashby → Deel
Ashby Deel koppeling: aannames bij de eigen entiteit als direct employee in Deel
Bullhorn → Deel
Bullhorn Deel koppeling: eerste plaatsing als direct employee met contract in Deel
Carerix → Deel
Carerix Deel koppeling: geslaagde plaatsing als persoon of contract in Deel
Deel → 4PS Construct
Deel 4PS Construct koppeling: eigen werknemers van de bouwentiteit in 4PS, met afdeling en kostenplaats als dimensie