Skip to main content
PATCH

Authorizations

Authorization
string
header
required

Server API key, scoped. pk_test_ keys hit the sandbox tenant.

Headers

X-Request-Id
string

Optional client correlation id, up to 128 characters. It is not echoed: the response's X-Request-Id is always our own req_… id. We log your value with the request as client_request_id, so support can find a request by either id. A longer value is refused with 400 parameter_invalid.

Maximum string length: 128

Path Parameters

person_id
string
required

Payroll person id (ppl_…).

Pattern: ^ppl_[0-9A-HJKMNP-TV-Z]{26}$

Body

application/json
name
string

Full name.

Required string length: 1 - 120
email
string<email>
Maximum string length: 254
role
string

Job title.

Maximum string length: 80
team
string

Team.

Maximum string length: 60
start_date
string<date>

Only while starting.

Example:

"2026-11-07"

on_leave
boolean

True for paid leave (still paid), false to return to active.

bank_account
object

Where the person is paid. Confirmed by name enquiry.

confirm_account_name
boolean

Accept the bank's account name even if it differs from name.

pay_items
object[]

Replaces all pay items.

Required array length: 1 - 20 elements
metadata
object

Up to 20 string keys (≤ 40 chars) with string values (≤ 500 chars). Returned on the resource and its events.

Response

The updated person.

A person on payroll (ppl_…).

id
string
required

ppl_…

object
string
required

Always payroll_person.

Allowed value: "payroll_person"
created_at
string<date-time>
required

RFC 3339, UTC.

Example:

"2026-10-27T08:41:00Z"

updated_at
string<date-time>
required

RFC 3339, UTC.

Example:

"2026-10-27T08:41:00Z"

name
string
required

Full name.

status
enum<string>
required

active is paid; on_leave is on paid leave and still paid ("On leave, paid"); starting has a start date after today ("Starts 1 Nov"); offboarded is past their end date and never paid again.

Available options:
active,
on_leave,
starting,
offboarded
start_date
string<date>
required

Calendar date, interpreted in Africa/Lagos.

Example:

"2026-11-07"

bank_account
object
required

The person's bank account. Only the last four digits are returned.

pay_items
object[]
required

Monthly earnings.

pay
object
required

What the next run would pay, with current deductions (before any one-off bonus).

email
string<email>

Where payslips are sent.

Maximum string length: 254
role
string

Job title.

team
string

Team.

end_date
string<date>

Calendar date, interpreted in Africa/Lagos.

Example:

"2026-11-07"

offboarded_at
string<date-time>

RFC 3339, UTC.

Example:

"2026-10-27T08:41:00Z"

metadata
object

Up to 20 string keys (≤ 40 chars) with string values (≤ 500 chars). Returned on the resource and its events.