BambooHR logoIRIS Payroll logo

Payroll integration

BambooHR to IRIS Payroll integration: UK employees from BambooHR as an employee in Staffology Payroll

An integration between BambooHR and IRIS Staffology Payroll creates a new UK employee from BambooHR as an employee at the right employer in Staffology, with NI number, start date and pay, and sets the leaver details on leaving. Pay changes from BambooHR's compensation table go into the pay run in which their effective date falls.

What the integration does

Organisations that use BambooHR as their HR system and run UK payroll in Staffology copy starters and pay rises by hand. A rise that HR records in BambooHR with a future date is sometimes processed too early or too late in payroll.

  1. HR records a new UK employee in BambooHR.
  2. KoppelHet receives the signed webhook and picks the Staffology employer for the location.
  3. KoppelHet creates the employee with name, address, NI number, start date and pay.
  4. A new pay row waits until the pay run in which the effective date falls; KoppelHet then reads the employee and writes the whole record back.
  5. A termination sets hasLeft and leaveDate in Staffology.
BambooHR → KoppelHet → IRIS PayrollSOURCEBambooHRTARGETIRIS PayrollKoppelHetmapping · logging · monitoringBambooHR → KoppelHet → IRIS PayrollSOURCEBambooHRTARGETIRIS PayrollKoppelHetmapping · logging · monitoring
Out: Employee with name, address and NI number · Start date · Pay in PayOptions · Leaver with leaveDate

What to watch for with BambooHR and IRIS Payroll

  • BambooHR has its own nin field for the UK NI number, next to ssn for the United States and sin for Canada. KoppelHet only reads nin for Staffology. If it is empty for a UK starter, KoppelHet first checks whether the API user may see the field, because BambooHR does not return fields without rights.
  • BambooHR stores pay as rows in the compensation table, each with an effective date, and HR often records a rise weeks ahead. Staffology calculates with the employee's PayOptions at the time of the pay run. KoppelHet therefore only passes a future row on in the pay run in which the effective date falls.
  • Staffology has no PATCH on an employee; a PUT replaces the whole record. A BambooHR webhook only reports the fields set up in the webhook. KoppelHet therefore first reads the employee in Staffology and only changes the field that changed in BambooHR.
  • The terminationDate field in BambooHR is read-only; a leaver is a new row in the employmentStatus table with status and date. KoppelHet reads that row and sets hasLeft with leaveDate in Staffology, so payroll makes the final payment in the right period.
  • BambooHR gives no webhooks for custom tables. If the organisation keeps UK data such as a pension choice in such a table, KoppelHet reads it daily through the changed table data endpoint, before the pay run.
  • A pay row in BambooHR has an amount per Hour, Day, Week, Month or Year and a pay type such as salary, hourly or pro rata. Staffology wants a period and a basis in PayOptions. KoppelHet translates per combination, and a pay type without a translation goes to payroll instead of to Staffology.

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 payslips go back to BambooHR?

Not in the first version. That can follow 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.

  • BambooHR through signed webhooks (HMAC in X-BambooHR-Signature) and the employees API with nin, hireDate and location; compensation and employmentStatus tables, custom tables through the changed table data endpoint. API key of a separate user with rights to pay and NI number.
  • Staffology Payroll REST API with an API key as password in Basic authentication: POST /employers/{employerId}/employee, GET and PUT on /employers/{employerId}/employee/{id} with the full record, PayOptions and leaverDetails.

Which fields are transferred

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

Field in BambooHRField in IRIS PayrollNotes
location of divisionemployerIdLookup table per UK entity
firstName, lastName, dateOfBirthpersonalDetails
ninpersonalDetails.niNumber
address1, city, zipcodepersonalDetails.address
hireDateemploymentDetails.startDate
compensation-tabel (startDate, rate, paidPer, type)payOptions (basis, period, payAmount)
employmentStatus-tabel (Terminated, date)leaverDetails (hasLeft, leaveDate)

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.