HR naar ERP
Personio Coupa koppeling: medewerkers uit Personio als Coupa-gebruiker met kostenplaats en goedkeurder
Met een koppeling tussen Personio en Coupa wordt elke medewerker uit Personio een Coupa-gebruiker, met personeelsnummer, afdeling, de leidinggevende als manager en een standaardrekening uit de kostenplaats in Personio. Een andere kostenplaats of leidinggevende in Personio werkt door in Coupa, en na de laatste werkdag wordt de gebruiker inactief.
Wat de koppeling doet
Organisaties die Personio als HR-systeem gebruiken en Coupa voor inkoop en onkosten, houden gebruikers in Coupa vaak bij met CSV-imports. Een gewijzigde kostenplaats in Personio komt dan pas bij de volgende import in Coupa, en aanvragen van die weken landen op de oude rekening.
- Personio meldt een wijziging; KoppelHet bevestigt direct en zet het verzoek in een wachtrij.
- KoppelHet haalt het dienstverband met kostenplaatsen, afdeling en leidinggevende op.
- Afdeling, manager, rekening en content group worden gecontroleerd op bestaan in Coupa.
- De gebruiker wordt aangemaakt of bijgewerkt op het bewaarde Coupa-ID.
- Na de laatste werkdag zet KoppelHet de gebruiker op inactief.
Waar je op let bij Personio en Coupa
- Personio verdeelt een dienstverband soms over meerdere kostenplaatsen met een gewicht. Een Coupa-gebruiker heeft één standaardrekening. KoppelHet kiest de kostenplaats met het grootste gewicht als standaard; aanvragers kunnen in Coupa per regel nog een andere rekening kiezen.
- Personio heeft een eigen webhook voor een gewijzigde kostenverdeling, los van andere wijzigingen in het dienstverband. KoppelHet gebruikt die om alleen de standaardrekening in Coupa bij te werken, zodat een correctie van finance niet ook manager en afdeling opnieuw verstuurt.
- Personio verwacht binnen drie seconden een bevestiging van elke webhook en probeert het anders tot drie dagen opnieuw. Coupa kan trager antwoorden, en een gebruiker aanmaken vraagt eerst controles. KoppelHet bevestigt daarom meteen en verwerkt de wijziging daarna, zodat Personio geen dubbele meldingen stuurt.
- Een overstap naar een andere entiteit staat in Personio als beëindiging met het type wissel van bedrijf, gevolgd door een nieuw dienstverband. In Coupa is dat dezelfde persoon die alleen een andere content group en rekening krijgt. KoppelHet zet de gebruiker bij dit type dus niet op inactief, maar werkt hem bij, zodat lopende aanvragen en goedkeuringen blijven staan.
- Personio geeft bij een uitdiensttreding zowel de einddatum van het dienstverband als de laatste werkdag. Wie de laatste weken vrij opneemt, werkt dus eerder niet meer dan de einddatum. KoppelHet zet de Coupa-gebruiker op inactief na de laatste werkdag, zodat er na het vertrek geen aanvragen meer op die naam lopen.
- De leidinggevende staat in Personio als ID van een andere persoon. Coupa neemt een manager alleen aan als die al gebruiker is. KoppelHet zoekt de werkmail van de leidinggevende op, maakt een nieuwe leidinggevende eerst aan en pas daarna de medewerkers onder hem.
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 goedgekeurde declaraties uit Coupa terug naar de payroll?
Niet in deze koppeling. Dat is een aparte stroom die later als uitbreiding kan.
Wat als finance een kostenplaats nog niet in Coupa heeft?
Dan blijft de oude standaardrekening staan en krijgt finance een melding. KoppelHet maakt geen rekeningen aan in Coupa.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- Personio via webhooks (employment.created, employment.updated, employment.updated.cost-centers, employment.terminated; alleen ID's, 2xx binnen 3 seconden, tot 3 dagen herhaald) en de v2-API voor persons en employments (legal_entity, supervisor, org_units, cost_centers met weight, termination met last_working_day en type SUB_COMPANY_SWITCH).
- Coupa via de Users API - POST /api/users en PUT /api/users/:id op het bewaarde Coupa-ID, met login, email, employee-number, firstname, lastname, department, manager, default-account, content-groups, default-currency, licentievlaggen zoals expense-user, authentication-method met sso-identifier, en active.
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in Personio | Veld in Coupa | Toelichting |
|---|---|---|
Werkmail van de persoon | login en email | Beide uniek |
Personeelsnummer (attribuut in Personio) | employee-number | |
org_units (type department) | department | |
supervisor.id | manager | Via de werkmail van de leidinggevende |
cost_centers (hoogste weight) | default-account | Tabel van finance |
legal_entity.id | content-groups en default-currency | Tabel per entiteit |
termination.last_working_day | active = false |
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