Get Pay Range
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 organizationscompany-ids— limit to paychecks for employees in these companiesemployee-ids— limit to paychecks for these employeespayroll-keys— limit to specific payroll runs; each key iscompanyId: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 byorganization-idorcompany-idsonly. 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-fromis afterpaycheck-date-to, or the date range exceeds 365 days
Authorization
XApiKey Your API key.
In: header
Query Parameters
API version
"3.0""3.0"Limit results to companies belonging to this organization.
uuidLimit results to paychecks for employees in these companies.
Start of the check date range (inclusive, YYYY-MM-DD). Required when filtering by organization-id or company-ids only.
dateEnd of the check date range (inclusive, YYYY-MM-DD). Required when filtering by organization-id or company-ids only.
dateLimit results to paychecks for these employees.
Limit results to specific payroll runs. Each key is in the format companyId:payrollNumber (e.g., 1234:56). A payroll number is the sequential run number assigned when payroll is processed.
Page number (1-based). Defaults to 1 if not specified.
int321 <= value <= 2147483647Number of items per page. Defaults to 100 if not specified. Maximum 500.
int321 <= value <= 500Response Body
curl -X GET "https://external-app-prod.netchexonline.net/paychecks?api-version=3.0"{
"pageNumber": 0,
"pageSize": 0,
"totalItemsCount": 0,
"items": [
{
"companyId": 0,
"employeeId": 0,
"payrollNumber": 0,
"paycheckDate": "2019-08-24",
"payPeriodStart": "2019-08-24",
"payPeriodEnd": "2019-08-24",
"isVoided": true,
"paycheckNumber": "string",
"paycheckEarnings": [
{
"companyEarningId": 0,
"laborDistributedDepartmentId": 0,
"laborDistributedClientProject": {
"clientId": 0,
"projectId": 0
},
"laborDistributedJobCode": "string",
"workersCompensationCode": "string",
"flatAmount": null,
"hoursAmount": null,
"hoursAndRateAmount": null,
"totalAmount": 0.1,
"date": "2019-08-24"
}
],
"paycheckDeductions": [
{
"companyDeductionId": 0,
"employerAmount": 0.1,
"employeeAmount": 0.1
}
],
"paycheckTaxes": [
{
"companyTaxId": 0,
"employerAmount": 0.1,
"employeeAmount": 0.1
}
],
"netPay": {
"total": 0.1,
"directDeposits": [
{
"amount": 0.1,
"accountType": "checking"
}
],
"checkDistribution": {
"amount": 0.1,
"isPremiumPay": true
}
}
}
]
}{
"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 General Ledger Transactions GET
Returns a paginated list of general ledger journal entries for a specific company and payroll run. Each entry represents a debit or credit transaction used to record payroll costs in the company's accounting system. Use `distribution-options` to control how payroll costs are allocated to departments within each journal entry category. Each category can be independently set to `HomeDepartment` (the employee's primary assigned department), `WorkDepartment` (the department where the employee actually worked during the pay period), or `None` (no department allocation). When a category is omitted, the company's default allocation setting is used. Transaction categories available for distribution: - `salary-expenses` - `employer-tax-expenses` - `employer-tax-liabilities` - `employee-tax-liabilities` - `employer-deduction-expenses` - `employee-deduction-liabilities` - `employer-deduction-liabilities` - `workers-compensation-expenses` (only applies when `include-workers-compensation=true`) - `workers-compensation-liabilities` (only applies when `include-workers-compensation=true`) **Access control:** Results are limited to companies your integration has access to. **Error Details:** - **404 Not Found** — the specified company is not accessible, or no transactions were found for the given company and payroll number
Get Payroll Run History GET
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 Request** — `paycheck-date-from` is after `paycheck-date-to`, or the date range exceeds 365 days