Personio logoADP iHCM logo

Payroll integration

Personio to ADP integration: employees and pay components straight to ADP iHCM

With an integration between Personio and ADP iHCM, new hires, changes and salary data from Personio reach ADP automatically, including additional pay components such as travel allowance and bonuses. This is needed because Personio does not run local payroll itself; HR then no longer enters anything twice in ADP.

What the integration does

Organisations that choose Personio as their HR system while payroll already runs at ADP have to enter every change in ADP as well without an integration. Personio itself does not support local payroll.

  1. HR records a new hire or change in Personio.
  2. KoppelHet picks up the change and fetches the employee with all required data.
  3. The employee then appears in ADP iHCM, with personal and contract data in the form ADP expects.
  4. Travel allowance, bonuses and other variable pay components go to ADP per period.
  5. In the KoppelHet platform HR sees every sync and every message.
Personio → KoppelHet → ADP iHCMSOURCEPersonioTARGETADP iHCMKoppelHetmapping · logging · monitoringPersonio → KoppelHet → ADP iHCMSOURCEPersonioTARGETADP iHCMKoppelHetmapping · logging · monitoring
Out: New hire with personal and contract data · Changes to employee data · Salary · Travel allowance, bonuses and other pay components

What to watch for with Personio and ADP iHCM

  • Salary and extra pay components live in custom fields in Personio. They must be opened up to the integration per field, otherwise KoppelHet cannot see them.
  • In an earlier project the ADP side required extra technical work, so the project took longer than planned. Allow for that with ADP.
  • ADP records per integration which data it may read and write, and some of it applies to the Netherlands only. We map this out with ADP in the first weeks.
  • ADP accepts pay components such as travel allowance and bonus as variable data per period. A submission gets its own number, so KoppelHet can later correct the same submission.
  • Dutch payroll tax data such as the payroll tax credit stays in ADP and is not overwritten.
  • After go-live the customer can largely manage the integration itself, with KoppelHet as backup for questions and changes.
  • On a change Personio only gives a signal; KoppelHet then fetches the data itself. So no change is lost if a signal does not arrive once.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Complex

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Customer case

How it runs at War Child Alliance

How these organisations use the integration. The configuration differs for each customer.

War Child Alliance logo

War Child Alliance

Non-profit

War Child uses Personio for all HR processes and ADP iHCM for local payroll. The integration moves new hires, changes, salaries and additional pay components such as travel allowance and bonuses from Personio to ADP automatically.

“Whenever my colleague Lukas raised an issue, KoppelHet responded quickly and thought along actively.”
Marlies Doornkamp, HR project manager
Read the customer story

Frequently asked questions

Can Personio not connect to ADP itself?

Personio has its own payroll integrations. We check up front whether they cover your ADP environment and country. Where they do not, KoppelHet builds the integration.

Who manages the integration?

The customer can do this through the platform, with KoppelHet for support.

Which pay components can be included?

Variable components HR records in Personio, such as travel allowance and bonuses. Which components exactly is agreed at the start with payroll.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Personio is read through webhooks and the Personio API, with standard attributes (id, first_name, last_name, hire_date, weekly_working_hours, position, department, fix_salary, termination_date) and custom attributes that must be released for API access per field.
  • ADP iHCM is written through the ADP APIs for iHCM, such as the Worker Management API. Variable pay components go as a batch through the Pay Data Input API for iHCM NL; a batch gets a batch ID with which it can be modified later.
  • ADP records per application in the Consumer Application Registry (CAR) which APIs the integration may call; which fields come back depends on the data entitlements.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in PersonioField in ADP iHCMNotes
idPersoneelsnummer (extern ID)
first_name / last_nameVoornaam / achternaam
hire_dateDatum in dienst
weekly_working_hoursContracturen
positionFunctie
departmentAfdeling
fix_salaryBasissalaris
Custom attribute reiskostenLooncomponent reiskosten
Custom attribute bonusLooncomponent bonus
termination_dateDatum uit dienst

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.