Personio logoEverhour logo

Verlof, verzuim en uren

Personio Everhour koppeling: goedgekeurde afwezigheid uit Personio als time off in Everhour

Met een koppeling tussen Personio en Everhour komt afwezigheid die in Personio is goedgekeurd automatisch als time off in de Everhour-planning, per dag met het juiste dagdeel. Afwezigheidstypes uit Personio worden time-off-types in Everhour, en een verwijderde afwezigheid verdwijnt ook uit Everhour.

Wat de koppeling doet

Organisaties die afwezigheid in Personio beheren en projecten in Everhour plannen, rekenen in Everhour met capaciteit die er niet is. Een vakantie of ziekmelding uit Personio moet iemand nog eens in de planner zetten, en dat gebeurt niet altijd.

  1. Een medewerker vraagt afwezigheid aan in Personio en de leidinggevende keurt die goed.
  2. KoppelHet vindt de goedkeuring bij de volgende ronde en haalt de verdeling per dag op.
  3. In Everhour komt de afwezigheid als goedgekeurde time off, zonder weekenddagen, met halve dagen waar Personio die heeft.
  4. Een afwezigheid die in Personio definitief is verwijderd, haalt KoppelHet uit Everhour met een reden.
  5. Wekelijks meldt KoppelHet gebruikers waarvan de capaciteit in Everhour afwijkt van de contracturen in Personio.
Personio → KoppelHet → EverhourBRONPersonioDOELEverhourKoppelHetmapping · logging · monitoringPersonio → KoppelHet → EverhourBRONPersonioDOELEverhourKoppelHetmapping · logging · monitoring
Heen: Goedgekeurde afwezigheid per dag · Afwezigheidstype als time-off-type · Koppeling van persoon aan Everhour-gebruiker op e-mail · Afwijking tussen contracturen en capaciteit

Waar je op let bij Personio en Everhour

  • Personio meldt bij afwezigheid alleen het aanmaken, een gewijzigde periode en het verwijderen, niet de goedkeuring. Everhour zou een aanvraag zonder goedkeuring als open aanvraag tonen. KoppelHet vraagt daarom elke paar minuten bij Personio de afwezigheden op die sinds de vorige ronde zijn gewijzigd, en boekt pas na goedkeuring.
  • Personio geeft per afwezigheid een opsplitsing per dag van wat er van het saldo afgaat. Een time off in Everhour heeft voor de hele periode één dagdeel. Verschilt het per dag, bijvoorbeeld een halve eerste dag gevolgd door hele dagen, dan maakt KoppelHet in Everhour aparte boekingen, zodat elke dag de juiste capaciteit krijgt.
  • Vraagt een medewerker in Personio om een goedgekeurde afwezigheid te verwijderen, dan wacht die verwijdering eerst op goedkeuring. KoppelHet laat de time off in Everhour staan zolang dat verzoek openstaat, en verwijdert hem pas als Personio de afwezigheid echt heeft verwijderd, met die reden erbij in Everhour.
  • Een afwezigheid zonder einddatum, zoals langdurig verzuim, heeft in Personio alleen een opsplitsing tot vandaag. Everhour vraagt bij elke time off een einddatum. KoppelHet boekt tot een vaste datum vooruit, schuift die elke week door en sluit af op de echte einddatum zodra Personio die kent.
  • Everhour kent eigen time-off-types met een kenmerk of ze betaald zijn, en laat nieuwe types via de API aanmaken. Personio heeft vaak meer afwezigheidstypes dan Everhour. KoppelHet legt per Personio-type vast bij welk Everhour-type het hoort en maakt alleen een nieuw type aan als de klant dat wil, zodat de planner niet volloopt met types.
  • Everhour rekent met een capaciteit per gebruiker in seconden per week, die de API alleen laat lezen. Personio kent per dienstverband de weekuren. KoppelHet vergelijkt beide elke week en zet gebruikers met een verschil op een lijst voor de Everhour-beheerder, zodat de planning na een urenwijziging niet met de oude capaciteit rekent.
  • Een Everhour-gebruiker kan nog uitgenodigd of in afwachting zijn. Personio kent de medewerker dan al. KoppelHet bewaart afwezigheid van zo'n medewerker en boekt die zodra de gebruiker actief is in Everhour, zodat verlof van een nieuwe collega niet verloren gaat.

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, architectuur en compliance

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.

Prijsindicatie · Basis

Laat je zakelijke e-mailadres achter, dan zie je de prijsindicatie direct.

We gebruiken je adres alleen om je vraag over deze koppeling op te volgen.

Veelgestelde vragen

Gaan verlofsaldi uit Personio mee?

Niet in de eerste versie; de planner heeft genoeg aan wie wanneer vrij is. Saldi als allocatie in Everhour kunnen later als uitbreiding.

Gaan gewerkte uren uit Everhour naar Personio?

Niet in deze koppeling. Projecturen naar de attendance van Personio kan later als uitbreiding.

Ziet de projectleider ook het soort verlof?

Alleen het Everhour-type dat we koppelen. Gevoelige types zoals ziekte kunnen we als algemeen type afwezig boeken.

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. Afwezigheid via GET /v2/absence-periods met updated_at en approval.status (PENDING, APPROVED, DELETION_PENDING), starts_from en ends_at met type FIRST_HALF of SECOND_HALF, en GET /v2/absence-periods/{id}/breakdowns per dag. Webhooks absence-period.created, absence-period.updated.timerange en absence-period.deleted. Weekuren uit employments.
  • Everhour via de REST API op api.everhour.com met X-Api-Key. Gebruikers via GET /team/users (status active, invited, pending of removed; capacity in seconden per week). Time off via POST /resource-planner/assignments/time-off (users, startDate, endDate, timeOffType, timeOffPeriod, status approved, includeWeekends false, note), DELETE /resource-planner/assignments/{id} met reason. Types via GET en POST /resource-planner/time-off-types (name, paid).

Welke velden overgaan

De belangrijkste velden. De volledige mapping stellen we per klant vast.

Veld in PersonioVeld in EverhourToelichting
email (person)Everhour-gebruiker (GET /team/users?query=)
absence_typetimeOffTypeOntbrekende types maakt KoppelHet in Everhour aan
starts_from, ends_atstartDate, endDate
starts_from.type / ends_at.type (FIRST_HALF, SECOND_HALF)timeOffPeriod half-of-day
Breakdowns per dagEén assignment per afwijkende dag
approval.status APPROVEDstatus approved
weekly_working_hours (employment)Vergelijking met capacity (seconden per week)

Gerelateerd

Welke systemen wil je koppelen?

Vertel welke systemen je gebruikt en wat er automatisch moet gebeuren. Samen bepalen we de kleinste werkende oplossing, met een helder ontwerp en een offerte vooraf.