SmartRecruiters logoPersonio logo

Recruitment to HR

SmartRecruiters to Personio integration: hire as a person with employment in Personio

With an integration between SmartRecruiters and Personio, a candidate hired in SmartRecruiters becomes a person with employment in Personio in one step, in onboarding status, with legal entity, department, job title, start date and hours. KoppelHet then sets the onboarding status in SmartRecruiters to successful or failed, so the recruiter knows whether the new colleague is in Personio.

What the integration does

Organisations that recruit in SmartRecruiters and use Personio as their HR system retype every hired candidate in Personio. Legal entity, hours and probation come from the offer or an email, and if the email address already belongs to a former employee, creation fails without the recruiter noticing.

  1. The recruiter sets the candidate to hired for the job in SmartRecruiters.
  2. KoppelHet retrieves candidate, job and offer.
  3. KoppelHet checks in Personio whether the email address already belongs to someone; if so, the case goes to HR.
  4. KoppelHet creates person and employment in Personio, in onboarding status, and the salary where needed.
  5. The onboarding status in SmartRecruiters is set to successful, or to failed with the reason.
SmartRecruiters → KoppelHet → PersonioSOURCESmartRecruitersTARGETPersonioKoppelHetmapping · logging · monitoringSmartRecruiters → KoppelHet → PersonioSOURCESmartRecruitersTARGETPersonioKoppelHetmapping · logging · monitoring
Out: Candidate with status per job · Offer with start date, hours and salary · Person and employment in Personio (onboarding) · Fixed salary or hourly wage · Onboarding status back in SmartRecruiters

What to watch for with SmartRecruiters and Personio

  • Personio creates person and employment in one call, and KoppelHet sets the employment to onboarding. The new colleague is then in Personio for preparations, but only counts as active after the start.
  • SmartRecruiters keeps an onboarding status per hired candidate and job. If Personio rejects the hire, for example because of a duplicate email address, KoppelHet sets that status to failed with the reason, so the recruiter sees it in SmartRecruiters rather than HR on the start day.
  • Start date, hours and probation are offer properties in SmartRecruiters that each organisation configures itself. At the start we record per property which Personio field belongs to it, and for probation we choose the end date, because Personio accepts an end date or a length but not both.
  • SmartRecruiters is often used for several countries, while Personio works per legal entity. The job's location decides through a table the legal entity and office in Personio; a country without an entity does not go to Personio.
  • Personio asks for the full-time hours next to the hours per week, for the part-time factor. KoppelHet fills the full-time hours per entity, so a Dutch entity with a shorter working week gets a different factor than a German one.
  • A fixed salary or hourly wage can go into Personio through the API, with an effective date and an interval. A bonus cannot. If the offer contains a signing bonus, it becomes a task for HR.
  • SmartRecruiters only sends a number in a notification and expects a response within five seconds. KoppelHet confirms right away and does the work afterwards, so a slow response from Personio does not cause a repeated notification from SmartRecruiters.

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

What if a former employee is hired again?

Then the email address already exists in Personio. KoppelHet creates no second person, sets the status in SmartRecruiters to failed and passes the case to HR.

Does Personio run Dutch payroll?

No. Personio supplies data to a Dutch payroll; that is a separate integration.

Technical details for IT

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

  • SmartRecruiters through a webhook subscription (notification with only the ID; HMAC-SHA256 in smartrecruiters-signature; 202 within 5 seconds; up to ten retries; callbacks log of 30 days) and the Customer API with OAuth 2.0 client credentials. Onboarding status through PUT /candidates/{id}/jobs/{jobId}/onboardingStatus (ONBOARDING_SUCCESSFUL or ONBOARDING_FAILED).
  • Personio through POST /v2/persons (scope personio:persons:write; first_name and last_name required; email unique; employment with status ONBOARDING, employment_start_date, weekly_working_hours, full_time_weekly_working_hours, probation_end_date or probation_period_length, legal_entity, office, org_units and position.title). Salary through POST /v2/compensations (person, type, value, effective_from, interval; fixed, hourly, one-time or recurring, no bonus; scopes compensations:read and write).

Which fields are transferred

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

Field in SmartRecruitersField in PersonioNotes
firstName en lastNamefirst_name en last_name
emailemailMay only belong to one person in Personio
Locatie van de vacaturelegal_entity en officeThrough a table per country and branch
Afdeling van de vacatureorg_units (department)
Functie van de vacatureposition.title
Startdatum (offer property)employment_start_date
Uren per week (offer property)weekly_working_hoursWith full_time_weekly_working_hours per entity
Einde proeftijd (offer property)probation_end_date
Salaris en eenheid (offer property)Compensation (vast of uurloon)

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.