
HR naar ERP
HiBob SAP Concur koppeling: medewerkers uit Bob als Concur-gebruiker met goedkeurder, valuta en kostenplaats
Met een koppeling tussen HiBob en SAP Concur wordt elke medewerker uit Bob een Concur-gebruiker, met personeelsnummer, declaratievaluta, land, kostenplaats en de leidinggevende uit Bob als goedkeurder van declaraties. Een vertrek in Bob zet de gebruiker in Concur op inactief, met de einddatum erbij.
Wat de koppeling doet
Organisaties die HiBob als HR-systeem gebruiken en SAP Concur voor reizen en declaraties, vullen Concur vaak met een export uit Bob of met de hand. Goedkeurders lopen dan achter op de organisatie in Bob, en declaraties komen op een kostenplaats die in Bob al lang is veranderd.
- Bob meldt een wijziging; KoppelHet zet de medewerker in de wachtrij voor de volgende bundel.
- Nieuwe medewerkers krijgen eerst hun identiteit in Concur; pas als die is aangemaakt volgt het spend-profiel.
- KoppelHet vertaalt vestiging, afdeling en kostenplaats naar de waarden en lijstcodes die Concur kent.
- De leidinggevende uit Bob wordt goedkeurder van declaraties, als die zelf de juiste rol in Concur heeft.
- KoppelHet volgt elke bundel tot Concur klaar is en meldt per medewerker wat is afgewezen.
Waar je op let bij HiBob en SAP Concur
- De velden afdeling en kostenplaats in de enterprise-gegevens van Concur zijn volgens SAP niet gekoppeld aan de gelijknamige velden in Concur Expense. KoppelHet schrijft de kostenplaats uit Bob daarom ook in het lijstveld dat het declaratieformulier gebruikt, als lijstcode die in Concur bestaat. Anders staat de kostenplaats wel in het profiel, maar niet op de declaratie.
- Concur zet de manager niet vanzelf als goedkeurder, en een goedkeurder moet zelf de bijbehorende rol in Concur hebben. KoppelHet zet de leidinggevende uit Bob als goedkeurder van declaraties en controleert eerst die rol. Mist de nieuwe leidinggevende de rol, dan krijgt de Concur-beheerder een melding in plaats van een route die vastloopt.
- Concur vraagt bij een spend-profiel een landcode volgens ISO en een declaratievaluta. Bob heeft geen valuta per medewerker, maar elke medewerker hoort bij een vestiging in een land. KoppelHet leidt land en valuta af uit de vestiging, zodat een verhuizing naar de vestiging in Dublin ook de valuta in Concur verandert.
- Concur maakt een spend-profiel alleen aan als de identiteit van de gebruiker al bestaat. Bob meldt een nieuwe medewerker met één event. KoppelHet splitst dat in twee stappen en stuurt het spend-profiel pas als Concur de identiteit heeft bevestigd, zodat een nieuwe collega niet half wordt aangemaakt.
- Concur ondersteunt geen rondlopende rapportagelijnen en maakt het veld dan leeg. Tijdens een reorganisatie kan in Bob tijdelijk iemand aan zijn eigen ondergeschikte rapporteren. KoppelHet zoekt zulke kringen vóór het versturen en houdt die medewerkers apart, zodat Concur niet stil een goedkeurder weghaalt.
- Het vertrek-event van Bob komt pas na middernacht op de ingangsdatum. Concur verwerkt een bulkverzoek op de achtergrond, met een time-out van twee uur. KoppelHet stuurt de deactivering in de eerste bundel na dat event en kijkt de status na, zodat een vertrokken medewerker de volgende ochtend niet meer kan declareren.
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 reisprofielen ook mee?
Nee, de eerste versie zet alleen wat nodig is om te declareren. Reisgegevens kunnen later als uitbreiding.
Gaan goedgekeurde declaraties terug naar Bob of de payroll?
Niet in deze koppeling. Uitbetalen via de payroll kan later als uitbreiding.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- HiBob via employee data webhooks (employee.created, employee.updated, employee.left) en POST /people/search met fields root.email, work.employeeIdInCompany, work.department, work.reportsTo en work.site. Velden zonder leesrecht worden stil weggelaten.
- SAP Concur via User Provisioning v4 (SCIM 2.0) - POST /profile/v4/Bulk/ (hoogstens 100 bewerkingen of 400 kB), GET /profile/v4/provisions/{provisionId}/status met tussenpozen van minstens 5 seconden, time-out 120 minuten. Enterprise met companyId, employeeNumber, costCenter, department, terminationDate; spend met reimbursementCurrency, budgetCountryCode, customData (orgUnit1-6 en custom1-22 als lijstcode) en approvers (report, request). Geen rondlopende rapportagelijnen. Scopes user.provision.write en user.provision.read.
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in HiBob | Veld in SAP Concur | Toelichting |
|---|---|---|
/root/email | userName en emails | Uniek over alle Concur-producten |
/root/firstName, /root/surname | name.givenName, name.familyName | |
/work/employeeIdInCompany | enterprise.employeeNumber | Uniek binnen het Concur-bedrijf |
/work/site (land) | spend.budgetCountryCode en reimbursementCurrency | Tabel per vestiging |
/work/department | orgUnit-lijstveld | Lijstcode uit Concur |
Kostenplaats (veld in Bob) | enterprise.costCenter en een custom-lijstveld | |
/work/reportsTo | Goedkeurder declaraties (report) | |
Lifecycle (vertrek) | active = false en enterprise.terminationDate |
Gerelateerd
Ashby → HiBob
Ashby HiBob koppeling: een aanname uit Ashby direct als medewerker in Bob
Bullhorn → HiBob
Bullhorn HiBob koppeling: een goedgekeurde plaatsing als nieuwe medewerker in Bob
Carerix → HiBob
Carerix HiBob koppeling: geslaagde match wordt nieuwe medewerker in Bob
Greenhouse → HiBob
Greenhouse HiBob koppeling: van aanname in Greenhouse naar nieuwe medewerker in Bob