HR naar ITSM
Personio koppelen met ServiceNow: medewerkers en onboardingtickets in ServiceNow
Met een koppeling tussen Personio en ServiceNow staan medewerkers uit Personio als gebruiker in ServiceNow, met afdeling, vestiging, kostenplaats en leidinggevende, en maakt KoppelHet bij een nieuwe collega, functiewissel of vertrek een verzoek aan in de servicecatalogus van ServiceNow. Het onboardingverzoek staat op naam van de nieuwe medewerker, met startdatum, functie, manager en locatie, zodat IT laptop en accounts voor de eerste werkdag klaarzet.
Wat de koppeling doet
Organisaties met Personio voor HR en ServiceNow voor IT en facilitair mailen nieuwe collega's vaak naar de servicedesk, die er zelf een verzoek van maakt, soms pas in de week van de start. Wie laptops en telefoons per kostenplaats doorbelast, ziet de kostenplaatsen in ServiceNow achterlopen op Personio.
- Personio meldt een nieuwe of gewijzigde medewerker; KoppelHet haalt persoon en meest recente contract op.
- Nieuwe afdelingen, vestigingen en kostenplaatsen gaan eerst naar ServiceNow, daarna de gebruiker.
- De gebruiker krijgt afdeling, locatie, kostenplaats en leidinggevende als verwijzingen.
- Een wijziging die Personio niet meldt, pakt de periodieke vergelijking op.
- Na de einddatum van het contract zet KoppelHet de gebruiker op inactief.
- Valt de startdatum binnen de afgesproken termijn, standaard vier weken, dan bestelt KoppelHet het onboardingitem in de servicecatalogus op naam van de nieuwe gebruiker.
- De flow van dat item zet taken uit bij de teams voor laptop, accounts en toegang.
- Een nieuwe functie of afdeling levert een wijzigingsverzoek op; een einddatum een offboardingverzoek een week voor de laatste werkdag.
Waar je op let bij Personio en ServiceNow
- Personio zet iemand die nog moet beginnen op de status onboarding. KoppelHet gebruikt die status plus de startdatum: het verzoek komt pas binnen de afgesproken termijn voor de start, niet al bij een getekend contract voor over drie maanden.
- Een verlenging levert in Personio een nieuw contract op terwijl de oude einddatum blijft staan. KoppelHet kijkt naar het nieuwste contract en maakt bij een verlenging geen offboardingverzoek in ServiceNow.
- Welke laptop, telefoon of toegangspas iemand nodig heeft, leggen Personio-klanten vaak vast in eigen attributen. KoppelHet vult daarmee de variabelen van het catalogusitem, zodat de flow alleen de taken maakt die nodig zijn.
- Een medewerker kan in Personio over meerdere kostenplaatsen zijn verdeeld, met een aandeel per kostenplaats. ServiceNow kent één kostenplaats per gebruiker, dus KoppelHet neemt die met het grootste aandeel, zodat doorbelasting van hardware klopt.
- Niet elke wijziging in Personio stuurt een melding. Naast de directe meldingen vergelijkt KoppelHet periodiek, zodat bijvoorbeeld een nieuwe kostenplaats alsnog in ServiceNow komt.
- Personio kent afdelingen en teams door elkaar. Alleen afdelingen worden een afdeling in ServiceNow, zodat toewijzing en rapportage niet versnipperen over tientallen teams.
- ServiceNow kan een import pas laten draaien als een eerdere klaar is. KoppelHet laadt afdelingen, locaties en kostenplaatsen eerst, zodat een nieuwe kostenplaats bestaat voordat de eerste gebruiker ernaar verwijst.
- Iemand kan in Personio meerdere contracten hebben, bijvoorbeeld na een verlenging. KoppelHet gebruikt het meest recente contract, zodat een verlenging de gebruiker niet op inactief zet.
- Personio onderscheidt eigen medewerkers en externen. Of externen een gebruiker in ServiceNow krijgen en met welke rol, spreken we per klant af; het type staat bij de gebruiker.
- Haalt ServiceNow gebruikers al uit Active Directory, dan werkt KoppelHet die bij op personeelsnummer of e-mailadres. Zo ontstaat geen tweede gebruiker, en krijgt de bestaande gebruiker de afdeling en kostenplaats die AD niet kent.
Deze koppeling hoort ook bij in-, door- en uitstroom.
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 we ook tickets laten aanmaken voor onboarding en offboarding?
Ja. Standaard bestelt KoppelHet vier weken voor de startdatum het onboardingitem uit jullie servicecatalogus, op naam van de nieuwe medewerker, en een week voor de laatste werkdag het offboardingitem. Welke taken daaruit volgen en bij welk team, regelen jullie in ServiceNow.
Hoe komt de kostenplaats in ServiceNow als iemand over meerdere is verdeeld?
De kostenplaats met het grootste aandeel telt. Willen jullie een andere regel, dan leggen we die bij de start vast.
We halen gebruikers al uit Active Directory. Wat nu?
Dan werkt KoppelHet die gebruikers bij, zonder dubbele gebruikers. De AD-import kan blijven draaien voor de inlognaam.
Ziet de koppeling salarissen in Personio?
Nee. De koppeling leest alleen persoons- en contractgegevens die de servicedesk nodig heeft.
We hebben al een integratieplatform. Past dit daarnaast?
Ja. Deze koppeling draait op het platform van KoppelHet en vraagt niets van jullie bestaande integratieplatform. Elke actie staat in de auditlogging, zodat beheer en audit weten wat er is gebeurd.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- Personio wordt gelezen via webhooks (Person.created, Person.updated, Employment.updated; niet elke attribuutwijziging stuurt Person.updated) en de Personio API v2 (persons en employments, de meest recente eerst), met een periodieke vergelijking. Velden onder meer position.title, org_units, office, supervisor, cost_centers en employment_end_date.
- Naar ServiceNow schrijven we via de Import Set API (insertMultiple) naar staging tables met transform maps en coalesce op employee_number, met run_after om cmn_department, cmn_location en cmn_cost_center vóór sys_user te verwerken. Integratiegebruiker met alleen de rollen voor deze tabellen.
- Tickets via de Service Catalog API: POST /api/sn_sc/servicecatalog/items/{sys_id}/order_now met de catalogusvariabelen in variables en de gebruiker in sysparm_requested_for. Dat levert een request (REQ) met een requested item (RITM) op; de flow van het catalogusitem maakt de catalog tasks (sc_task) per toewijzingsgroep. Een notitie op een openstaand verzoek gaat via de Table API op sc_req_item. KoppelHet bewaart per medewerker het RITM-nummer per gebeurtenis.
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in Personio | Veld in ServiceNow | Toelichting |
|---|---|---|
Personio-id of personeelsnummer | employee_number | Coalesce-sleutel |
Voornaam en achternaam | first_name en last_name | |
Zakelijk e-mailadres | email | |
position.title | title | |
org_units (type afdeling) | department (cmn_department) | |
office | location (cmn_location) | |
cost_centers (hoogste aandeel) | cost_center (cmn_cost_center) | |
supervisor | manager (sys_user) | |
employment_end_date | active = false | |
Indiensttreding, wijziging of vertrek | Catalogusitem voor onboarding, wijziging of offboarding | Per gebeurtenis een eigen item, gekozen bij de start |
Gesynchroniseerde gebruiker | sysparm_requested_for | Het verzoek staat op naam van de nieuwe medewerker |
employment_start_date of employment_end_date | Variabele startdatum of laatste werkdag | |
supervisor | Variabele manager (verwijzing naar sys_user) | |
office | Variabele locatie (cmn_location) | |
position.title | Variabele functie | |
Afdeling of team | Toewijzingsgroep van de catalog tasks | Via de flow van het catalogusitem |
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