Payroll

Get Payroll Run History

GET
/payroll-runs

Returns a paginated list of payroll runs. A payroll run represents a single completed payroll processing cycle for a company, capturing the check date and sequential run number.

Optional Filters:

  • organization-id — limit to payroll runs for companies belonging to these organizations
  • company-ids — limit to payroll runs for these companies
  • paycheck-date-from / paycheck-date-to — limit to payroll runs with a check date within this range (inclusive). Date range cannot exceed 365 days.

Multiple filters combine with AND logic; values within one parameter combine with OR.

Access control: Results are limited to companies your integration has access to. When organization-id is supplied, only results from organizations containing at least one accessible company are included. Inaccessible IDs in filter parameters are silently excluded; if none match, an empty list is returned.

Error Details:

  • 400 Bad Requestpaycheck-date-from is after paycheck-date-to, or the date range exceeds 365 days
X-API-KEY<token>

Your API key.

In: header

Query Parameters

api-version*string

API version

Default"3.0"
Value in"3.0"
organization-id?string

Limit results to payroll runs for companies belonging to this organization.

Formatuuid
company-ids?array<>

Limit results to payroll runs for these companies.

paycheck-date-from?string

Start of the check date range (inclusive, YYYY-MM-DD).

Formatdate
paycheck-date-to?string

End of the check date range (inclusive, YYYY-MM-DD).

Formatdate
page-number?integer

Page number (1-based). Defaults to 1 if not specified.

Formatint32
Range1 <= value <= 2147483647
page-size?integer

Number of items per page. Defaults to 100 if not specified. Maximum 500.

Formatint32
Range1 <= value <= 500

Response Body

curl -X GET "https://external-app-prod.netchexonline.net/payroll-runs?api-version=3.0"
{
  "pageNumber": 0,
  "pageSize": 0,
  "totalItemsCount": 0,
  "items": [
    {
      "payrollNumber": 0,
      "paycheckDate": "2019-08-24",
      "companyId": 0
    }
  ]
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}

Get Pay Range GET

Returns a paginated list of paychecks. Each paycheck captures an employee's earnings, deductions, taxes, and net pay for a single payroll run. **Optional Filters:** - `organization-id` — limit to paychecks for companies belonging to these organizations - `company-ids` — limit to paychecks for employees in these companies - `employee-ids` — limit to paychecks for these employees - `payroll-keys` — limit to specific payroll runs; each key is `companyId:payrollNumber` (e.g., `1234:56`). A payroll number is the sequential run number assigned when payroll is processed. - `paycheck-date-from` / `paycheck-date-to` — inclusive date bounds. **Required** when filtering by `organization-id` or `company-ids` only. Date range cannot exceed 365 days. Multiple filters combine with AND logic; values within one parameter combine with OR. **Access control:** Results are limited to companies your integration has access to. When `organization-id` is supplied, only results from organizations containing at least one accessible company are included. Inaccessible IDs in filter parameters are silently excluded; if none match, an empty list is returned. **Error Details:** - **400 Bad Request** — `paycheck-date-from` is after `paycheck-date-to`, or the date range exceeds 365 days

Get Pending Paycheck Deductions GET

Returns a paginated list of pending paycheck deductions. A pending paycheck deduction is a one-time amount to be withheld from an employee's current or upcoming payroll run for a specific deduction type (e.g., a one-time benefit deduction). **Optional Filters:** - `organization-id` — limit to deductions for companies belonging to these organizations - `company-ids` — limit to deductions for these companies - `employee-ids` — limit to deductions for these employees. Employees belonging to companies that your integration cannot access are automatically excluded by the company-level access check; no error is returned for inaccessible employee IDs. - `company-deduction-id` — limit to a specific deduction type - `pending-paycheck-deduction-ids` — look up specific records by ID; when supplied, date filters are ignored - `external-unique-id` + `data-source` — look up a record by the ID assigned by the originating system (both must be provided together) - `effective-date-from` / `effective-date-to` — inclusive date bounds. **Required** unless filtering by `pending-paycheck-deduction-ids`. Both dates must be supplied together. Date range cannot exceed 365 days. Multiple filters combine with AND logic; values within one parameter combine with OR. **Access control:** Results are limited to companies your integration has access to. When `organization-id` is supplied, only results from organizations containing at least one accessible company are included. Inaccessible IDs in filter parameters are silently excluded; if none match, an empty list is returned. **Error Details:** - **400 Bad Request** — `effective-date-from` is after `effective-date-to`, or the date range exceeds 365 days