SmartRecruiters logoDayforce logo

Recruitment to HR

SmartRecruiters to Dayforce integration: validate first, then create the employee

With an integration between SmartRecruiters and Dayforce, a candidate hired in SmartRecruiters becomes an employee in Dayforce, with work assignment, location, employment status and start date. Because Dayforce never deletes an employee, KoppelHet has Dayforce validate the data first and reports the outcome back in SmartRecruiters.

What the integration does

Organisations that use Dayforce for HR and pay and recruit in SmartRecruiters enter every hire again in Dayforce. A typo there is hard to undo, and the recruiter in SmartRecruiters does not see when the new colleague is in Dayforce.

  1. The recruiter sets the candidate to hired in SmartRecruiters.
  2. KoppelHet fetches candidate, job and offer from SmartRecruiters.
  3. Dayforce validates the new employee without saving it.
  4. If validation passes, KoppelHet creates the employee for real.
  5. SmartRecruiters gets the onboarding status successful, or failed with the reason from validation.
SmartRecruiters → KoppelHet → DayforceSOURCESmartRecruitersTARGETDayforceKoppelHetmapping · logging · monitoringSmartRecruiters → KoppelHet → DayforceSOURCESmartRecruitersTARGETDayforceKoppelHetmapping · logging · monitoring
Out: Candidate with status per job · Offer with start date, salary and hours · Employee in Dayforce with its own key · Work assignment, location and employment status · Onboarding status in SmartRecruiters

What to watch for with SmartRecruiters and Dayforce

  • An employee who is in Dayforce once cannot be removed. KoppelHet therefore has Dayforce only validate every hire from SmartRecruiters first and only saves when there are no errors.
  • If validation in Dayforce fails, KoppelHet sets the onboarding status in SmartRecruiters to failed and keeps the reason. The recruiter thus sees on the candidate that something is missing, without a half employee in Dayforce.
  • The integration chooses the employee key in Dayforce itself. KoppelHet builds it from the SmartRecruiters candidate number with a fixed prefix, so it does not clash with numbers HR issues by hand and a second notification finds the same employee.
  • Dayforce has a flag that sends the employee a first-time access email on creation. KoppelHet turns it off, because a SmartRecruiters hire often arrives weeks before the start date; HR sends the access itself.
  • Work pattern and contract hours belong to the work contract in Dayforce. SmartRecruiters has no fixed hours field, so we add an offer property for weekly hours before the integration goes live.
  • If a hired candidate is later moved back in SmartRecruiters, they are already in Dayforce. KoppelHet reports that to HR, which ends the employment in Dayforce; the integration deletes nothing.
  • SmartRecruiters only sends a number in the notification and retries up to ten times. Because Dayforce does not let a hire be undone, KoppelHet processes each notification once and checks the SmartRecruiters log daily for missed hires.

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 the salary come along?

Not in the first version. HR records the salary in Dayforce; carrying it over from the offer can be added later as an extension.

What if a job has a location Dayforce does not know?

Then validation fails, and the onboarding status in SmartRecruiters goes to failed. HR adds the location to the table and KoppelHet tries again.

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 (ID only; HMAC-SHA256 in smartrecruiters-signature; 202 within 5 seconds; up to ten retries; callbacks log 30 days) and the Customer API, with the Offer API (candidates_offers_read) and PUT /candidates/{id}/jobs/{jobId}/onboardingStatus (candidates_manage).
  • Dayforce through POST on /api/{clientName}/v1/Employees, first with isValidateOnly=true and then without. Body with XRefCode, FirstName, LastName, HireDate, SendFirstTimeAccessEmail and subordinate resources such as Contacts, Addresses, Locations, WorkAssignments, EmploymentStatuses and WorkContracts. An added employee cannot be removed.

Which fields are transferred

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

Field in SmartRecruitersField in DayforceNotes
firstName en lastNameFirstName en LastName
Kandidaat-IDXRefCodeWith an agreed prefix
email en phoneNumberContacts
location (vacature)Locations en WorkAssignmentsThrough a lookup table
Startdatum (offer property)HireDate
Soort dienstverband (offer property)EmploymentStatuses
Uren per week (offer property)WorkContractsWork pattern per contract

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.