Personio logoOI

Identity and access management

Personio to One Identity integration: employees from Personio in One Identity Manager

With an integration between Personio and One Identity Manager, employees, departments and teams from Personio are ready every day in fixed files that One Identity Manager's CSV connector reads. One Identity Manager uses them to create accounts and permissions, and sees a departure on the last working day from Personio.

What the integration does

Organisations that use One Identity Manager and run HR in Personio often load employees through an export someone pulls from Personio periodically. That export changes layout as soon as HR adds a column, and a departure only reaches One Identity Manager when the next export is there.

  1. Personio gets an API client with read-only rights on persons, employments and org units.
  2. KoppelHet creates two files with a fixed layout, employees and organisation, and places them where the synchronisation server reads.
  3. The One Identity Manager administrator sets up the CSV connector with both files in one system connection.
  4. One Identity Manager reads the files and links persons to departments and managers.
  5. On departure the row stays with the last working day filled in, so One Identity Manager processes the departure itself.
Personio → KoppelHet → One IdentitySOURCEPersonioTARGETOne IdentityOne IdentityKoppelHetmapping · logging · monitoringPersonio → KoppelHet → One IdentitySOURCEPersonioTARGETOne IdentityOne IdentityKoppelHetmapping · logging · monitoring
Out: Employee file with one row per person · Department file with departments and teams as a path · Job title, legal entity and manager · Start date and last working day · Internal or external

What to watch for with Personio and One Identity

  • One Identity has cloud connectors for HR systems such as Workday, but we found none for Personio. One Identity Manager's CSV connector reads any source that keeps to a fixed file layout. KoppelHet makes sure Personio delivers that layout exactly the same every day.
  • A person can have several employments in Personio, for example after a move to another legal entity. With a duplicate key the CSV connector picks the first, the last, no row or an error, depending on its setting. KoppelHet prevents that by putting only the applicable employment per person in the file.
  • Departments and teams are separate org units in Personio. The CSV connector can read one column as a path in a hierarchy and loads parent units first. KoppelHet puts each team under its department in that path, so One Identity Manager sees them as one tree.
  • One Identity Manager cannot use a file from another source to mark missing persons as outstanding. Someone who becomes INACTIVE in Personio therefore does not disappear from the file; the row stays with the last working day as ExitDate until after the retention period.
  • Personio is often used internationally, with names such as Søren or Łukasz. KoppelHet writes the files in UTF-8 and puts text columns between quotes, so the CSV connector reads special characters and commas in job titles correctly.
  • Personio delivers dates as year-month-day, and the CSV connector reads dates according to the language set for the file. KoppelHet keeps the year-month-day format and records it in the system connection, so an ExitDate is never read as another month.
  • Employees on leave are LEAVE in Personio and stay in the file as active. For a type of leave where access must stop, KoppelHet adds a separate column, so One Identity Manager can apply its own rule without simulating a departure.

This integration is also part of joiner, mover, leaver.

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

Does this work with several legal entities?

Yes. All entities are in the same file, with the entity in its own column.

Can the work address go back to Personio?

Yes, but not through the files. That can follow later as an extension, with write rights on the email address in Personio.

Technical details for IT

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

  • Personio through webhooks and the Personio API v2 (/v2/persons, /v2/persons/{id}/employments with status, type, org_units with type department or team, legal_entity, supervisor, position.title, employment_start_date and termination; filter updated_at.gt, limit at most 50, cursor). Read scopes only.
  • One Identity Manager reads two files in one system connection through the CSV connector (UTF-8, fixed header row, text delimiters), with a key column in the employee file, Hierarchical sort order on the department path, Uniqueness violation behavior set to Throw error, Read-only access and Data import in the synchronisation step. Access to the files directly or through a remote connection server.

Which fields are transferred

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

Field in PersonioField in One IdentityNotes
person.idSleutelkolom PersonnelNumber
preferred_name of first_nameFirstName
last_nameLastName
position.titleKolom functie
org_units (department en team)Afdelingspad (hiërarchische sortering)
legal_entityKolom bedrijf
supervisor.idKolom leidinggevende
type (INTERNAL of EXTERNAL)Kolom soort medewerker
employment_start_dateEntryDate
last_working_dayExitDate

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.