Payroll koppeling
Sage People ADP iHCM koppeling: salarisrecords, bonussen en vertrek van de Nederlandse payrollcompany naar ADP
Een koppeling tussen Sage People en ADP iHCM zet nieuwe salarisrecords, bonussen en uitdiensttredingen van de Nederlandse payrollcompany in Sage People door naar de juiste paygroup en salarisperiode in ADP iHCM. Medewerkers die al in ADP staan krijgen zo hun basissalaris, variabele bedragen en beëindiging zonder dat payroll iets overtypt; het aanmaken van een nieuwe medewerker in ADP blijft een taak voor payroll.
Wat de koppeling doet
Organisaties die Sage People als HR-systeem gebruiken en de Nederlandse lonen bij ADP iHCM laten draaien, mailen ADP elke periode een overzicht van loonsverhogingen, bonussen en vertrekkers. Payroll typt dat in ADP over, en een loonsverhoging die in Sage People met terugwerkende kracht is vastgelegd, valt dan makkelijk buiten de juiste periode.
- HR legt in Sage People een nieuw salarisrecord, een bonus of een einddatum vast voor een medewerker van de Nederlandse payrollcompany.
- KoppelHet leest de gewijzigde records via de Salesforce-API van Sage People en zoekt het ADP-personeelsnummer dat bij de team member is opgeslagen.
- Het basissalaris gaat als salariswijziging naar ADP; bonussen gaan als variabele regels in de batch van de salarisperiode.
- Een einddatum op het dienstverband start de beëindiging in ADP met laatste werkdag en reden.
- Wat ADP weigert, komt met de foutmelding op een lijst voor payroll en HR.
Waar je op let bij Sage People en ADP iHCM
- Sage People draait op Salesforce. KoppelHet leest de objecten fHCM2__Team_Member__c en fHCM2__Employment__c met SOQL, via een External Client App met client credentials en een Salesforce Integration-licentie met profiel Minimum Access – API Only. Zo heeft de koppeling geen gewone gebruikerslicentie nodig.
- Op een salarisrecord in Sage People bepaalt de award date of een wijziging vooruit of terug werkt. Ligt de award date na de start date, dan is het een loonsverhoging met terugwerkende kracht. KoppelHet stuurt die met de oorspronkelijke start date naar ADP, zodat ADP de nabetaling zelf berekent.
- Sage People rekent het jaarsalaris uit met Amount maal Annual Multiplier, en het veld Period kan het bedrag per loonperiode aangeven. ADP iHCM NL verwacht het salarisbedrag per periode in veld 2417. KoppelHet gebruikt het periodebedrag als dat er is, en rekent anders het jaarbedrag om naar de periode van de ADP-paygroup.
- Sage People heeft met Payflow een eigen exportmechanisme voor payrollleveranciers, met een downloadservice per stroom. ADP iHCM NL neemt salarissen, variabele bedragen en beëindigingen echter via aparte API's aan, niet als bestand. KoppelHet leest daarom rechtstreeks uit Sage People en roept per soort gegeven de juiste ADP-API aan.
- ADP wil bij elk variabel bedrag exact de begin- en einddatum van de salarisperiode van de paygroup. Een bonus in Sage People heeft één datum. KoppelHet zoekt de ADP-periode waarin die datum valt en weigert een bonus voor een periode die in ADP al is afgesloten met een melding aan payroll.
- In Sage People bepaalt de toegang tot HR-afdelingen welke team members een gebruiker ziet. KoppelHet geeft de API-gebruiker alleen leesrecht op de HR-afdelingen van de Nederlandse payrollcompany, zodat salarissen van andere landen nooit bij ADP terechtkomen.
- Een einddatum in ADP aanpassen kan niet; de beëindiging moet worden geannuleerd en opnieuw gestart. Schuift HR in Sage People de einddatum van een dienstverband op, dan doet KoppelHet die twee stappen in ADP en wacht op de bevestiging voordat de nieuwe datum telt.
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
Maakt de koppeling ook nieuwe medewerkers aan in ADP iHCM?
Nee. Wij vonden geen openbare ADP-API om in iHCM NL een medewerker aan te maken. KoppelHet meldt een nieuwe medewerker uit Sage People bij payroll en koppelt hem zodra hij in ADP staat.
Kunnen de loonstroken uit ADP terug naar Sage People?
Sage People kan loonstroken als pdf inlezen via inbound Payflow, zodat medewerkers ze in WX zien. Dat zit niet in de eerste versie en kan later als uitbreiding.
Wat als we meerdere Nederlandse werkgevers hebben?
Elke payrollcompany in Sage People krijgt in de vertaaltabel zijn eigen ADP-paygroup. De koppeling blijft verder gelijk.
Technische details voor IT
Voor wie wil weten hoe het onder de motorkap werkt: gebruikte API's, velden en bronnen.
- Sage People via de Salesforce REST-API (/services/data/v62.0/query met SOQL op fHCM2__Team_Member__c, fHCM2__Employment__c met SPPUK_Payroll_Company__c, en de salaris- en bonusrecords op het dienstverband), gefilterd op LastModifiedDate. OAuth 2.0 client credentials via een External Client App; Integration-licentie, profiel Minimum Access – API Only en een permission set met View All op de gebruikte objecten.
- ADP iHCM via GET /hr/v2/workers (payrollfilenumber, paygroupcode), de Base Remuneration Change API (velden 2416 en 2417), de Pay Data Input API voor iHCM NL (.add en .replace met payPeriodStartDate en payPeriodEndDate gelijk aan de paygroup) en de Worker Terminate API (worker.terminate, worker-termination.cancel). Elke URI moet in de Consumer Application Registry (CAR) staan.
Welke velden overgaan
De belangrijkste velden. De volledige mapping stellen we per klant vast.
| Veld in Sage People | Veld in ADP iHCM | Toelichting |
|---|---|---|
Employee Number (fHCM2__Team_Member__c) | payrollfilenumber | Eenmalig gekoppeld en bij KoppelHet bewaard |
SPPUK_Payroll_Company__c (dienstverband) | payrollGroupCode | Vertaaltabel per payrollcompany |
Salarisrecord Amount en Period | Salariscode 2416 en salarisbedrag 2417 | Omgerekend naar het bedrag per ADP-periode |
Salarisrecord Start Date | Ingangsdatum van de salariswijziging | |
Bonusregel (bedrag, datum) | Variabel veld (Vxxx) via Pay Data Input | Vertaaltabel per bonussoort |
Einddatum en reden dienstverband | Beëindiging met datum en reden |
- Sage People – API Setup
- Sage People – Create salary and related records
- Sage People – Payflow introduction
- Sage People – Payflow services
- Sage People – Payroll integrations
- ADP – Pay Data Input API Guide for iHCM NL
- ADP – Base Remuneration Change API Guide for iHCM NL
- ADP – Worker Terminate API Guide for ADP iHCM
Gerelateerd
Sage People → Active Directory
Sage People koppelen met Active Directory: domeinaccounts voor het Nederlandse kantoor
Sage People → AFAS Profit
Sage People koppelen met AFAS: Nederlandse medewerkers en salarissen uit Sage People in AFAS Profit
Sage People → Arbodienst (SIVI)
Sage People koppelen met de arbodienst via SIVI: absence records als verzuimmelding
Sage People → DATEV
Sage People DATEV koppeling: Duitse loonmutaties uit Sage People naar DATEV