Skip to main content
POST
Upload payroll lines

Authorizations

X-Auth-Token
string
header
required

Access token obtained from OAuth2 client credentials flow

X-Org-Id
string
header
required

Organisation to scope the request to. Required when the principal can access more than one organisation; optional for single-organisation principals (the authorizer resolves it automatically).

Path Parameters

employeeId
string
required

Body

application/json
date
string
required
unitName
enum<string>
required
Available options:
Hour,
Day,
Week,
Month,
Year,
Fixed,
Informational,
Percentage
units
number
required
payRate
number
required
payElementId
string
required

The ID of the pay element associated with this payroll line.

id
string

Optional unique identifier for the payroll line

clientId
string
poNumber
string | null

Purchase order number for billing purposes

Example:

"PO-2025-001"

description
string
unitType
enum<string>
default:Amount

The unit type for calculation. Amount uses payRate * units, Percentage uses payRate * (units / 100)

Available options:
Amount,
Percentage
chargeRate
number
chargeUnits
number
Example:

1

chargeDescription
string | null

Charge description for billing; when not provided and clientId is set, defaults to the pay description.

tags
object[]
paymentDetails
object | null

Payment details (BACS information) that can override default employee bank account

attachments
object[] | null

Attachment metadata to include when creating the payroll line item (optional, only used during batch upload)

originalValue
number<decimal> | null

The pre-adjustment value of this line, for callers that reduce a line and want the original kept for reporting. Stored as supplied.

canEdit
boolean | null

Whether the line can be edited in the product. Defaults to editable. Set it false for lines your own system owns, so nobody edits them in Flow Payroll and has the change overwritten by your next upload.

paymentAfterLeavingPattern
enum<string> | null

Which National Insurance earnings period this payment takes when it is made after the employment has ended. Only read on a payment after leaving, and ignored entirely for anyone who has not left. Irregular (accrued holiday, an unexpected bonus, arrears after a backdated pay award, a late commission or service charge) is charged on weekly thresholds; Regular (a payment they were expecting on their usual cycle, such as an expected bonus) keeps the employee's usual earnings period. Per CWG2 section 1.14 and NIM08400/NIM08410. Omitting it means Irregular, which is the safe default because the other direction understates NI. National Insurance is charged once per payslip, so a single Irregular payment puts the whole payslip on weekly thresholds.

Available options:
Irregular,
Regular
Example:

"Irregular"

Response

Payroll Uploaded

message
object
content
object
validationIssues
object[]