openapi: 3.2.0
info:
title: check-api Payrolls API
version: '2025-01-01'
servers:
- url: https://sandbox.checkhq.com
security:
- sec0: []
tags:
- name: Payrolls
paths:
/payrolls:
post:
summary: Create a payroll
description: Creates a payroll. Pass `correction` to create a managed replacement payroll and attach it to a draft correction in the same request. A payroll with a `payday` in the past must include `correction`.
operationId: create-payroll
parameters:
- name: include_items
in: query
description: Enable this flag to define `items` directly on this payroll.
schema:
type: boolean
default: false
- name: include_contractor_payments
in: query
description: Enable this flag to define `contractor_payments` directly on this payroll.
schema:
type: boolean
default: false
requestBody:
content:
application/json:
schema:
type: object
required:
- company
- period_start
- period_end
- payday
properties:
company:
type: string
description: ID of the company to run payroll for.
period_start:
type: string
description: The start of the date range that the payroll covers.
format: date
period_end:
type: string
description: The end of the date range that the payroll covers.
format: date
payday:
type: string
description: The date on which employees will be paid for the payroll. A `payday` in the past requires `correction`. When `correction` is supplied, `payday` must be in the past, on or after the open quarter start, on or after the company's `start_date`, and within the correction's tax year.
format: date
processing_period:
type: string
description: 'The processing period of the payroll.
One of `three_day`, `two_day`, or `one_day`.
The processing period determines the approval deadline of the payroll. For a payroll with a Friday payday, `three_day` will mean the approval deadline is on Tuesday, whereas `two_day` will mean the approval deadline is on Wednesday, and `one_day` will mean the approval deadline is on Thursday.
The possible values for this field are constrained by the processing periods the company is approved for.
Default: `processing_period` of the company'
correction:
type: string
description: ID of the draft [correction](https://docs.checkhq.com/reference/the-correction-object) to attach this payroll to as a replacement when creating the payroll. Returned on payroll responses as the correction this payroll is an operation of, or `null`. On update, may be included only to restate the payroll's current correction ID — a different value is rejected. Omit for ordinary payrolls. When supplied at create, nested `items` and `contractor_payments` must use `payment_method` `manual` — replacement payrolls do not disburse net pay. The correction must be in `draft`, belong to the same company, and accept managed replacement payrolls. Requires `correction:write` or `correction:admin` scope to attach at create.
type:
type: string
description: 'Indicates whether the payroll is a regular or [off-cycle](https://docs.checkhq.com/docs/off-cycle-payroll) payroll.
One of `regular` or `off_cycle`. Other payroll types, such as `amendment` and `balancing`, are created by Check and can''t be set through the API.
Default: `regular`'
pay_frequency:
type: string
description: 'Frequency by which [employees](https://docs.checkhq.com/reference/the-employee-object) get paid.
One of `weekly`, `biweekly`, `semimonthly`, `monthly`, `quarterly`, or `annually`.
Default: `biweekly`'
funding_payment_method:
type: string
description: 'Payment method for funding the payroll.
One of `ach`, `wire`, or `parafin`.
`ach` and `wire` can be set when creating or updating a payroll. `parafin` is set by Check when a payroll advance is accepted and cannot be set or changed via the API.
Default: `ach`'
pay_schedule:
type: string
description: ID of the [pay schedule](https://docs.checkhq.com/reference/the-pay-schedule-object) that the payroll relates to.
off_cycle_options:
type: object
description: Additional configuration options controlling `off_cycle` payroll behavior.
properties:
force_supplemental_withholding:
type: boolean
description: 'Whether to tax all earnings as supplemental earnings.
Default: `false`'
apply_benefits:
type: boolean
description: 'Whether to apply [benefit deductions and contributions](https://docs.checkhq.com/reference/the-employee-benefit-object) to the payroll.
Default: `false`'
apply_post_tax_deductions:
type: boolean
description: 'Whether to apply [post-tax deductions](https://docs.checkhq.com/reference/the-post-tax-deduction-object) to the payroll.
Default: `false`'
items:
type: array
description: The set of [payroll items](https://docs.checkhq.com/reference/the-payroll-item-object) associated with the payroll. Must set `include_items=true`.
items:
properties:
employee:
type: string
payment_method:
type: string
earnings:
type: array
items:
properties:
type:
type: string
description: Type of earning. Can be one of the following earning types in Types of earnings
workplace:
type: string
description: ID of the workplace where work for this earning was performed
earning_code:
type: string
description: The earning code id which will be used to aggregate earnings on the paystub
description:
type: string
description: Readable description of the earning code that will show up on the paystub
earning_rate:
type: string
description: The earning rate id which will be used to calculate the gross wage. Required if type is “piece”
amount:
type: string
description: Amount earned for this earning
May be negative, for example to reverse or correct a previously reported earning
hours:
type: number
description: Number of hours worked for this earning
format: float
piece_units:
type: number
description: Number of units of work produced. Required if type is “piece”
format: float
metadata:
type: string
description: Additional loosely structured information to associate with the earning
format: json
required:
- workplace
type: object
reimbursements:
type: array
items:
properties:
amount:
type: string
description: Amount of reimbursement
Must be greater than or equal to 0 on regular payrolls. Negative values are accepted on external payrolls
description:
type: string
description: Description for the reimbursement that will show up on the paystub
code:
type: string
description: Unique code to identify the reimbursement that will be used to aggregate reimbursements on the paystub. Recommended to always be included to have explicit groupings on the paystub.
metadata:
type: string
description: Additional loosely structured information to associate with the reimbursement
format: json
required:
- amount
type: object
benefit_overrides:
type: array
description: The set of benefit override objects associated with this payroll item.
items:
properties:
benefit:
type: string
description: ID of the employee benefit that is being overridden for the payroll item
employee_contribution_amount:
type: string
description: Updated employee contribution amount to use for this payroll only
company_contribution_amount:
type: string
description: Updated company contribution amount to use for this payroll only
required:
- benefit
type: object
post_tax_deduction_overrides:
type: array
description: The set of post-tax deduction override objects associated with this payroll item.
items:
properties:
post_tax_deduction:
type: string
description: ID of the miscellaneous post-tax deduction that is being overridden.
amount:
type: string
description: Updated deduction amount to use for this payroll only
required:
- post_tax_deduction
- amount
type: object
tax_overrides:
type: array
description: The set of tax override objects associated with this payroll item.
items:
properties:
tax:
type: string
description: ID of the tax being overridden. Only Federal Income Tax and State Income Taxes are eligible.
amount:
type: string
description: Updated withholding amount to use for this payroll only.
required:
- tax
- amount
type: object
pto_balance_hours:
type: number
description: The employee's remaining PTO hour balance, for display on the paystub
format: float
sick_balance_hours:
type: number
description: The employee's remaining sick hour balance, for display on the paystub
format: float
state_covid_sick_balance_hours:
type: number
description: The employee's remaining sick hour balance from state COVID relief bills, for display on the paystub
format: float
supplemental_tax_calc_method:
type: string
description: Controls the method used by Check to calculate tax on supplemental earnings. May be flat or aggregate
paper_check_number:
type: string
description: For accounting. The check number associated with any printed checks. Can be updated even after the associated payroll has been approved. See [Get a paper check](https://docs.checkhq.com/reference/get-a-paper-check) for more details.
metadata:
type: string
description: Additional loosely structured information to associate with the payroll item.
format: json
required:
- employee
type: object
contractor_payments:
type: array
description: The set of [contractor payments](https://docs.checkhq.com/reference/the-contractor-payment-object) associated with the payroll. Must set `include_contractor_payments=true`.
items:
properties:
contractor:
type: string
description: The id of the contractor being paid
payment_method:
type: string
description: The way the contractor will be paid, either “direct_deposit” or "manual"
default: '"direct_deposit"'
amount:
type: string
description: The amount the contractor should be paid
default: '"0.00"'
reimbursement_amount:
type: string
description: The amount to reimburse the contractor
default: '"0.00"'
paper_check_number:
type: string
description: For accounting. The check number associated with any printed checks. Can be updated even after the associated payroll has been approved. See Get a paper check for more details.
workplace:
type: string
description: The Workplace ID associated with this payment.
required:
- contractor
type: object
metadata:
type: string
description: Additional loosely structured information to associate with the payroll. Values must be string.
format: json
bank_account:
type: string
description: 'ID of the [bank account](https://docs.checkhq.com/reference/bank-accounts-1) that will be used to fund the payroll.
Default: `default_bank_account` of the company'
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"id\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"company\": \"com_sx3svU6K8c5ZkSFlOh5p\",\n \"period_start\": \"2019-06-16\",\n \"period_end\": \"2019-06-29\",\n \"approval_deadline\": \"2019-07-02T00:00:00.000000Z\",\n \"approved_at\": \"2019-06-29T18:26:56.848920Z\",\n \"payday\": \"2019-07-05\",\n \"status\": \"paid\",\n \"type\": \"regular\",\n \"pay_frequency\": \"biweekly\",\n \"funding_payment_method\": \"ach\",\n \"processing_period\": \"four_day\", \n \"off_cycle_options\": null,\n \"managed\": true,\n \"totals\": {\n \"employee_gross\": \"961.54\",\n \"employee_reimbursements\": \"0.00\",\n \"employee_taxes\": \"249.23\",\n \"employee_benefits\": \"0.00\",\n \"post_tax_deductions\": \"0.00\",\n \"employee_net\": \"712.31\",\n \"contractor_gross\": \"100.00\",\n \"contractor_reimbursements\": \"15.00\",\n \"contractor_net\": \"115.00\",\n \"company_taxes\": \"73.56\",\n \"company_benefits\": \"0.00\",\n \"liability\": \"1150.10\",\n \"cash_requirement\": \"1150.10\"\n },\n \"items\": [\n {\n \"id\": \"itm_yvmmsVGFxLoBaMIkqzea\",\n \"payroll\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"employee\": \"emp_zGGp6wYcxAeu1Ng8IA7v\",\n \"payment_method\": \"direct_deposit\",\n \"net_pay\": \"712.31\",\n \"earnings\": [\n {\n \"amount\": \"961.54\",\n \"hours\": 40.0,\n \"type\": \"regular\",\n \"workplace\": \"wrk_cxcG4vjGKcSXZk1fgKai\",\n \"code\": null,\n \"description\": null\n }\n ],\n \"reimbursements\": [],\n \"taxes\": [\n {\n \"tax\": \"tax_I1Z9zqbBGWIbvlZpN2Vq\",\n \"description\": \"New York SDI\",\n \"amount\": \"0.60\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ImvSF9CTuMdokf0uwx5x\",\n \"description\": \"Employer FICA Tax\",\n \"amount\": \"59.62\",\n \"payer\": \"company\"\n },\n {\n \"tax\": \"tax_yjNkKk061BTipYv7G4Ti\",\n \"description\": \"New York City Tax\",\n \"amount\": \"31.04\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_S1krAkh75RzdWu5J53HA\",\n \"description\": \"New York State Tax\",\n \"amount\": \"44.20\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_UJrIQbtVErbdez0bYTVN\",\n \"description\": \"New York Family Leave Benefits\",\n \"amount\": \"1.47\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_1XHqR9Qf5t18SD2sfYEe\",\n \"description\": \"Medicare\",\n \"amount\": \"13.94\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_8L3JLfsH4X6dp0maBWfW\",\n \"description\": \"Federal Income Tax\",\n \"amount\": \"98.36\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ibU8cGhC5OlpOjoQFIXV\",\n \"description\": \"FICA\",\n \"amount\": \"59.62\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_O3f21hkS1cvHBZTa61BO\",\n \"description\": \"Employer Medicare Tax\",\n \"amount\": \"13.94\",\n \"payer\": \"company\"\n }\n ],\n \"benefits\": [],\n \"benefit_overrides\": [],\n \"post_tax_deductions\": [],\n \"post_tax_deduction_overrides\": [],\n \"warnings\": []\n }\n ],\n \"contractor_payments\": [\n {\n \"contractor\": \"ctr_90QzaH9xPRI7JRLXnRoU\",\n \"payment_method\": \"manual\",\n \"amount\": \"100.00\",\n \"reimbursement_amount\": \"15.00\"\n }\n ],\n \"is_void\": false,\n \"metadata\": {}\n}"
schema:
type: object
properties:
id:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
company:
type: string
example: com_sx3svU6K8c5ZkSFlOh5p
period_start:
type: string
example: '2019-06-16'
period_end:
type: string
example: '2019-06-29'
approval_deadline:
type: string
example: '2019-07-02T00:00:00.000000Z'
approved_at:
type: string
example: '2019-06-29T18:26:56.848920Z'
payday:
type: string
example: '2019-07-05'
status:
type: string
example: paid
type:
type: string
example: regular
pay_frequency:
type: string
example: biweekly
funding_payment_method:
type: string
example: ach
processing_period:
type: string
example: four_day
off_cycle_options: {}
managed:
type: boolean
example: true
default: true
totals:
type: object
properties:
employee_gross:
type: string
example: '961.54'
employee_reimbursements:
type: string
example: '0.00'
employee_taxes:
type: string
example: '249.23'
employee_benefits:
type: string
example: '0.00'
post_tax_deductions:
type: string
example: '0.00'
employee_net:
type: string
example: '712.31'
contractor_gross:
type: string
example: '100.00'
contractor_reimbursements:
type: string
example: '15.00'
contractor_net:
type: string
example: '115.00'
company_taxes:
type: string
example: '73.56'
company_benefits:
type: string
example: '0.00'
liability:
type: string
example: '1150.10'
cash_requirement:
type: string
example: '1150.10'
items:
type: array
items:
type: object
properties:
id:
type: string
example: itm_yvmmsVGFxLoBaMIkqzea
payroll:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
employee:
type: string
example: emp_zGGp6wYcxAeu1Ng8IA7v
payment_method:
type: string
example: direct_deposit
net_pay:
type: string
example: '712.31'
earnings:
type: array
items:
type: object
properties:
amount:
type: string
example: '961.54'
hours:
type: integer
example: 40
default: 0
type:
type: string
example: regular
workplace:
type: string
example: wrk_cxcG4vjGKcSXZk1fgKai
code: {}
description: {}
reimbursements:
type: array
taxes:
type: array
items:
type: object
properties:
tax:
type: string
example: tax_I1Z9zqbBGWIbvlZpN2Vq
description:
type: string
example: New York SDI
amount:
type: string
example: '0.60'
payer:
type: string
example: employee
benefits:
type: array
benefit_overrides:
type: array
post_tax_deductions:
type: array
post_tax_deduction_overrides:
type: array
tax_overrides:
type: array
warnings:
type: array
contractor_payments:
type: array
items:
type: object
properties:
contractor:
type: string
example: ctr_90QzaH9xPRI7JRLXnRoU
payment_method:
type: string
example: manual
amount:
type: string
example: '100.00'
reimbursement_amount:
type: string
example: '15.00'
correction:
type: string
nullable: true
description: ID of the [correction](https://docs.checkhq.com/reference/the-correction-object) this payroll is an operation of. `null` if the payroll is not attached to a correction.
is_void:
type: boolean
example: false
default: true
metadata:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
get:
summary: List payrolls
description: Returns a list of payrolls.
operationId: list-payrolls
parameters:
- name: company
in: query
description: Return payrolls for this [company](https://docs.checkhq.com/reference/company) ID.
schema:
type: string
- name: type
in: query
description: Return payrolls of these types. Repeat the parameter to match any of multiple values (for example, `?type=regular&type=off_cycle`).
explode: true
schema:
type: array
items:
type: string
enum:
- regular
- off_cycle
- amendment
- balancing
- name: is_void
in: query
description: Filter to void payrolls (true) or non-void payrolls (false).
schema:
type: boolean
- name: managed
in: query
description: Return payrolls of this `managed` status.
schema:
type: boolean
- name: limit
in: query
description: Number of payrolls returned per page. The maximum value is 25.
schema:
type: integer
format: int32
- name: payday_after
in: query
description: 'Return payrolls whose payday is on or after the provided date (format: YYYY-MM-DD)'
schema:
type: string
format: date
- name: payday_before
in: query
description: 'Return payrolls whose payday is on or before the provided date (format: YYYY-MM-DD)'
schema:
type: string
format: date
- name: status
in: query
description: Return payrolls in a given status. Repeat the parameter to match any of multiple values (for example, `?status=paid&status=partially_paid`).
explode: true
schema:
type: array
items:
type: string
enum:
- draft
- pending
- processing
- paid
- partially_paid
- failed
- name: approved
in: query
description: Filter payrolls based on their approval status
schema:
type: boolean
- name: pay_schedule
in: query
description: Return payrolls for this [pay schedule](https://docs.checkhq.com/reference/the-pay-schedule-object)
schema:
type: string
- in: query
name: id
schema:
type: string
description: Filter the list to a specific set of payroll IDs
- name: include_items
in: query
description: Return related payroll items directly on each payroll.
schema:
type: boolean
default: false
- name: include_contractor_payments
in: query
description: Return related contractor payments directly on each payroll.
schema:
type: boolean
default: false
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "[\n{\n \"id\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"company\": \"com_sx3svU6K8c5ZkSFlOh5p\",\n \"period_start\": \"2019-06-16\",\n \"period_end\": \"2019-06-29\",\n \"approval_deadline\": \"2019-07-02T00:00:00.000000Z\",\n \"approved_at\": \"2019-06-29T18:26:56.848920Z\",\n \"payday\": \"2019-07-05\",\n \"status\": \"paid\",\n \"type\": \"regular\",\n \"pay_frequency\": \"biweekly\",\n \"processing_period\": \"four_day\",\n \"off_cycle_options\": null,\n \"managed\": true,\n \"totals\": {\n \"employee_gross\": \"961.54\",\n \"employee_reimbursements\": \"0.00\",\n \"employee_taxes\": \"249.23\",\n \"employee_benefits\": \"0.00\",\n \"post_tax_deductions\": \"0.00\",\n \"employee_net\": \"712.31\",\n \"contractor_gross\": \"100.00\",\n \"contractor_reimbursements\": \"15.00\",\n \"contractor_net\": \"115.00\",\n \"company_taxes\": \"73.56\",\n \"company_benefits\": \"0.00\",\n \"liability\": \"1150.10\",\n \"cash_requirement\": \"1150.10\"\n },\n \"items\": [\n {\n \"id\": \"itm_yvmmsVGFxLoBaMIkqzea\",\n \"payroll\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"employee\": \"emp_zGGp6wYcxAeu1Ng8IA7v\",\n \"payment_method\": \"direct_deposit\",\n \"net_pay\": \"712.31\",\n \"earnings\": [\n {\n \"amount\": \"961.54\",\n \"hours\": 40.0,\n \"type\": \"regular\",\n \"workplace\": \"wrk_cxcG4vjGKcSXZk1fgKai\",\n \"code\": null,\n \"description\": null\n }\n ],\n \"reimbursements\": [],\n \"taxes\": [\n {\n \"tax\": \"tax_I1Z9zqbBGWIbvlZpN2Vq\",\n \"description\": \"New York SDI\",\n \"amount\": \"0.60\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ImvSF9CTuMdokf0uwx5x\",\n \"description\": \"Employer FICA Tax\",\n \"amount\": \"59.62\",\n \"payer\": \"company\"\n },\n {\n \"tax\": \"tax_yjNkKk061BTipYv7G4Ti\",\n \"description\": \"New York City Tax\",\n \"amount\": \"31.04\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_S1krAkh75RzdWu5J53HA\",\n \"description\": \"New York State Tax\",\n \"amount\": \"44.20\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_UJrIQbtVErbdez0bYTVN\",\n \"description\": \"New York Family Leave Benefits\",\n \"amount\": \"1.47\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_1XHqR9Qf5t18SD2sfYEe\",\n \"description\": \"Medicare\",\n \"amount\": \"13.94\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_8L3JLfsH4X6dp0maBWfW\",\n \"description\": \"Federal Income Tax\",\n \"amount\": \"98.36\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ibU8cGhC5OlpOjoQFIXV\",\n \"description\": \"FICA\",\n \"amount\": \"59.62\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_O3f21hkS1cvHBZTa61BO\",\n \"description\": \"Employer Medicare Tax\",\n \"amount\": \"13.94\",\n \"payer\": \"company\"\n }\n ],\n \"benefits\": [],\n \"benefit_overrides\": [],\n \"post_tax_deductions\": [],\n \"post_tax_deduction_overrides\": [],\n \"warnings\": []\n }\n ],\n \"contractor_payments\": [\n {\n \"contractor\": \"ctr_90QzaH9xPRI7JRLXnRoU\",\n \"payment_method\": \"manual\",\n \"amount\": \"100.00\",\n \"reimbursement_amount\": \"15.00\"\n }\n ],\n \"is_void\": false,\n \"metadata\": {}\n}\n]"
schema:
type: array
items:
type: object
properties:
id:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
company:
type: string
example: com_sx3svU6K8c5ZkSFlOh5p
period_start:
type: string
example: '2019-06-16'
period_end:
type: string
example: '2019-06-29'
approval_deadline:
type: string
example: '2019-07-02T00:00:00.000000Z'
approved_at:
type: string
example: '2019-06-29T18:26:56.848920Z'
payday:
type: string
example: '2019-07-05'
status:
type: string
example: paid
type:
type: string
example: regular
pay_frequency:
type: string
example: biweekly
processing_period:
type: string
example: four_day
off_cycle_options: {}
managed:
type: boolean
example: true
default: true
totals:
type: object
properties:
employee_gross:
type: string
example: '961.54'
employee_reimbursements:
type: string
example: '0.00'
employee_taxes:
type: string
example: '249.23'
employee_benefits:
type: string
example: '0.00'
post_tax_deductions:
type: string
example: '0.00'
employee_net:
type: string
example: '712.31'
contractor_gross:
type: string
example: '100.00'
contractor_reimbursements:
type: string
example: '15.00'
contractor_net:
type: string
example: '115.00'
company_taxes:
type: string
example: '73.56'
company_benefits:
type: string
example: '0.00'
liability:
type: string
example: '1150.10'
cash_requirement:
type: string
example: '1150.10'
items:
type: array
items:
type: object
properties:
id:
type: string
example: itm_yvmmsVGFxLoBaMIkqzea
payroll:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
employee:
type: string
example: emp_zGGp6wYcxAeu1Ng8IA7v
payment_method:
type: string
example: direct_deposit
net_pay:
type: string
example: '712.31'
earnings:
type: array
items:
type: object
properties:
amount:
type: string
example: '961.54'
hours:
type: integer
example: 40
default: 0
type:
type: string
example: regular
workplace:
type: string
example: wrk_cxcG4vjGKcSXZk1fgKai
code: {}
description: {}
reimbursements:
type: array
taxes:
type: array
items:
type: object
properties:
tax:
type: string
example: tax_I1Z9zqbBGWIbvlZpN2Vq
description:
type: string
example: New York SDI
amount:
type: string
example: '0.60'
payer:
type: string
example: employee
benefits:
type: array
benefit_overrides:
type: array
post_tax_deductions:
type: array
post_tax_deduction_overrides:
type: array
tax_overrides:
type: array
warnings:
type: array
contractor_payments:
type: array
items:
type: object
properties:
contractor:
type: string
example: ctr_90QzaH9xPRI7JRLXnRoU
payment_method:
type: string
example: manual
amount:
type: string
example: '100.00'
reimbursement_amount:
type: string
example: '15.00'
correction:
type: string
nullable: true
description: ID of the [correction](https://docs.checkhq.com/reference/the-correction-object) this payroll is an operation of. `null` if the payroll is not attached to a correction.
is_void:
type: boolean
example: false
default: true
metadata:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
/payrolls/{payroll}:
get:
summary: Get a payroll
description: Returns the specified payroll.
operationId: get-payroll
parameters:
- name: payroll
in: path
description: ID of the payroll to return.
schema:
type: string
required: true
- name: include_items
in: query
description: Return related payroll items directly on this payroll.
schema:
type: boolean
default: false
- name: include_contractor_payments
in: query
description: Return related contractor payments directly on this payroll.
schema:
type: boolean
default: false
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"id\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"company\": \"com_sx3svU6K8c5ZkSFlOh5p\",\n \"period_start\": \"2019-06-16\",\n \"period_end\": \"2019-06-29\",\n \"approval_deadline\": \"2019-07-02T00:00:00.000000Z\",\n \"approved_at\": \"2019-06-29T18:26:56.848920Z\",\n \"payday\": \"2019-07-05\",\n \"status\": \"paid\",\n \"type\": \"regular\",\n \"pay_frequency\": \"biweekly\",\n \"funding_payment_method\": \"ach\",\n \"processing_period\": \"four_day\",\n \"off_cycle_options\": null,\n \"managed\": true,\n \"totals\": {\n \"employee_gross\": \"961.54\",\n \"employee_reimbursements\": \"0.00\",\n \"employee_taxes\": \"249.23\",\n \"employee_benefits\": \"0.00\",\n \"post_tax_deductions\": \"0.00\",\n \"employee_net\": \"712.31\",\n \"contractor_gross\": \"100.00\",\n \"contractor_reimbursements\": \"15.00\",\n \"contractor_net\": \"115.00\",\n \"company_taxes\": \"73.56\",\n \"company_benefits\": \"0.00\",\n \"liability\": \"1150.10\",\n \"cash_requirement\": \"1150.10\"\n },\n \"items\": [\n {\n \"id\": \"itm_yvmmsVGFxLoBaMIkqzea\",\n \"payroll\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"employee\": \"emp_zGGp6wYcxAeu1Ng8IA7v\",\n \"payment_method\": \"direct_deposit\",\n \"net_pay\": \"712.31\",\n \"earnings\": [\n {\n \"amount\": \"961.54\",\n \"hours\": 40.0,\n \"type\": \"regular\",\n \"workplace\": \"wrk_cxcG4vjGKcSXZk1fgKai\",\n \"code\": null,\n \"description\": null\n }\n ],\n \"reimbursements\": [],\n \"taxes\": [\n {\n \"tax\": \"tax_I1Z9zqbBGWIbvlZpN2Vq\",\n \"description\": \"New York SDI\",\n \"amount\": \"0.60\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ImvSF9CTuMdokf0uwx5x\",\n \"description\": \"Employer FICA Tax\",\n \"amount\": \"59.62\",\n \"payer\": \"company\"\n },\n {\n \"tax\": \"tax_yjNkKk061BTipYv7G4Ti\",\n \"description\": \"New York City Tax\",\n \"amount\": \"31.04\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_S1krAkh75RzdWu5J53HA\",\n \"description\": \"New York State Tax\",\n \"amount\": \"44.20\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_UJrIQbtVErbdez0bYTVN\",\n \"description\": \"New York Family Leave Benefits\",\n \"amount\": \"1.47\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_1XHqR9Qf5t18SD2sfYEe\",\n \"description\": \"Medicare\",\n \"amount\": \"13.94\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_8L3JLfsH4X6dp0maBWfW\",\n \"description\": \"Federal Income Tax\",\n \"amount\": \"98.36\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ibU8cGhC5OlpOjoQFIXV\",\n \"description\": \"FICA\",\n \"amount\": \"59.62\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_O3f21hkS1cvHBZTa61BO\",\n \"description\": \"Employer Medicare Tax\",\n \"amount\": \"13.94\",\n \"payer\": \"company\"\n }\n ],\n \"benefits\": [],\n \"benefit_overrides\": [],\n \"post_tax_deductions\": [],\n \"post_tax_deduction_overrides\": [],\n \"warnings\": []\n }\n ],\n \"contractor_payments\": [\n {\n \"contractor\": \"ctr_90QzaH9xPRI7JRLXnRoU\",\n \"payment_method\": \"manual\",\n \"amount\": \"100.00\",\n \"reimbursement_amount\": \"15.00\"\n }\n ],\n \"is_void\": false,\n \"metadata\": {}\n}"
schema:
type: object
properties:
id:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
company:
type: string
example: com_sx3svU6K8c5ZkSFlOh5p
period_start:
type: string
example: '2019-06-16'
period_end:
type: string
example: '2019-06-29'
approval_deadline:
type: string
example: '2019-07-02T00:00:00.000000Z'
approved_at:
type: string
example: '2019-06-29T18:26:56.848920Z'
payday:
type: string
example: '2019-07-05'
status:
type: string
example: paid
type:
type: string
example: regular
pay_frequency:
type: string
example: biweekly
funding_payment_method:
type: string
example: ach
processing_period:
type: string
example: four_day
off_cycle_options: {}
managed:
type: boolean
example: true
default: true
totals:
type: object
properties:
employee_gross:
type: string
example: '961.54'
employee_reimbursements:
type: string
example: '0.00'
employee_taxes:
type: string
example: '249.23'
employee_benefits:
type: string
example: '0.00'
post_tax_deductions:
type: string
example: '0.00'
employee_net:
type: string
example: '712.31'
contractor_gross:
type: string
example: '100.00'
contractor_reimbursements:
type: string
example: '15.00'
contractor_net:
type: string
example: '115.00'
company_taxes:
type: string
example: '73.56'
company_benefits:
type: string
example: '0.00'
liability:
type: string
example: '1150.10'
cash_requirement:
type: string
example: '1150.10'
items:
type: array
items:
type: object
properties:
id:
type: string
example: itm_yvmmsVGFxLoBaMIkqzea
payroll:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
employee:
type: string
example: emp_zGGp6wYcxAeu1Ng8IA7v
payment_method:
type: string
example: direct_deposit
net_pay:
type: string
example: '712.31'
earnings:
type: array
items:
type: object
properties:
amount:
type: string
example: '961.54'
hours:
type: integer
example: 40
default: 0
type:
type: string
example: regular
workplace:
type: string
example: wrk_cxcG4vjGKcSXZk1fgKai
code: {}
description: {}
reimbursements:
type: array
taxes:
type: array
items:
type: object
properties:
tax:
type: string
example: tax_I1Z9zqbBGWIbvlZpN2Vq
description:
type: string
example: New York SDI
amount:
type: string
example: '0.60'
payer:
type: string
example: employee
benefits:
type: array
benefit_overrides:
type: array
post_tax_deductions:
type: array
post_tax_deduction_overrides:
type: array
tax_overrides:
type: array
warnings:
type: array
contractor_payments:
type: array
items:
type: object
properties:
contractor:
type: string
example: ctr_90QzaH9xPRI7JRLXnRoU
payment_method:
type: string
example: manual
amount:
type: string
example: '100.00'
reimbursement_amount:
type: string
example: '15.00'
correction:
type: string
nullable: true
description: ID of the [correction](https://docs.checkhq.com/reference/the-correction-object) this payroll is an operation of. `null` if the payroll is not attached to a correction.
is_void:
type: boolean
example: false
default: true
metadata:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
patch:
summary: Update a payroll
description: Updates the specified payroll. For payrolls attached to a correction as replacements, `payday` may change only within the same bounds enforced at creation, and nested `items` and `contractor_payments` must keep `payment_method` `manual`. `correction` may be included only to restate the payroll's current correction ID; a different value is rejected.
operationId: update-payroll
parameters:
- name: payroll
in: path
description: ID of the payroll to update.
schema:
type: string
required: true
- name: include_items
in: query
description: Update related payroll items directly on this payroll.
schema:
type: boolean
default: false
- name: include_contractor_payment
in: query
description: Update related contractor payments directly on this payroll.
schema:
type: boolean
default: false
requestBody:
content:
application/json:
schema:
type: object
properties:
period_start:
type: string
description: The start of the date range that the payroll covers.
format: date
period_end:
type: string
description: The end of the date range that the payroll covers.
format: date
payday:
type: string
description: The date on which employees will be paid for the payroll.
format: date
processing_period:
type: string
description: 'The processing period of the payroll.
One of `three_day`, `two_day`, or `one_day`.
The processing period determines the approval deadline of the payroll. For a payroll with a Friday payday, `three_day` will mean the approval deadline is on Tuesday, whereas `two_day` will mean the approval deadline is on Wednesday.
The possible values for this field are constrained by the processing periods the company is approved for.
Default: `processing_period` of the company'
type:
type: string
description: Indicates whether the payroll is a regular or [off-cycle](https://docs.checkhq.com/docs/off-cycle-payroll) payroll.
One of `regular` or `off_cycle`. Other payroll types, such as `amendment` and `balancing`, are created by Check and can't be set through the API.
pay_frequency:
type: string
description: Frequency by which [employees](https://docs.checkhq.com/reference/the-employee-object) get paid.
One of `weekly`, `biweekly`, `semimonthly`, `monthly`, `quarterly`, or `annually`.
funding_payment_method:
type: string
description: Payment method for funding the payroll.
One of `ach`, `wire`, or `parafin`.
`ach` and `wire` can be set when creating or updating a payroll. `parafin` is set by Check when a payroll advance is accepted and cannot be set or changed via the API.
pay_schedule:
type: string
description: ID of the [pay schedule](https://docs.checkhq.com/reference/the-pay-schedule-object) that the payroll relates to.
off_cycle_options:
type: object
description: Additional configuration options controlling `off_cycle` payroll behavior.
properties:
force_supplemental_withholding:
type: boolean
description: Whether to tax all earnings as supplemental earnings.
apply_benefits:
type: boolean
description: Whether to apply [benefit deductions and contributions](https://docs.checkhq.com/reference/the-employee-benefit-object) to the payroll.
apply_post_tax_deductions:
type: boolean
description: Whether to apply [post-tax deductions](https://docs.checkhq.com/reference/the-post-tax-deduction-object) to the payroll.
correction:
type: string
description: May be included only to restate this payroll's current correction ID; matching the current value is accepted as a no-op. A different value is rejected. Omitted leaves the correction unchanged.
items:
type: array
description: The set of [payroll items](https://docs.checkhq.com/reference/the-payroll-item-object) associated with the payroll. Must set `include_items=true`.
items:
properties:
employee:
type: string
payment_method:
type: string
earnings:
type: array
items:
properties:
type:
type: string
description: Type of earning. Can be one of the following earning types in Types of earnings
workplace:
type: string
description: ID of the workplace where work for this earning was performed
earning_code:
type: string
description: The earning code id which will be used to aggregate earnings on the paystub
description:
type: string
description: Readable description of the earning code that will show up on the paystub
earning_rate:
type: string
description: The earning rate id which will be used to calculate the gross wage. Required if type is “piece”
amount:
type: string
description: Amount earned for this earning
May be negative, for example to reverse or correct a previously reported earning
hours:
type: number
description: Number of hours worked for this earning
format: float
piece_units:
type: number
description: Number of units of work produced. Required if type is “piece”
format: float
metadata:
type: string
description: Additional loosely structured information to associate with the earning
format: json
required:
- workplace
type: object
reimbursements:
type: array
items:
properties:
amount:
type: string
description: Amount of reimbursement
Must be greater than or equal to 0 on regular payrolls. Negative values are accepted on external payrolls
description:
type: string
description: Description for the reimbursement that will show up on the paystub
code:
type: string
description: Unique code to identify the reimbursement that will be used to aggregate reimbursements on the paystub. Recommended to always be included to have explicit groupings on the paystub.
metadata:
type: string
description: Additional loosely structured information to associate with the reimbursement
format: json
required:
- amount
type: object
benefit_overrides:
type: array
description: The set of benefit override objects associated with this payroll item.
items:
properties:
benefit:
type: string
description: ID of the employee benefit that is being overridden for the payroll item
employee_contribution_amount:
type: string
description: Updated employee contribution amount to use for this payroll only
company_contribution_amount:
type: string
description: Updated company contribution amount to use for this payroll only
required:
- benefit
type: object
post_tax_deduction_overrides:
type: array
description: The set of post-tax deduction override objects associated with this payroll item.
items:
properties:
post_tax_deduction:
type: string
description: ID of the miscellaneous post-tax deduction that is being overridden.
amount:
type: string
description: Updated deduction amount to use for this payroll only
required:
- post_tax_deduction
- amount
type: object
tax_overrides:
type: array
description: The set of tax override objects associated with this payroll item.
items:
properties:
tax:
type: string
description: ID of the tax being overridden. Only Federal Income Tax and State Income Taxes are eligible.
amount:
type: string
description: Updated withholding amount to use for this payroll only.
required:
- tax
- amount
type: object
pto_balance_hours:
type: number
description: The employee's remaining PTO hour balance, for display on the paystub
format: float
sick_balance_hours:
type: number
description: The employee's remaining sick hour balance, for display on the paystub
format: float
state_covid_sick_balance_hours:
type: number
description: The employee's remaining sick hour balance from state COVID relief bills, for display on the paystub
format: float
supplemental_tax_calc_method:
type: string
description: Controls the method used by Check to calculate tax on supplemental earnings. May be flat or aggregate
paper_check_number:
type: string
description: For accounting. The check number associated with any printed checks. Can be updated even after the associated payroll has been approved. See [Get a paper check](https://docs.checkhq.com/reference/get-a-paper-check) for more details.
metadata:
type: string
description: Additional loosely structured information to associate with the payroll item.
format: json
required:
- employee
type: object
contractor_payments:
type: array
description: The set of [contractor payments](https://docs.checkhq.com/reference/the-contractor-payment-object) associated with the payroll. Must set `include_contractor_payments=true`.
items:
properties:
contractor:
type: string
description: The id of the contractor being paid
payment_method:
type: string
description: The way the contractor will be paid, either “direct_deposit” or "manual"
default: '"direct_deposit"'
amount:
type: string
description: The amount the contractor should be paid
default: '"0.00"'
reimbursement_amount:
type: string
description: The amount to reimburse the contractor
default: '"0.00"'
paper_check_number:
type: string
description: For accounting. The check number associated with any printed checks. Can be updated even after the associated payroll has been approved. See Get a paper check for more details.
workplace:
type: string
description: The Workplace ID associated with this payment.
required:
- contractor
type: object
metadata:
type: string
description: Additional loosely structured information to associate with the payroll. Values must be string.
format: json
bank_account:
type: string
description: ID of the [bank account](https://docs.checkhq.com/reference/bank-accounts-1) that will be used to fund the payroll.
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
delete:
summary: Delete a payroll
description: Deletes a payroll.
operationId: delete-a-payroll
parameters:
- name: payroll
in: path
schema:
type: string
required: true
responses:
'204':
description: '204'
content:
application/json:
examples:
Result:
value: ''
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
/payrolls/{payroll}/approve:
post:
summary: Approve a payroll
description: Approves a payroll.
operationId: approve-payroll
parameters:
- name: payroll
in: path
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: {}
'409':
description: Conflict
content:
application/json:
schema:
type: object
properties:
error:
type: string
enum:
- preview_superseded
message:
type: string
required:
- error
- message
examples:
Conflict:
summary: Conflict
value:
error:
type: preview_superseded
message: The payroll was re-previewed after the timestamp provided in preview_started_at. Please re-fetch the payroll to get the latest preview before approving.
requestBody:
content:
application/json:
schema:
type: object
properties:
preview_started_at:
type: string
description: OPTIONAL. The preview.started_at timestamp the client last saw. If provided and it no longer matches the payroll's current preview, the request fails with a 409 preview_superseded error instead of approving.
tags:
- Payrolls
/payrolls/{payroll}/paper_checks:
get:
summary: Get paper checks
description: Generate paper checks for the specified payroll.
operationId: get-paper-checks
parameters:
- name: payroll
in: path
schema:
type: string
default: ID of the payroll
required: true
responses:
'202':
description: '202'
content:
application/json:
examples:
Result:
value: '{"url": "string"}'
schema:
type: object
properties:
url:
type: string
example: string
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
/payrolls/{payroll}/preview:
get:
summary: Preview a payroll
description: Returns a preview of an approved version of the input payroll
operationId: preview-payroll
parameters:
- name: payroll
in: path
description: ID of the payroll to preview.
schema:
type: string
required: true
- name: Accept
in: header
description: Either `application/json` or `text/csv`
schema:
type: string
- name: async
in: query
description: Enable this flag to preview asynchronously. This is required for payrolls with more than 500 payroll items and contractor payments.
schema:
type: boolean
default: false
- name: include_items
in: query
description: Enable this flag to return payroll items directly on this payroll.
schema:
type: boolean
default: false
- name: include_contractor_payments
in: query
description: Enable this flag to return contractor payments directly on this payroll.
schema:
type: boolean
default: false
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: "{\n \"id\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"company\": \"com_sx3svU6K8c5ZkSFlOh5p\",\n \"period_start\": \"2019-06-16\",\n \"period_end\": \"2019-06-29\",\n \"approval_deadline\": \"2019-07-02T00:00:00.000000Z\",\n \"approved_at\": \"2019-06-29T18:26:56.848920Z\",\n \"payday\": \"2019-07-05\",\n \"status\": \"paid\",\n \"type\": \"regular\",\n \"pay_frequency\": \"biweekly\",\n \"funding_payment_method\": \"ach\",\n \"processing_period\": \"four_day\",\n \"off_cycle_options\": null,\n \"managed\": true,\n \"totals\": {\n \"employee_gross\": \"961.54\",\n \"employee_reimbursements\": \"0.00\",\n \"employee_taxes\": \"249.23\",\n \"employee_benefits\": \"0.00\",\n \"post_tax_deductions\": \"0.00\",\n \"employee_net\": \"712.31\",\n \"contractor_gross\": \"100.00\",\n \"contractor_reimbursements\": \"15.00\",\n \"contractor_net\": \"115.00\",\n \"company_taxes\": \"73.56\",\n \"company_benefits\": \"0.00\",\n \"liability\": \"1150.10\",\n \"cash_requirement\": \"1150.10\"\n },\n \"items\": [\n {\n \"id\": \"itm_yvmmsVGFxLoBaMIkqzea\",\n \"payroll\": \"pay_Z26PNMC7Ky1wfFQzVqfF\",\n \"employee\": \"emp_zGGp6wYcxAeu1Ng8IA7v\",\n \"payment_method\": \"direct_deposit\",\n \"net_pay\": \"712.31\",\n \"earnings\": [\n {\n \"amount\": \"961.54\",\n \"hours\": 40.0,\n \"type\": \"regular\",\n \"workplace\": \"wrk_cxcG4vjGKcSXZk1fgKai\",\n \"code\": null,\n \"description\": null\n }\n ],\n \"reimbursements\": [],\n \"taxes\": [\n {\n \"tax\": \"tax_I1Z9zqbBGWIbvlZpN2Vq\",\n \"description\": \"New York SDI\",\n \"amount\": \"0.60\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ImvSF9CTuMdokf0uwx5x\",\n \"description\": \"Employer FICA Tax\",\n \"amount\": \"59.62\",\n \"payer\": \"company\"\n },\n {\n \"tax\": \"tax_yjNkKk061BTipYv7G4Ti\",\n \"description\": \"New York City Tax\",\n \"amount\": \"31.04\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_S1krAkh75RzdWu5J53HA\",\n \"description\": \"New York State Tax\",\n \"amount\": \"44.20\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_UJrIQbtVErbdez0bYTVN\",\n \"description\": \"New York Family Leave Benefits\",\n \"amount\": \"1.47\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_1XHqR9Qf5t18SD2sfYEe\",\n \"description\": \"Medicare\",\n \"amount\": \"13.94\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_8L3JLfsH4X6dp0maBWfW\",\n \"description\": \"Federal Income Tax\",\n \"amount\": \"98.36\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_ibU8cGhC5OlpOjoQFIXV\",\n \"description\": \"FICA\",\n \"amount\": \"59.62\",\n \"payer\": \"employee\"\n },\n {\n \"tax\": \"tax_O3f21hkS1cvHBZTa61BO\",\n \"description\": \"Employer Medicare Tax\",\n \"amount\": \"13.94\",\n \"payer\": \"company\"\n }\n ],\n \"benefits\": [],\n \"benefit_overrides\": [],\n \"post_tax_deductions\": [],\n \"post_tax_deduction_overrides\": [],\n \"warnings\": []\n }\n ],\n \"contractor_payments\": [\n {\n \"contractor\": \"ctr_90QzaH9xPRI7JRLXnRoU\",\n \"payment_method\": \"manual\",\n \"amount\": \"100.00\",\n \"reimbursement_amount\": \"15.00\"\n }\n ],\n \"is_void\": false,\n \"metadata\": {}\n}"
schema:
type: object
properties:
id:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
company:
type: string
example: com_sx3svU6K8c5ZkSFlOh5p
period_start:
type: string
example: '2019-06-16'
period_end:
type: string
example: '2019-06-29'
approval_deadline:
type: string
example: '2019-07-02T00:00:00.000000Z'
approved_at:
type: string
example: '2019-06-29T18:26:56.848920Z'
payday:
type: string
example: '2019-07-05'
status:
type: string
example: paid
type:
type: string
example: regular
pay_frequency:
type: string
example: biweekly
funding_payment_method:
type: string
example: ach
processing_period:
type: string
example: four_day
off_cycle_options: {}
managed:
type: boolean
example: true
default: true
totals:
type: object
properties:
employee_gross:
type: string
example: '961.54'
employee_reimbursements:
type: string
example: '0.00'
employee_taxes:
type: string
example: '249.23'
employee_benefits:
type: string
example: '0.00'
post_tax_deductions:
type: string
example: '0.00'
employee_net:
type: string
example: '712.31'
contractor_gross:
type: string
example: '100.00'
contractor_reimbursements:
type: string
example: '15.00'
contractor_net:
type: string
example: '115.00'
company_taxes:
type: string
example: '73.56'
company_benefits:
type: string
example: '0.00'
liability:
type: string
example: '1150.10'
cash_requirement:
type: string
example: '1150.10'
items:
type: array
items:
type: object
properties:
id:
type: string
example: itm_yvmmsVGFxLoBaMIkqzea
payroll:
type: string
example: pay_Z26PNMC7Ky1wfFQzVqfF
employee:
type: string
example: emp_zGGp6wYcxAeu1Ng8IA7v
payment_method:
type: string
example: direct_deposit
net_pay:
type: string
example: '712.31'
earnings:
type: array
items:
type: object
properties:
amount:
type: string
example: '961.54'
hours:
type: integer
example: 40
default: 0
type:
type: string
example: regular
workplace:
type: string
example: wrk_cxcG4vjGKcSXZk1fgKai
code: {}
description: {}
reimbursements:
type: array
taxes:
type: array
items:
type: object
properties:
tax:
type: string
example: tax_I1Z9zqbBGWIbvlZpN2Vq
description:
type: string
example: New York SDI
amount:
type: string
example: '0.60'
payer:
type: string
example: employee
benefits:
type: array
benefit_overrides:
type: array
post_tax_deductions:
type: array
post_tax_deduction_overrides:
type: array
tax_overrides:
type: array
warnings:
type: array
contractor_payments:
type: array
items:
type: object
properties:
contractor:
type: string
example: ctr_90QzaH9xPRI7JRLXnRoU
payment_method:
type: string
example: manual
amount:
type: string
example: '100.00'
reimbursement_amount:
type: string
example: '15.00'
correction:
type: string
nullable: true
description: ID of the [correction](https://docs.checkhq.com/reference/the-correction-object) this payroll is an operation of. `null` if the payroll is not attached to a correction.
is_void:
type: boolean
example: false
default: true
metadata:
type: object
properties: {}
deprecated: false
tags:
- Payrolls
/payrolls/{payroll}/reopen:
post:
summary: Reopen a pending payroll
description: Moves a pending payroll's status to draft, allowing you to make further edits to the payroll or its items.
operationId: reopen-payroll
parameters:
- name: payroll
in: path
description: ID of the payroll to reopen
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: ''
deprecated: false
tags:
- Payrolls
/payrolls/{payroll}/reports/paper_checks:
get:
summary: Get Paper Checks Report
description: ''
operationId: get-paper-checks-report
parameters:
- name: payroll
in: path
description: Returns paper checks report for this payroll ID
schema:
type: string
required: true
- name: Accept
in: header
description: Either application/json or text/csv
schema:
type: string
- name: representation
in: query
description: '`default` or `checkeeper`. If `checkeeper` is selected, report entries will be formatted to be compatible with Checkeeper''s paper checks import flow.'
schema:
type: string
default: default
- name: address_type
in: query
description: '`payee` or `company`. If `payee` is selected, the address for each entry is set to the individual payee''s mailing address, as recorded in Check. If set to `company`, all entries will have the mailing address set to the company''s address.'
schema:
type: string
default: payee
responses:
'200':
description: '200'
content:
application/json:
examples:
default:
value: "{\n \"next\": null,\n \"previous\": null,\n \"results\": [\n \t{\n \"payee\": \"Tony Stark\",\n \"address_line1\": \"630 Bedford Road\",\n \"address_line2\": \"APT 1201\",\n \"address_city\": \"Tarrytown\",\n \"address_state\": \"NY\",\n \"address_postalcode\": \"10591\",\n \"amount\": \"831.66\",\n \"date\": \"2022-10-31\",\n \"memo\": \"\",\n \"payroll_item\": \"itm_NlBENQZ0eNWQqx46oQbZ\",\n \"contractor_payment\": null\n }\n ]\n}"
checkeeper:
value: "{\n \"next\": null,\n \"previous\": null,\n \"results\": [\n {\n \"payee\": \"Tony Stark\",\n \"address\": \"630 Bedford Road\",\n \"address_line2\": \"APT 1201\",\n \"city\": \"Tarrytown\",\n \"state\": \"NY\",\n \"zip_code\": \"10591\",\n \"amount\": \"831.66\",\n \"date\": \"2022-10-31\",\n \"memo\": \"\",\n \"payroll_item\": \"itm_NlBENQZ0eNWQqx46oQbZ\",\n \"contractor_payment\": null\n }\n ]\n}"
schema:
oneOf:
- title: default
type: object
properties:
next: {}
previous: {}
results:
type: array
items:
type: object
properties:
payee:
type: string
example: Tony Stark
address_line1:
type: string
example: 630 Bedford Road
address_line2:
type: string
example: APT 1201
address_city:
type: string
example: Tarrytown
address_state:
type: string
example: NY
address_postalcode:
type: string
example: '10591'
amount:
type: string
example: '831.66'
date:
type: string
example: '2022-10-31'
memo:
type: string
example: ''
payroll_item:
type: string
example: itm_NlBENQZ0eNWQqx46oQbZ
contractor_payment: {}
- title: checkeeper
type: object
properties:
next: {}
previous: {}
results:
type: array
items:
type: object
properties:
payee:
type: string
example: Tony Stark
address:
type: string
example: 630 Bedford Road
address_line2:
type: string
example: APT 1201
city:
type: string
example: Tarrytown
state:
type: string
example: NY
zip_code:
type: string
example: '10591'
amount:
type: string
example: '831.66'
date:
type: string
example: '2022-10-31'
memo:
type: string
example: ''
payroll_item:
type: string
example: itm_NlBENQZ0eNWQqx46oQbZ
contractor_payment: {}
deprecated: false
requestBody:
content:
application/json:
schema: {}
examples:
default representation:
value:
payee: Tony Stark
address_line1: 630 Bedford Road
address_line2: APT 1201
address_city: Tarrytown
address_state: NY
address_postalcode: '10591'
amount: '831.66'
date: '2022-10-31'
memo: ''
payroll_item: itm_NlBENQZ0eNWQqx46oQbZ
contractor_payment: null
checkeeper representation:
value:
payee: Tony Stark
address: 630 Bedford Road
address_line2: APT 1201
city: Tarrytown
state: NY
zip_code: '10591'
amount: '831.66'
date: '2022-10-31'
memo: ''
payroll_item: itm_NlBENQZ0eNWQqx46oQbZ
contractor_payment: null
tags:
- Payrolls
/payrolls/{payroll}/simulate/complete_disbursements:
post:
summary: '[Sandbox] Complete disbursements'
description: Complete disbursements for a payroll. Sandbox-only.
operationId: sandbox-complete-disbursements
parameters:
- name: payroll
in: path
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
tags:
- Payrolls
/payrolls/{payroll}/simulate/complete_funding:
post:
summary: '[Sandbox] Complete funding'
description: Complete funding for a payroll. Sandbox-only.
operationId: sandbox-complete-funding
parameters:
- name: payroll
in: path
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
tags:
- Payrolls
/payrolls/{payroll}/simulate/fail_funding:
post:
summary: '[Sandbox] Fail funding'
description: Fail funding for a payroll. Sandbox-only.
operationId: sandbox-fail-funding
parameters:
- name: payroll
in: path
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
tags:
- Payrolls
/payrolls/{payroll}/simulate/start_processing:
post:
summary: '[Sandbox] Start processing'
description: Start processing for a payroll. Sandbox-only.
operationId: sandbox-start-processing
parameters:
- name: payroll
in: path
schema:
type: string
required: true
responses:
'200':
description: '200'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
'400':
description: '400'
content:
application/json:
examples:
Result:
value: '{}'
schema:
type: object
properties: {}
tags:
- Payrolls
/payrolls/{payroll}/void:
post:
summary: Void a payroll
description: Creates a void payroll that zeros out items on an existing payroll and attaches it to a draft correction.
operationId: void-a-payroll
parameters:
- name: payroll
in: path
description: ID of the payroll to void
schema:
type: string
required: true
requestBody:
content:
application/json:
schema:
type: object
required:
- correction
properties:
correction:
type: string
description: ID of the draft [correction](https://docs.checkhq.com/reference/the-correction-object) to attach the void payroll to.
subset:
type: object
nullable: true
description: Omit or set to `null` to void the entire payroll. Otherwise, void exactly the listed payroll items and/or contractor payments.
properties:
payroll_items:
type: array
items:
type: string
description: IDs of the payroll items to void. An omitted or null list voids none of this kind.
contractor_payments:
type: array
items:
type: string
description: IDs of the contractor payments to void. An omitted or null list voids none of this kind.
responses:
'201':
description: '201'
content:
application/json:
examples:
Result:
value: "{\n \"id\": \"pay_Mt7cJqXcVfW2yPKhBvsN\",\n \"company\": \"com_sx3svU6K8c5ZkSFlOh5p\",\n \"period_start\": \"2026-03-14\",\n \"period_end\": \"2026-03-27\",\n \"payday\": \"2026-03-31\",\n \"status\": \"draft\",\n \"type\": \"regular\",\n \"managed\": true,\n \"is_void\": true,\n \"items\": [\n {\n \"id\": \"itm_u47H5GlEeTRiuroEdtOg\",\n \"payroll\": \"pay_Mt7cJqXcVfW2yPKhBvsN\",\n \"employee\": \"emp_h4VezdUn9v9oSoyORQC7\",\n \"status\": \"draft\",\n \"void_of\": \"itm_Ue75kUcWex5JRGTRuqux\",\n \"voided_by\": null,\n \"net_pay\": \"-330.68\",\n \"earnings\": [\n {\n \"amount\": \"-400.00\",\n \"hours\": -40.0,\n \"type\": \"hourly\",\n \"workplace\": \"wrk_5wEgDPwh0dYqElB6yArb\"\n }\n ],\n \"taxes\": [\"...\"],\n \"benefits\": [],\n \"post_tax_deductions\": [],\n \"warnings\": []\n }\n ],\n \"contractor_payments\": [],\n \"metadata\": {}\n}"
deprecated: false
tags:
- Payrolls
components:
securitySchemes:
sec0:
type: apiKey
in: header
name: Authorization
x-bearer-format: bearer
x-default: YOUR_API_KEY
x-readme-fauxas: true
x-provenance:
method: searched
source: https://docs.checkhq.com/reference
harvested: '2026-10-14'
tool: harvest-readme-openapi.py
note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
assembled_from:
- https://docs.checkhq.com/reference/add-filing-blockers.md
- https://docs.checkhq.com/reference/approve-a-correction.md
- https://docs.checkhq.com/reference/approve-an-external-payroll.md
- https://docs.checkhq.com/reference/approve-payroll.md
- https://docs.checkhq.com/reference/bulk-get-employee-tax-parameter-settings.md
- https://docs.checkhq.com/reference/bulk-get-employee-tax-params.md
- https://docs.checkhq.com/reference/bulk-update-employee-tax-parameters.md
- https://docs.checkhq.com/reference/cancel-a-payment.md
- https://docs.checkhq.com/reference/company-business-details.md
- https://docs.checkhq.com/reference/company-checklist-component.md
- https://docs.checkhq.com/reference/company-connect-bank-account.md
- https://docs.checkhq.com/reference/company-employee-setup.md
- https://docs.checkhq.com/reference/company-filing-authorization.md
- https://docs.checkhq.com/reference/company-pay-history.md
- https://docs.checkhq.com/reference/company-payment-setup.md
- https://docs.checkhq.com/reference/company-progress-tracker.md
- https://docs.checkhq.com/reference/company-signatory-agreements.md
- https://docs.checkhq.com/reference/company-tax-setup.md
- https://docs.checkhq.com/reference/company-team-setup.md
- https://docs.checkhq.com/reference/company-terms-of-service.md
- https://docs.checkhq.com/reference/company-verification-documents.md
- https://docs.checkhq.com/reference/contractor-roster.md
- https://docs.checkhq.com/reference/create-a-bank-account.md
- https://docs.checkhq.com/reference/create-a-company-provided-document.md
- https://docs.checkhq.com/reference/create-a-contractor-payment.md
- https://docs.checkhq.com/reference/create-a-correction.md
- https://docs.checkhq.com/reference/create-a-pay-schedule.md
- https://docs.checkhq.com/reference/create-a-payroll-item.md
- https://docs.checkhq.com/reference/create-a-post-tax-deduction.md
- https://docs.checkhq.com/reference/create-a-report-run.md
- https://docs.checkhq.com/reference/create-a-workplace.md
- https://docs.checkhq.com/reference/create-an-earning-code.md
- https://docs.checkhq.com/reference/create-an-earning-rate.md
- https://docs.checkhq.com/reference/create-an-external-payroll.md
- https://docs.checkhq.com/reference/create-company-tax-elections.md
- https://docs.checkhq.com/reference/create-net-pay-split.md
- https://docs.checkhq.com/reference/create-payroll.md
- https://docs.checkhq.com/reference/create-the-enrollment-profile.md
- https://docs.checkhq.com/reference/credit-limits.md
- https://docs.checkhq.com/reference/delete-a-bank-account.md
- https://docs.checkhq.com/reference/delete-a-company-benefit.md
- https://docs.checkhq.com/reference/delete-a-contractor-payment.md
- https://docs.checkhq.com/reference/delete-a-correction.md
- https://docs.checkhq.com/reference/delete-a-pay-schedule.md
- https://docs.checkhq.com/reference/delete-a-payroll-copy-1.md
- https://docs.checkhq.com/reference/delete-a-payroll-item-1.md
- https://docs.checkhq.com/reference/delete-a-payroll-item.md
- https://docs.checkhq.com/reference/delete-a-payroll.md
- https://docs.checkhq.com/reference/delete-a-post-tax-deduction.md
- https://docs.checkhq.com/reference/delete-a-webhook-config.md
- https://docs.checkhq.com/reference/delete-an-employee-benefit.md
- https://docs.checkhq.com/reference/download-a-report-run.md
- https://docs.checkhq.com/reference/download-a-setup-document.md
- https://docs.checkhq.com/reference/download-a-tax-package.md
- https://docs.checkhq.com/reference/employee-roster.md
- https://docs.checkhq.com/reference/employee-tax-setup.md
- https://docs.checkhq.com/reference/employee-tax-statements-1.md
- https://docs.checkhq.com/reference/employee-withholdings-setup.md
- https://docs.checkhq.com/reference/filing-preview-component.md
- https://docs.checkhq.com/reference/full-service-setup-submission.md
- https://docs.checkhq.com/reference/generate-contractor-onboard-link.md
- https://docs.checkhq.com/reference/generate-onboard-link.md
- https://docs.checkhq.com/reference/get-a-communication.md
- https://docs.checkhq.com/reference/get-a-company-filing.md
- https://docs.checkhq.com/reference/get-a-contractor-pay-statement.md
- https://docs.checkhq.com/reference/get-a-contractor-payment.md
- https://docs.checkhq.com/reference/get-a-correction-receipt-download.md
- https://docs.checkhq.com/reference/get-a-correction-receipt.md
- https://docs.checkhq.com/reference/get-a-correction.md
- https://docs.checkhq.com/reference/get-a-form.md
- https://docs.checkhq.com/reference/get-a-fulfillment-receipt-2.md
- https://docs.checkhq.com/reference/get-a-fulfillment.md
- https://docs.checkhq.com/reference/get-a-log.md
- https://docs.checkhq.com/reference/get-a-notification.md
- https://docs.checkhq.com/reference/get-a-paper-check-2.md
- https://docs.checkhq.com/reference/get-a-paper-check.md
- https://docs.checkhq.com/reference/get-a-pay-schedule.md
- https://docs.checkhq.com/reference/get-a-report-run.md
- https://docs.checkhq.com/reference/get-a-setup-document.md
- https://docs.checkhq.com/reference/get-a-setup.md
- https://docs.checkhq.com/reference/get-a-tax-package.md
- https://docs.checkhq.com/reference/get-a-tax.md
- https://docs.checkhq.com/reference/get-a-webhook-delivery.md
- https://docs.checkhq.com/reference/get-an-agency.md
- https://docs.checkhq.com/reference/get-an-earning-code.md
- https://docs.checkhq.com/reference/get-an-earning-rate.md
- https://docs.checkhq.com/reference/get-an-employees-paystubs.md
- https://docs.checkhq.com/reference/get-an-external-payroll.md
- https://docs.checkhq.com/reference/get-an-integration-partner-copy.md
- https://docs.checkhq.com/reference/get-child-support-payments-report.md
- https://docs.checkhq.com/reference/get-company-paydays.md
- https://docs.checkhq.com/reference/get-paper-checks-report.md
- https://docs.checkhq.com/reference/get-paper-checks.md
- https://docs.checkhq.com/reference/get-paydays.md
- https://docs.checkhq.com/reference/get-payroll-journal.md
- https://docs.checkhq.com/reference/get-payroll.md
- https://docs.checkhq.com/reference/integration-partners-copy.md
- https://docs.checkhq.com/reference/integration-partners.md
- https://docs.checkhq.com/reference/list-a-webhook-config.md
- https://docs.checkhq.com/reference/list-active-funding-strikes.md
- https://docs.checkhq.com/reference/list-agencies.md
- https://docs.checkhq.com/reference/list-bank-accounts.md
- https://docs.checkhq.com/reference/list-benefits.md
- https://docs.checkhq.com/reference/list-communications.md
- https://docs.checkhq.com/reference/list-companies.md
- https://docs.checkhq.com/reference/list-company-authorization-documents.md
- https://docs.checkhq.com/reference/list-company-benefits.md
- https://docs.checkhq.com/reference/list-company-filings.md
- https://docs.checkhq.com/reference/list-company-tax-documents.md
- https://docs.checkhq.com/reference/list-company-tax-elections.md
- https://docs.checkhq.com/reference/list-company-tax-parameter-settings.md
- https://docs.checkhq.com/reference/list-company-tax-parameters.md
- https://docs.checkhq.com/reference/list-contractor-forms.md
- https://docs.checkhq.com/reference/list-contractor-payments.md
- https://docs.checkhq.com/reference/list-contractor-tax-documents.md
- https://docs.checkhq.com/reference/list-contractors.md
- https://docs.checkhq.com/reference/list-corrections.md
- https://docs.checkhq.com/reference/list-earning-codes.md
- https://docs.checkhq.com/reference/list-earning-rates.md
- https://docs.checkhq.com/reference/list-employee-tax-documents.md
- https://docs.checkhq.com/reference/list-employee-tax-elections.md
- https://docs.checkhq.com/reference/list-employee-tax-parameter-settings.md
- https://docs.checkhq.com/reference/list-employee-tax-statements.md
- https://docs.checkhq.com/reference/list-employees-tax-parameters.md
- https://docs.checkhq.com/reference/list-employees.md
- https://docs.checkhq.com/reference/list-external-payrolls.md
- https://docs.checkhq.com/reference/list-forms.md
- https://docs.checkhq.com/reference/list-fulfillments.md
- https://docs.checkhq.com/reference/list-integration-accesses-1.md
- https://docs.checkhq.com/reference/list-integration-permissions-copy.md
- https://docs.checkhq.com/reference/list-integration-permissions.md
- https://docs.checkhq.com/reference/list-logs.md
- https://docs.checkhq.com/reference/list-net-pay-splits.md
- https://docs.checkhq.com/reference/list-notifications.md
- https://docs.checkhq.com/reference/list-pay-schedules.md
- https://docs.checkhq.com/reference/list-payments.md
- https://docs.checkhq.com/reference/list-payroll-items.md
- https://docs.checkhq.com/reference/list-payrolls.md
- https://docs.checkhq.com/reference/list-post-tax-deductions.md
- https://docs.checkhq.com/reference/list-report-runs.md
- https://docs.checkhq.com/reference/list-setup-documents.md
- https://docs.checkhq.com/reference/list-setups.md
- https://docs.checkhq.com/reference/list-tax-deposits.md
- https://docs.checkhq.com/reference/list-taxes.md
- https://docs.checkhq.com/reference/list-usage-records.md
- https://docs.checkhq.com/reference/list-usage-summaries.md
- https://docs.checkhq.com/reference/list-webhook-deliveries.md
- https://docs.checkhq.com/reference/list-workplaces.md
- https://docs.checkhq.com/reference/preview-a-correction.md
- https://docs.checkhq.com/reference/preview-an-external-payroll.md
- https://docs.checkhq.com/reference/preview-payroll.md
- https://docs.checkhq.com/reference/previous-payroll-provider-access.md
- https://docs.checkhq.com/reference/refund-a-payment.md
- https://docs.checkhq.com/reference/remove-filing-blockers.md
- https://docs.checkhq.com/reference/reopen-a-correction.md
- https://docs.checkhq.com/reference/reopen-a-pending-payroll.md
- https://docs.checkhq.com/reference/reopen-payroll.md
- https://docs.checkhq.com/reference/request-a-tax-package.md
- https://docs.checkhq.com/reference/request-embedded-setup.md
- https://docs.checkhq.com/reference/retry-a-payment.md
- https://docs.checkhq.com/reference/retry-a-webhook-delivery-in-sandbox.md
- https://docs.checkhq.com/reference/reveal-account-number.md
- https://docs.checkhq.com/reference/reveal-contractor-ssn.md
- https://docs.checkhq.com/reference/reveal-employee-ssn.md
- https://docs.checkhq.com/reference/run-payroll.md
- https://docs.checkhq.com/reference/sandbox-complete-disbursements.md
- https://docs.checkhq.com/reference/sandbox-complete-funding.md
- https://docs.checkhq.com/reference/sandbox-correction-complete-funding.md
- https://docs.checkhq.com/reference/sandbox-correction-fail-funding.md
- https://docs.checkhq.com/reference/sandbox-correction-start-processing.md
- https://docs.checkhq.com/reference/sandbox-fail-funding.md
- https://docs.checkhq.com/reference/sandbox-start-processing.md
- https://docs.checkhq.com/reference/submit-a-contractor-form.md
- https://docs.checkhq.com/reference/update-a-bank-account.md
- https://docs.checkhq.com/reference/update-a-company.md
- https://docs.checkhq.com/reference/update-a-correction.md
- https://docs.checkhq.com/reference/update-a-webhook-config.md
- https://docs.checkhq.com/reference/update-a-workplace.md
- https://docs.checkhq.com/reference/update-an-earning-rate.md
- https://docs.checkhq.com/reference/update-an-external-payroll.md
- https://docs.checkhq.com/reference/update-company-tax-elections.md
- https://docs.checkhq.com/reference/update-employee-tax-elections.md
- https://docs.checkhq.com/reference/update-payroll.md
- https://docs.checkhq.com/reference/update-the-enrollment-profile.md
- https://docs.checkhq.com/reference/validate-address.md
- https://docs.checkhq.com/reference/validate-an-external-payroll.md
- https://docs.checkhq.com/reference/void-a-payroll.md
- https://docs.checkhq.com/reference/workplace-roster.md
merge:
pages: 188
deduped: 195
conflicts_kept_first: 0