Recruitment to HR
Greenhouse to Rippling integration: every hire straight into Rippling for review
With an integration between Greenhouse and Rippling, a candidate who accepts an offer in Greenhouse appears directly in Rippling as a hire for review, with job title, start date, work country, department and pay with period. KoppelHet creates the hire at the moment Greenhouse reports the hire.
What the integration does
Organisations that use Rippling for HR, devices and apps and recruit in Greenhouse now enter a hire by hand in Rippling's onboarding. As long as nobody does that, the laptop and accounts Rippling arranges after a hire wait too.
- KoppelHet fetches employment types, work locations and departments from Rippling daily.
- The recruiter marks the candidate as hired in Greenhouse after acceptance.
- KoppelHet requests the mandatory fields for the work country and fills them from candidate, job and offer.
- The hire is ready in Rippling; an admin or manager reviews and completes it.
What to watch for with Greenhouse and Rippling
- KoppelHet creates the hire at the moment Greenhouse sends hire_candidate, and only needs read rights in Harvest v3 for it.
- Rippling has employment types with their own ID, such as Full-time or Intern. KoppelHet translates the select field from the offer to the ID of an employment type from Rippling and reports an unknown value.
- A Greenhouse compensation field has amount, currency and frequency, and Rippling asks exactly those three for a hire. KoppelHet carries them over together, so a monthly salary from the offer is not read as an annual amount in Rippling.
- Greenhouse retries a failed webhook up to seven times. KoppelHet sends the application number as ATS reference and every attempt with the same Idempotency-Key to Rippling, so a retry does not create a second hire.
- In this integration a Greenhouse office determines the work country, and Rippling asks for different mandatory fields per country. An office called remote has no country; for that KoppelHet records the country in a custom field on the offer.
- If Rippling recognises the candidate as a former employee, it returns the existing role instead of a new hire. KoppelHet passes that returner to HR, who starts a rehire in Rippling.
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 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.
Frequently asked questions
Does the new colleague become an employee in Rippling straight away?
No. Rippling always turns an API hire into a hire for review first. An admin or manager completes it, so Rippling's approval rules keep applying.
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 candidate, jobs[] with departments and offices, offer with starts_at and custom_fields; currency fields with amount, unit and frequency; HMAC-SHA256 in the Signature header; up to seven attempts) and Harvest v3 with OAuth 2.0 client credentials.
- To Rippling through REST API v2 - GET /hire-requirements/ with country_code and hire_type, then POST /hires/ with an Idempotency-Key. Status ready_for_review, incomplete with missing_required_fields or failed; existing_role_id for a known person. Token with hires.read-write and hire-requirements.read; Rippling's API SKU is required.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Greenhouse | Field in Rippling | Notes |
|---|---|---|
first_name en last_name | personal.first_name en last_name | |
email_addresses (personal) | personal.invite_email | |
jobs[].offices | work_location.country_code en location_id | Through a table per office |
jobs[].departments | employment.department_id | |
jobs[].name | employment.title | |
offer.starts_at | employment.start_date | |
Contractsoort (eigen veld in het aanbod) | employment.employment_type_id | |
Valutaveld in het aanbod (amount, unit, frequency) | compensation.base_pay_amount en base_pay_period | |
application_id | related_records.ats_applicant_id |
Related
Greenhouse → ADP Workforce Now
Greenhouse to ADP Workforce Now integration: accepted offer as an in-progress hire in ADP
Greenhouse → AFAS Profit
Greenhouse to AFAS integration: an accepted offer starts onboarding in AFAS Profit
Greenhouse → BambooHR
Greenhouse to BambooHR integration: hired candidates in BambooHR automatically and completely
Greenhouse → Dayforce
Greenhouse to Dayforce integration: accepted offer as a validated new employee in Dayforce