Payroll integration
Dayforce to Sage Payroll integration: UK starters, changes and leavers from Dayforce as a file for Sage 50 Payroll
An integration between Dayforce and Sage Payroll prepares new UK employees, compensation changes and leavers from Dayforce every working day as a CSV file for the Data Import of Sage 50 Payroll. Sage 50 Payroll has no open API, so payroll starts the import, but retyping from Dayforce is no longer needed.
What the integration does
Organisations that use Dayforce as their HR system and keep a UK entity in Sage 50 Payroll send payroll an overview of starters, pay changes and leavers every month. Payroll enters it again in Sage, and a leaver already in Dayforce with a future date is then only noticed after the run.
- KoppelHet gets an API user in Dayforce with a role that may only see the UK fields for Sage.
- Every working day KoppelHet fetches new, changed and leaving employees at a UK location.
- KoppelHet converts them into the Employee Details template and checks department, cost centre and NI number.
- Payroll makes a backup and imports the file into Sage 50 Payroll.
- Rejected lines go on the difference list for HR.
What to watch for with Dayforce and Sage Payroll
- Dayforce can filter employees on termination date with a start and end. KoppelHet uses this to also request leavers with a date in the coming period, so the Leaving Date is already in the Sage file before the run with the final payment.
- The change-date filter in Dayforce can be limited to entities such as WorkAssignments and EmploymentStatuses, but only when both start and end date are given. KoppelHet always passes both dates; otherwise Dayforce ignores the limit and returns every changed employee.
- Sage 50 Payroll imports departments and cost centres at company level, separately from employees. KoppelHet therefore delivers a new Dayforce department as a department file first, so the employee in it is not rejected on import.
- Dayforce stores compensation and work assignment with a start and end date. KoppelHet reads a pay change on its own effective date, so a rise from the first of next month is in the file for that Sage period and not earlier.
- A field only comes out of Dayforce if the API user's role has rights to it. An empty NI number or salary on a UK starter is therefore a rights check first; KoppelHet does not put such a starter in the file but on the difference list.
- The RTI Payroll ID can no longer be changed in Sage once the employee is imported. KoppelHet sends the XRefCode from Dayforce as Employee Reference and leaves the RTI field empty, so a rehire in Dayforce lands on the same Sage record.
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
Why not Dayforce's own UK payroll?
That can be a good choice. This integration is for organisations that deliberately keep UK payroll in Sage 50, for example with a bureau.
Do bonuses and hours also go across?
Not in the first version. A payments file with hours and rates can be added later as an extension.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Dayforce through the REST API on /api/{clientName}/v1/Employees with FilterHireStartDate/EndDate, FilterTerminationStartDate/EndDate and FilterUpdatedStartDate/EndDate with filterUpdatedEntities, and per employee expand for Addresses, WorkAssignments, EmploymentStatuses and CompensationSummary with contextDate. Fields only with field-level access in the role.
- Sage 50 Payroll through File > Data Import with the CSV templates Employee Details and the company import for departments and cost centres, or Advanced Data Import with XLS or CSV. Automatic import only with the SDK from the paid Sage Developers Programme.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Dayforce | Field in Sage Payroll | Notes |
|---|---|---|
XRefCode | Employee Reference | Fixed key; RTI Payroll ID stays empty |
FirstName, LastName | Forename, Surname | |
National ID (GBR) | NI Number | |
Addresses (thuisadres) | Address | |
EmploymentStatuses (startdatum) | Start Date | |
WorkAssignments (department) | Department | Must exist in Sage |
CompensationSummary | Regular pay | Converted to the Sage period |
EmploymentStatuses (beëindiging) | Leaving Date |
Related
Ashby → Dayforce
Ashby to Dayforce integration: have Dayforce validate the hire first, then save it
Bullhorn → Dayforce
Bullhorn to Dayforce integration: first placement of an employee as an employee in Dayforce
Carerix → Dayforce
Carerix to Dayforce integration: successful placement as a validated new employee in Dayforce
Dayforce → 4PS Construct
Dayforce to 4PS Construct integration: technicians and site managers from Dayforce in 4PS, with cost centre and end date