Workday logoIRIS Payroll logo

Payroll integration

Workday to IRIS Payroll integration: UK employees and PayOptions from Workday in Staffology Payroll

An integration between Workday and IRIS Staffology Payroll creates UK workers from Workday as an employee with starter details and PayOptions, and then updates pay and address. The Staffology API is the same API the web application uses itself, so what HR records in Workday goes straight into UK payroll without an import file.

What the integration does

Organisations that manage HR in Workday and run UK pay in IRIS Staffology Payroll enter UK starters and pay changes twice. Payroll has to convert the annual salary from Workday into an amount per period itself, and a missed change only gets noticed on the payslip.

  1. HR completes a Hire in the UK pay group in Workday.
  2. KoppelHet creates an employee at the right employer in Staffology with personal details, payroll code and start date.
  3. KoppelHet converts the Workday salary into PayOptions with period, basis and amount, and adds fixed allowances as regularPayLines with an existing PayCode.
  4. On a change KoppelHet fetches the full employee record, adjusts the fields and writes the whole record back.
  5. Anything payroll rejects or Workday does not hold, such as the starter declaration, goes on a list for payroll.
Workday → KoppelHet → IRIS PayrollSOURCEWorkdayTARGETIRIS PayrollKoppelHetmapping · logging · monitoringWorkday → KoppelHet → IRIS PayrollSOURCEWorkdayTARGETIRIS PayrollKoppelHetmapping · logging · monitoring
Out: Employee with personalDetails and address · employmentDetails with payrollCode and starter details · PayOptions with period, basis and amount · Regular pay elements as regularPayLines

What to watch for with Workday and IRIS Payroll

  • Staffology does not support PATCH. A PUT must contain the full JSON of all writable properties, otherwise they are cleared. KoppelHet therefore reads the employee first, puts only the changed Workday fields into it and writes the complete record back.
  • Workday usually holds pay as an annual amount or hourly rate. Staffology calculates with period, basis, payAmount and payAmountMultiplier. KoppelHet converts an annual salary into an amount per period with basis Monthly, and an hourly rate into basis Hourly with the number of hours as multiplier.
  • If NationalMinimumWage is on, Staffology ignores the hourly rate and calculates the minimum wage based on age. That flag only works with basis Hourly. KoppelHet never switches it on from Workday, so an hourly rate from Workday is not silently overridden.
  • Without its own PayOptions a new employee gets the employer's DefaultPayOptions. KoppelHet therefore always sends the PayOptions when creating, so a UK starter does not enter the run at the employer's default amount.
  • A starter in Staffology needs a starter declaration (A, B or C) for the tax code. That is an HMRC concept Workday does not record by default. KoppelHet takes it from a custom Workday field if there is one, and otherwise reports the starter to payroll.
  • A tag code that does not exist gives no error in Staffology but is silently discarded. KoppelHet therefore checks the cost centre code from Workday against the list of tags first and reports a missing tag instead of losing it.
  • An API key in Staffology has exactly the permissions of the user per employer. KoppelHet uses a separate user with access to the UK employer only, so the integration cannot reach other employers of a payroll bureau.

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, architecture and compliance

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.

Price indication · Complex

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Do the payslips also go back to Workday?

Not in the first version. Staffology has a webhook for a finalised pay run and supplies payslips as PDF through the API; that can be added later as an extension.

Does this also work with other IRIS payroll products?

This page is about Staffology Payroll, whose API is public. For other IRIS products we establish per project which route exists.

Does a leaver from Workday also go to Staffology?

In the first version KoppelHet reports a Termination as a task to payroll, which handles the leaver and the P45 in Staffology. Recording it automatically can be added later as an extension, after a test in the customer's environment.

What happens with the RTI submission?

The FPS to HMRC stays in Staffology with payroll. The integration only supplies the data the pay run needs.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Workday is read through a RaaS report on the UK pay group (Employee_ID, Legal_Name, Date_of_Birth, Home Address, Hire_Date, Base_Pay, Pay_Rate_Type, Allowance plans, Cost_Center) filtered on change date.
  • Staffology Payroll REST API with an API key as password in Basic authentication. Create with POST /employers/{employerId}/employee, read with GET and update with PUT on /employers/{employerId}/employee/{id} (full JSON, no PATCH). IDs are GUIDs.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in WorkdayField in IRIS PayrollNotes
Employee_IDemploymentDetails.payrollCodeFixed key between both systems
Legal_NamepersonalDetails.firstName, lastName
Date_of_BirthpersonalDetails.dateOfBirth
Home addresspersonalDetails.address (line1, postCode, country)
Hire_DatestarterDetails.startDate
Base_Pay en FrequencypayOptions.payAmount, basis, period, payAmountMultiplier
Vaste toeslag (Allowance plan)regularPayLines (value, description, code)Code must be an existing PayCode
Cost_CentertagsOnly existing tag codes

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.