

Payroll integration
Darwinbox to YouForce integration: hires and pay changes from Darwinbox as a request in YouForce
With an integration between Darwinbox and Visma Raet YouForce, a new Dutch employee or a salary and job change in Darwinbox becomes a request in YouForce, with the effective date from Darwinbox. HR in the Netherlands completes each request with the collective agreement grading, and an approved departure is queued as a contract change with an end date.
What the integration does
Organisations with a Dutch branch that run HR centrally in Darwinbox and Dutch payroll under a collective agreement in YouForce receive promotions and rises from headquarters in a spreadsheet. HR in the Netherlands works out per line which effective date applies and enters everything again.
- HR completes a hire or change for the Dutch group company in Darwinbox.
- KoppelHet reads the employment history by effective date and works out per employee what changed for payroll.
- A new employee becomes a hire request, a change in salary, job or hours a contract change, both with the effective date from Darwinbox.
- HR in the Netherlands adds scale and step and completes the request.
- KoppelHet follows every request until the workflow in YouForce is finished and reports a rejection.
What to watch for with Darwinbox and Visma Raet YouForce
- YouForce only accepts a hire or contract change from outside as a request in HR Core Self Service. KoppelHet prepares the data from Darwinbox; the grading under the collective agreement stays with HR in the Netherlands.
- Darwinbox can filter the employment history on effective date instead of entry date. That way KoppelHet sees a promotion HR enters today that takes effect from the first of last month, and puts that date in the request.
- Each compensation component in Darwinbox shows whether it is the latest value and what the reason for the change was. KoppelHet only passes on the latest value and puts the reason in the comment, so HR in the Netherlands sees whether it is a promotion or an annual rise.
- An approved departure in Darwinbox becomes a contract change with an end date in YouForce. A departure that is still pending or revoked in Darwinbox produces no request.
- YouForce confirms a request straight away, but the workflow may still be running afterwards. KoppelHet checks until the workflow is really closed and whether it ended well or not, and shows an open Darwinbox change until then.
- Darwinbox returns the type of employment per employee, such as permanent or contract. Only the types paid through YouForce in the Netherlands are passed on; contingent staff stay out of the requests.
- Darwinbox only grants API access on request, with its own key per endpoint. KoppelHet only requests read access to employees, compensation, history and departures, so the integration cannot change anything in Darwinbox.
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
What if HR in the Netherlands rejects a request?
The rejection shows in the KoppelHet platform next to the change from Darwinbox. HR corrects Darwinbox or queues the change again.
Can a returning employee be placed on their existing person in YouForce?
Yes. KoppelHet looks up the person through the Darwinbox number in the extra field and starts a new contract on that person.
What do we need to arrange in Darwinbox and YouForce?
In Darwinbox API access with read rights, requested from Darwinbox. In YouForce permission for the integration to start requests and fill an extra field.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Darwinbox through the Employee Core outbound APIs (masterapi/employee with last_modified, UpdateEmployeeDetails/employeehistory with filter_on_effective_date, separationDetails with separation_status Approved) and the Compensation API componentctcbreakup (is_latest, reason_for_change, effective_date). Basic auth with an api_key per endpoint, or OAuth 2.0 client credentials.
- YouForce through the Recruitment API (POST hires, persons/{personId}/contracts for rehires, contracts/{contractId}/Adjustments with effectiveDate and endDate), each as a workflow in HR Core Self Service with scope Youforce-Recruitment:HSS_startWorkflow. Asynchronous; finished when hrssWorkflowStatus.data.isActive is false, with endStatus OK or NOK. The Darwinbox number in an extension field through the Extensions API.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Darwinbox | Field in Visma Raet YouForce | Notes |
|---|---|---|
employee_id | Extra veld op de persoon | Through the Extensions API; key for every later change |
first_name, middle_name, last_name | Voornaam, voorvoegsel en achternaam | |
date_of_birth en adres | Geboortedatum en adres | |
date_of_joining | Datum in dienst in de aanname-aanvraag | |
designation_name | Functie | Through a lookup table |
department_name | Organisatie-eenheid | Through a lookup to the YouForce code |
ctc_break_up: basiscomponent (value, effective_date) | Salaris en ingangsdatum in de aanvraag | |
Contract Termination Date (Approved) | endDate in een contractwijziging | With effectiveDate equal to the last working day |
Related
Darwinbox → Active Directory
Darwinbox to Active Directory integration: domain accounts that follow Darwinbox, per office location
Darwinbox → ADP iHCM
Darwinbox to ADP iHCM integration: CTC changes, extra payments and approved separations to Dutch ADP payroll
Darwinbox → AFAS Profit
Darwinbox to AFAS integration: Dutch employees from Darwinbox in AFAS payroll
Darwinbox → Arbodienst (SIVI)
Darwinbox to the occupational health service via SIVI: approved sick leaves as absence reports