Payroll integration
ADP Workforce Now to Sage Payroll integration: UK starters, pay and departments from ADP as an import file for Sage 50 Payroll
An integration between ADP Workforce Now and Sage Payroll prepares UK starters, pay changes and new departments from ADP Workforce Now every working day as CSV files for the Sage 50 Payroll Data Import. Sage 50 Payroll has no open API: payroll takes a backup and starts the import, but retyping from ADP is no longer needed.
What the integration does
Organisations that use ADP Workforce Now in the US and pay their UK subsidiary in Sage 50 Payroll email UK starters and pay rises to payroll or a bureau. Whoever copies the salary from ADP as an annual amount sometimes calculates differently from ADP itself.
- KoppelHet collects the events and queries the workers of the UK payroll group daily.
- KoppelHet fetches NI number and pay unmasked and compares with the previous file.
- New departments go in a separate file that payroll imports first.
- Payroll takes a backup and then imports the Employee Details file.
- Leavers and rehires are on a list for payroll.
What to watch for with ADP Workforce Now and Sage Payroll
- ADP stores salary as an amount per period, per hour or per day; the annual amount is always a calculation by Workforce Now. KoppelHet copies the period amount or hourly rate as ADP stores it and calculates no annual amount itself, so Sage pays the same amount per period as ADP holds.
- NI number, date of birth and pay amounts come masked from the workers API by default. For the Sage file KoppelHet requests unmasked data, after the customer has released the sensitive fields for the API Central project under Manage Profiles.
- ADP only creates an event when someone changes something in Workforce Now itself, not for changes through the API. Because other integrations may also write to ADP, KoppelHet queries the UK payroll group daily with the payrollGroupCode filter, in pages of at most one hundred workers.
- The RTI Payroll ID cannot be changed in Sage after import. For a new starter KoppelHet leaves it empty, so Sage creates it. On a worker.rehire event KoppelHet fills nothing in but puts the rehire on the list: Sage then asks case by case for a known previous ID with status 1 or an empty ID with status 0.
- Sage 50 Payroll imports departments and cost centres with a company-level import. A new organisational unit from ADP therefore goes first in its own file, before the employees who refer to it.
- An employee with several positions has one workerID in ADP and a positionID per position, and the workerStatus follows the primary position. KoppelHet builds the Sage row on that primary position, so a second role in the US does not produce a second UK employee.
- On a worker.terminate event the leaver goes on the list with the file, with their date. Payroll records the leaver in Sage and produces the P45; the integration puts no leaving data in the import file.
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 ADP for UK payroll?
This integration is for organisations that keep UK payroll in Sage 50 Payroll, in-house or with a bureau. Whether another setup fits better is something we discuss at intake.
Can the import also be automatic?
Only with the SDK from the Sage Developers Programme, which requires a subscription. That can be added later as an extension; the first version delivers files.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- ADP Workforce Now through the Worker Management API: events worker.hire, worker.rehire and worker.terminate, and GET /hr/v2/workers with $filter=workers/workAssignments/payrollGroupCode eq '{code}', $top (at most 100) and $skip, Accept application/json;masked=false after release in Manage Profiles.
- Sage 50 Payroll through File > Data Import with the CSV templates Employee Details and the company import for departments and cost centres, with a backup before every import. Automatic import is only possible with the .NET SDK from the paid Sage Developers Programme.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in ADP Workforce Now | Field in Sage Payroll | Notes |
|---|---|---|
workerID | Employee Reference | Unique per client; never in the RTI Payroll ID |
person/legalName | Forename, Surname | |
person/governmentIDs (NI) | NI Number | Only unmasked |
workAssignments (hireDate) | Start Date | |
homeOrganizationalUnits | Department of Cost Centre | Must exist in Sage |
baseRemuneration (payPeriodRateAmount of hourlyRateAmount) | Salary of uurtarief |
Related
ADP Workforce Now → 4PS Construct
ADP Workforce Now to 4PS Construct integration: employees with company, dimensions and statistics group in 4PS
ADP Workforce Now → Active Directory
ADP Workforce Now to Active Directory integration: accounts in your own domain, with expiry date and rehire from ADP
ADP Workforce Now → AFAS Profit
ADP Workforce Now to AFAS integration: Dutch employees from the US HR system in AFAS Profit
ADP Workforce Now → AllSolutions
ADP Workforce Now to AllSolutions integration: employees with department, cost centre and manager in AllSolutions