Skip to main content

Understanding the Rotaready integration data flow

Explains what data transfers between Rotaready and Paycircle, how each event type works, what validation rules apply, and what does not flow through the integration.

A
Written by Adam Payn

How the Rotaready-Paycircle integration works

Rotaready is the source of truth for employee and rota data. When you make a change in Rotaready — approving an employee, updating their details, or signing off a rota — Rotaready notifies Paycircle that something has changed. Paycircle then calls Rotaready and fetches the data itself.

📌Note: Data is fetched when the event is processed, not at the moment the change was made in Rotaready. An event processed after a delay therefore picks up whatever Rotaready holds at that point.

Events are not processed instantly. Paycircle collects them on a schedule and works through them in the background. Sign-off imports for a company are handled one at a time, so two cannot overlap for the same pay period.

📌Note: Up to 500 events are processed for a company in a single cycle. If more are waiting, the oldest are taken first, and the remainder are picked up on the next cycle rather than failing.


How the integration knows who is who

⚠️Important! Once an employee is mapped, don't change the Rotaready ID. Assigning an ID already held by another Paycircle employee unmaps that other employee, without a confirmation or a warning.

The integration links employees between Rotaready and Paycircle using the Rotaready ID. This is the identifier used to match records between the two systems.

What data transfers: Event types

User Approved Event

Triggered when an employee is approved in Rotaready. This creates the employee record in Paycircle.

  • New starters: where the start date falls on or after the start of the current pay period and all required fields are completed, the employee is created complete and ready for payroll.

  • Existing employees: where the start date falls before the current pay period, the employee is created with tax details incomplete. A tax code and year-to-date values must be added manually in Paycircle before they can be paid.

📌Note: An employee will only appear in Paycircle, or on the mapping screen, where they are assigned in Rotaready to both a site and a payroll calendar that this Paycircle company is connected to. If either is missing, the employee does not appear at all.

User Updated Event

Triggered when an employee's personal or employment details change in Rotaready. Updates the employee record in Paycircle. Fields updated include: name, date of birth, gender, title, address, contact details, NI number, bank details, employment start date, employment type, and pay rate.

📌Note: Bank details are only written to Paycircle if both the sort code and account number are present. Where either is missing, the bank details fields are left unchanged in Paycircle.

Employment Deleted Event

Triggered when an employment record is deleted in Rotaready. Marks the employee as a leaver in Paycircle.

⚠️Important: Leaver holiday pay does not always transfer correctly through the integration. When an employee is leaving, check the holiday pay figure in Paycircle manually and correct it before processing the final payroll.

Sign-off Day Event

Triggered when a rota day is signed off in Rotaready. Imports hours and pay elements for that day into Paycircle. When a day is signed off, Paycircle fetches the full set of signed-off days for that employee in the current pay period and rebuilds the pay elements from scratch. It does not add to what is already there — it replaces it.

📌Note: The integration pauses when a pay period enters a Calculated state. Events continue to arrive and are queued, but are not processed until the pay period moves back out of Calculated.


What data transfers: Data types

Employee profile data

Field

Notes

First name

Required

Last name

Required

Date of birth

Must be within the last 100 years

Gender

Defaults to Female if not supplied

Title

Defaults to Ms if not supplied

Address

Street, town, county, postcode

Email Address

Must be a valid email format

NI number

Must match format AB123456C

Bank sort code

6 digits; only written if account number also present

Bank account number

8 digits; only written if sort code also present

What does not transfer

Data

Reason

Tax code

Assigned by HMRC; not held in Rotaready

Year-to-date values

Paycircle-managed; not held in Rotaready

HMRC Submission ID

Assigned by Paycircle

Pension details

Not in scope

Student loan details

Not in scope

Statutory payments (SSP, SMP, etc.)

Not in scope

Departments

Not set by the integration

Validation rules

Field

Rule

First name

Required

Last name

Required

Date of birth

Must be within the last 100 years

Email

Must be a valid email format

Postcode

Must be a valid UK postcode format

NI number

Must match format AB123456C

Sort code

Must be exactly 6 digits

Account number

Must be exactly 8 digits

What the Rotaready Updates page shows

📌Note: A Successful status means the event completed without a blocking error. It does not mean every pay element was written. Warnings are recorded against successful events where something was skipped.

Status

Meaning

Successful

The event was processed, and data was written to Paycircle

Failed

The event was processed, but data was not written; a message explains why

Pending

The event is queued and has not yet been processed

Processing

The event is currently being processed

Did this answer your question?