HR naar ITSM
Officient koppelen met ServiceNow: gebruikers met team en rol, verzoeken op de webhooks van Officient
Met een koppeling tussen Officient en ServiceNow wordt elke medewerker uit Officient een gebruiker in ServiceNow, met team, rol en leidinggevende, en bestelt KoppelHet een onboardingverzoek bij een nieuwe medewerker en een offboardingverzoek bij een laatste werkdag. Officient meldt elke wijziging met een webhook, waarna KoppelHet de medewerker ophaalt en ServiceNow bijwerkt.
Wat de koppeling doet
Organisaties in Nederland en België die Officient voor HR gebruiken en ServiceNow voor IT, hebben de wijzigingen in Officient vaak al als event beschikbaar. Toch komt een nieuwe collega pas in ServiceNow als iemand hem handmatig aanmaakt of de directory hem doorzet.
- In Officient zet HR webhooks aan voor nieuwe, gewijzigde, verwijderde en geheractiveerde medewerkers, en voor team-, rol- en managerwijzigingen.
- KoppelHet bevestigt elke webhook direct en haalt daarna de details van de medewerker op.
- ServiceNow maakt of werkt de gebruiker bij op personeelsnummer, met team, rol en leidinggevende.
- Een nieuwe medewerker levert een onboardingverzoek op met de eerste dienstverbanddatum.
- Een laatste dienstverbanddatum levert een offboardingverzoek op met de assets van de medewerker; na die dag gaat de gebruiker op inactief.
Waar je op let bij Officient en ServiceNow
- Een webhook van Officient bevat alleen het account, het soort event en een id. KoppelHet haalt bij elk event de details van de medewerker op en gebruikt alleen die gegevens, dus ServiceNow krijgt nooit iets wat alleen in de webhook stond.
- Officient herhaalt een webhook zolang er geen status 200 terugkomt. KoppelHet antwoordt direct met 200 en zet het event in een wachtrij, zodat een trage of onbereikbare ServiceNow-omgeving geen reeks herhalingen veroorzaakt.
- Officient bewaart een Nederlands tussenvoegsel apart van de achternaam. KoppelHet zet het in ServiceNow voor de achternaam, zodat zoeken en sorteren in de servicedesk werkt zoals in de rest van de organisatie.
- Team, rol en leidinggevende hebben elk een eigen webhook in Officient. Een teamwissel werkt daardoor alleen de afdeling in ServiceNow bij en levert een wijzigingsverzoek op, zonder dat de hele medewerker opnieuw wordt verwerkt.
- Officient kent een apart event voor een heractiveerde medewerker. KoppelHet zet de inactieve gebruiker in ServiceNow dan weer actief en bestelt een nieuw onboardingverzoek, met de eerdere tickets nog aan dezelfde gebruiker.
- De assetlijst van Officient geeft per asset alleen een naam en een eigenaar, geen serienummer. Het offboardingverzoek noemt de assets bij naam; het serienummer zoekt de servicedesk in ServiceNow zelf op.
- Officient staat 30 aanroepen per 5 seconden toe. Bij een reorganisatie komen veel webhooks tegelijk binnen; de wachtrij van KoppelHet haalt ze binnen die grens op.
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
Heet Officient tegenwoordig niet Exact Officient?
Ja, de documentatie noemt het product inmiddels zo. De API en de webhooks werken hetzelfde.
Wat als ServiceNow een tijdje niet bereikbaar is?
De events blijven in de wachtrij van KoppelHet staan en gaan alsnog door zodra ServiceNow weer reageert.
Gaan loon of contractgegevens naar ServiceNow?
Nee. De koppeling leest alleen basis- en persoonsgegevens en neemt daarvan naam, werkmail, team, rol, leidinggevende en de datums over.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- Officient REST API (api.officient.io/1.0, bearer token, scopes personal.info:read en basics:read). GET /people/{id}/detail (first_name, name_parts.insertion, email, team, current_role, current_reports_to, employment.first_employment_date en last_employment_date, linked_payroll_employee_number) en GET /assets/list met person_id. Webhooks met een body van account, event_type en related_object_id, zonder handtekening, herhaald tot status 200. Maximaal 30 aanroepen per 5 seconden.
- Naar ServiceNow via de Import Set API (insertMultiple) met transform maps en coalesce op employee_number; met run_after eerst cmn_department, daarna sys_user. Verzoeken via POST /api/sn_sc/servicecatalog/items/{sys_id}/order_now met variabelen en sysparm_requested_for.
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in Officient | Veld in ServiceNow | Toelichting |
|---|---|---|
Officient person id of linked_payroll_employee_number | employee_number | Coalesce-veld |
first_name | first_name | |
name_parts.insertion + achternaam | last_name | Tussenvoegsel voor de achternaam |
email | email | |
team.name | department (cmn_department) | |
current_role.name | title | |
current_reports_to.person_id | manager (sys_user) | |
employment.first_employment_date | Variabele startdatum op het onboardingitem | |
employment.last_employment_date | Offboardingitem; daarna active = false | |
Asset list (name) | Variabele assets op het offboardingitem |
Gerelateerd
Officient → Active Directory
Officient Active Directory koppeling: AD-accounts uit Exact Officient
Officient → ADP iHCM
Officient ADP iHCM koppeling: Nederlands loon en vertrek uit Exact Officient naar ADP iHCM
Officient → AFAS Profit
Officient koppelen met AFAS: Nederlandse medewerkers uit Exact Officient in AFAS Profit Payroll
Officient → Arbodienst (SIVI)
Officient koppelen met de arbodienst via SIVI: verzuimperiodes uit Exact Officient als verzuimmelding