Personio logoAllSolutions logo

HR to ERP

Personio to AllSolutions integration: employees, department and manager from Personio in the ERP

With an integration between Personio and AllSolutions, every employee from Personio appears automatically in AllSolutions, with department, job, manager, cost centre and contract hours, in the company that matches the legal entity in Personio. On departure the employee gets an end date in AllSolutions, so they no longer book hours or approve, while their project history stays in place.

What the integration does

Anyone using Personio for HR and AllSolutions for projects, hours and purchasing often only creates new colleagues in AllSolutions when they ask why they cannot book hours. A departed manager then still shows as approver in AllSolutions months later.

  1. HR creates the new employee in Personio, with department, job, manager and start date.
  2. Personio reports the change; KoppelHet fetches the person and the employment.
  3. The employee appears in the AllSolutions company of the right entity, with department, job, cost centre and hours per week.
  4. A new department or manager in Personio goes to AllSolutions as an update, only for the fields that changed.
  5. After the last working day KoppelHet sets the end date in AllSolutions. The employee remains, with their hours and projects.
Personio → KoppelHet → AllSolutionsSOURCEPersonioTARGETAllSolutionsKoppelHetmapping · logging · monitoringPersonio → KoppelHet → AllSolutionsSOURCEPersonioTARGETAllSolutionsKoppelHetmapping · logging · monitoring
Out: Employee with name, work email and employee number · Department and job · Manager · Cost centre and contract hours · Start and end date

What to watch for with Personio and AllSolutions

  • On both sides the administrator first has to open up fields. In Personio HR whitelists each attribute for the API, in AllSolutions application management opens the fields of the employee screen to the integration. KoppelHet provides one list that applies to both, so no more data goes along than AllSolutions needs.
  • Personio only sends an id on a change, not the data. AllSolutions accepts an update with only the fields that differ. KoppelHet therefore compares with the previous state and sends only what really changed, so manual work by finance on other fields stays in place.
  • Personio can split an employee over several cost centres with percentages. For approvals and reporting in AllSolutions one cost centre counts; the integration picks the cost centre with the highest percentage and reports an even split to finance.
  • AllSolutions cannot delete an employee who still appears in hours, projects or approval routes. KoppelHet therefore never deletes, but sets the end date on departure in Personio, so the history in the ERP stays intact.
  • Personio has legal entities, AllSolutions has companies the integration account must switch between. Per entity we record which AllSolutions company the employee belongs to, and a foreign entity stays outside AllSolutions if it has no ledger there.
  • Personio distinguishes own employees from externals. Externals who book hours on projects belong in AllSolutions too; the type goes along, so project accounting can keep them apart.
  • A new colleague is in onboarding status in Personio weeks before starting. KoppelHet already creates them in AllSolutions with the start date, so the project lead can schedule them before they begin.

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 · Basic

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.

Frequently asked questions

Do leave and sickness also go to AllSolutions?

That can be added later as an extension, for example so planning knows who is away. We start with employees and organisation.

What if a department in Personio does not exist in AllSolutions?

Then AllSolutions rejects the value and KoppelHet does not create the employee halfway. The message is in the platform, and after a line in the lookup table it goes through.

Does salary go to AllSolutions?

No. The integration does not read compensation from Personio. Hourly cost rates stay in AllSolutions.

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 (only person or employment ids) and the Personio API v2 (persons and employments with legal_entity, org_units, position, supervisor, cost_centers, weekly_working_hours, type INTERNAL or EXTERNAL, status ONBOARDING and termination_date), with read-only access. Custom attributes must be whitelisted for the API.
  • AllSolutions through the REST API - POST /api/v1/Login with SHA1 signature, new employees with POST /api/v1/{browserlabel}, updates with PUT /api/v1/{browserlabel}/{RecordID} with only the changed fields, switching company through MWZBDR. Free fields through the action they are set up under. Which fields are open and what they are called is set by the customer with views and settings for the REST API.

Which fields are transferred

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

Field in PersonioField in AllSolutionsNotes
id (persoon)PersoneelsnummerFixed key; the AllSolutions record ID is stored too
first_name, preferred_name, last_nameNaam
emailE-mailadres
org_units (afdeling)AfdelingThrough a lookup table
positionFunctie
supervisorLeidinggevendeEmployee number of the manager
cost_centersKostenplaatsWith a split, the cost centre with the highest percentage
weekly_working_hoursUren per week
legal_entityInlogbedrijfFixed mapping per entity
employment_start_date en termination_dateDatum in dienst en datum 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.