
Leave, absence and time
Planday to YouForce integration: worked hours per employment to payroll
With an integration between Planday and Visma Raet YouForce, the approved hours and supplements from Planday go to YouForce per employment and per pay component, without an export file. Employees, contract hours and termination dates come from YouForce into Planday, so scheduling and payroll work from the same employments.
What the integration does
Employers that schedule in Planday and run payroll in Visma Raet YouForce export the hours to Excel at the end of the period, after which payroll enters them per pay component. Someone with two contracts then sometimes gets the hours on the wrong employment.
- HR records a new employee or contract change in YouForce, also when it only takes effect later.
- KoppelHet places the employee in Planday with department, contract hours and the employment number as salary identifier.
- Managers approve the shifts. After the period KoppelHet fetches the approved hours, without unpaid breaks.
- The hours go to YouForce per employment, pay component and date.
- KoppelHet follows processing in YouForce and reports rejected lines in the platform.
Back: New employees with department · Contract hours on the effective date of a change · Termination date
What to watch for with Planday and Visma Raet YouForce
- YouForce accepts hours per employment, not per person. Planday has a salary identifier per employee and can record a different one per department. KoppelHet stores the YouForce employment number there, so someone with a seasonal and a permanent contract gets their hours on the right employment.
- Planday includes the breaks per shift, with a flag per break for whether it is paid. YouForce expects the number of hours to pay. KoppelHet subtracts unpaid breaks from the shift duration before the hours go to YouForce, so payroll does not have to check this per shift.
- In Planday administrators set salary codes per shift type, employee group and supplement. YouForce has pay components with their own element code. We agree the translation from salary code to element code with payroll; a code without a translation is not sent and raises an alert.
- A delivery to YouForce first gets a ticket number, and is then processed or rejected. KoppelHet requests the outcome per ticket. A rejected hours line appears in the platform with the reason from YouForce, so scheduling can correct the shift in Planday before the payroll run.
- YouForce has planned changes, such as an increase in hours from next month. In Planday, assigning contract hours to an employee has no effective date. KoppelHet holds the planned change and applies it in Planday on the effective date itself, so scheduling does not use the new hours too early.
- Planday calculates contract hours per month, while YouForce records a work schedule per day or per week for each employment. KoppelHet converts the schedule into hours per month, and picks the Planday contract rule that fits the number of hours.
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
Do leave entitlements from YouForce also go to Planday?
That can be added later as an extension. YouForce supplies leave entitlements per employment and leave type, and Planday can post adjustments to a vacation account. We start with hours and employees.
What happens to hours approved after closing?
They go to YouForce in the next run, with the date of the shift. How YouForce settles a date in a closed period is agreed with payroll in advance.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Planday is read through the Payroll API (GET /payroll/v1.0/payroll with departmentIds, from, to and shiftStatus=Approved; shiftsPayroll with breaks (duration, isPaid) and supplements (salaryCode, duration)). Salary identifiers per department through PUT /pay/v1.0/salaryIdentifiers/employees/{employeeId}/departments/{departmentId}. OAuth 2.0; per portal 750 requests per minute.
- Hours go to YouForce through the WFM API, POST /v1.0/PayComponents/{employment} with elementCode, value and effectiveDate; the response contains a ticketId, and GET /v1.0/PayComponents/{ticketId}/status returns status and errorMessage. Scope Youforce-WFM:Write_Basic. Employees, employments, planned changes (Employments/PlannedChanges) and work schedules (EmploymentWorkSchedules) are read with the Get_Basic scope, on the last sync date.
- Planday is written through the HR API (employees with departments, employeeGroups, workHours and contractRulesRuleId; deactivate with date) and the Contract Rules API (PUT /contractrules/v1.0/employees/{employeeId}).
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Planday | Field in Visma Raet YouForce | Notes |
|---|---|---|
salaryIdentifier (per afdeling) | employmentCode | The employment number, not the person code |
salaryCode van dienst of toeslag | elementCode | Through a translation table |
Duur dienst minus pauzes met isPaid false | value | |
date van de dienst | effectiveDate | |
supplements.duration en salaryCode | elementCode en value van de toeslag | |
YouForce persoon en dienstverband (terug) | firstName, lastName, email, departments | |
YouForce organizationUnit (terug) | departments | Through a translation table |
YouForce werkrooster (terug) | workHours (uren per maand) | |
YouForce dischargeDate (terug) | deactivate met date |
Related
ADP iHCM → Planday
ADP iHCM to Planday integration: employees, department and contract hours from ADP in Planday
BambooHR → Planday
BambooHR to Planday integration: employees, time off and balances in scheduling, and open shifts after a departure
Dayforce → Planday
Dayforce to Planday integration: employees, work assignments and approved time off from Dayforce in Planday
Deel → Planday
Deel to Planday integration: own employees with work hours in Planday, approved time off and balance included