Greenhouse logoDayforce logo

Recruitment to HR

Greenhouse to Dayforce integration: accepted offer as a validated new employee in Dayforce

With an integration between Greenhouse and Dayforce, an accepted offer in Greenhouse becomes a new employee in Dayforce, with start date, location, position, employment status and pay from the offer. Because Dayforce never removes an employee once created, KoppelHet has Dayforce validate every hire first and only creates the employee when everything is right.

What the integration does

Organisations that recruit in Greenhouse and use Dayforce for HR and payroll often work without an integration between the two. HR re-enters every hire in Dayforce, and a typo leads to an employee that cannot be removed there.

  1. The recruiter accepts the offer in Greenhouse.
  2. KoppelHet confirms the notification immediately and reads candidate, job, office, opening and offer.
  3. Office, opening and pay are translated to the codes in Dayforce.
  4. Dayforce validates the hire without saving; on an error HR gets an alert.
  5. Then KoppelHet actually creates the employee and stores the key with the application.
Greenhouse → KoppelHet → DayforceSOURCEGreenhouseTARGETDayforceKoppelHetmapping · logging · monitoringGreenhouse → KoppelHet → DayforceSOURCEGreenhouseTARGETDayforceKoppelHetmapping · logging · monitoring
Out: New employee with fixed key · Start date and employment status · Location and position · Pay type and pay · Alert on a withdrawn offer

What to watch for with Greenhouse and Dayforce

  • Dayforce never removes an employee, while Greenhouse can still change or withdraw an offer after acceptance. KoppelHet has Dayforce validate every hire first without saving, and reports a withdrawn offer to HR, who ends the employment in Dayforce.
  • In Dayforce the integration itself supplies the key of a new employee. Greenhouse repeats a notification up to seven times in about fifteen hours. KoppelHet ties the key to the application, so a repeated notification never creates a second employee.
  • An office in Greenhouse is a name, sometimes with a parent office, while Dayforce works with fixed codes for locations and organisation. KoppelHet translates per office to the Dayforce code, and an unknown office stops at validation instead of an employee in the wrong place.
  • A currency field in Greenhouse flagged as compensation has a frequency next to amount and currency. KoppelHet derives from it whether someone gets a fixed salary or an hourly rate in Dayforce, so an hourly rate does not enter payroll as a monthly salary.
  • Greenhouse supplies the opening with a hire, with custom fields. If Dayforce works with positions, HR puts the position code on the opening in Greenhouse and KoppelHet takes it over, so no separate table per job is needed.
  • Greenhouse only returns the offer in Harvest v3 to a user allowed to see salary data. The integration user in Greenhouse gets that right and otherwise only read access; in Dayforce a web service user that may only create employees.

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 happens if a candidate drops out after acceptance?

The employee is then already in Dayforce and cannot be removed. KoppelHet reports it to HR, who ends the employment.

What about audit logging, GDPR and our integration platform?

You are the controller and KoppelHet is the processor, under a data processing agreement. Only hired candidates go to Dayforce, and every action is in the audit logging. An existing integration platform is left alone.

Technical details for IT

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

  • Greenhouse through the hire_candidate webhook (on Accept Offer; application with opening.opening_id and custom_fields, candidate with email_addresses and phone_numbers, jobs[] with offices and departments, offer with version, starts_at and custom_fields; currency fields with amount, unit and frequency; HMAC-SHA256 in the Signature header; attempts after 1, 15, 60, 120, 240 and 480 minutes) and Harvest v3 with OAuth 2.0.
  • To Dayforce through POST https://www.dayforcehcm.com/api/{clientName}/v1/Employees, first with isValidateOnly and then for real (EmployeePostRequest with XRefCode, FirstName, LastName and subordinate resources such as EmploymentStatuses, WorkAssignments and Contacts). A created employee always remains.

Which fields are transferred

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

Field in GreenhouseField in DayforceNotes
application.idXRefCodeThrough a fixed number series
first_name en last_nameFirstName en LastName
offer.starts_atHireDate en ingangsdatum van de status
jobs[].officesLocatie in WorkAssignments
opening.custom_fields (positiecode)Positie in WorkAssignments
Valutaveld met frequencyBetaaltype en beloning in EmploymentStatuses
email_addresses en phone_numbersContacts

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.