Contractor Payment Object

The Contractor Payment Object represents a payment made out to a Contractor Object.

attribute type description
contractorPaymentID string Zeal Contractor Payment ID
contractorID string Zeal Contractor ID
companyID string Zeal Company ID
status string Holds one of the following values: pending``pre-processed``processed
approval_required boolean
optional
Whether manual approval is required for this payment or not. By default, Zeal automatically processes the payment two business days before the pay date. However, if approval is required and the payment is not approved by time of processing, Zeal will NOT process the payment.
approved boolean
optional
Whether this payment has been manually approved or not (only relevant if approval_required is true)
pay_date date Date of Pay Date for this contractor payment, in the ISO-8601 format in UTC. Zeal will pay this contractor on this date. Example 2019-10-01
amount number Amount to be paid to the contractor
disbursement object This object includes information regarding how the pay is disbursed to the contractor.
Zeal supports 6 disbursement methods:
Direct Deposit, Download Check, Physical Check, Prepaid, Paycards (Early Access), and Instant Pay (Early Access).
Show disbursement fields:
method (type: string, default: direct_deposit)
history (type: array)
Provides an array of transaction updates
status (type: string) Provides an up-to-date status of the payment. The status will hold one of the following values:
pending: Status of all checks until net pay has been started
settled - Funds have successfully settled in employee’s account
void - When an Employer pays out the wrong person or the wrong amount and wants to void the check
returned - Net pay did not successfully get disbursed
refunded - Status of checks that failed but then the employer wants to pay out in-house (only applicable to direct deposit payments)
canceled - The check got canceled due to going to an inactive user or having a transaction going to a watchlist match (only applicable to direct deposit payments)
type string Type of payment. Only regular payments are reported on a contractor's Form 1099-NEC. Holds one of the following values - regular, reimbursement
speed string The ACH speed of the check, accepts two_day, one_day or one_day_no_reserve, zero_day, instant as values. (Early Access)
triggered boolean Whether a disbursement has been triggered. Only applicable if disbursement method is paycard or instant_pay
triggered_at datetime Timestamp of when the disbursement was triggered, in the ISO-8601 format in UTC.
customerAccountID (Early Access) string Can be used to attach a customer account to a contractor payment
metadata object Custom object you can attach to the contractor payment object. This is useful for storing additional information about the object in a custom, structured format. See
Metadata
payment_items array List of payment item objects associated with this contractor payment
apply_contractor_deductions boolean Applies a deduction to this payment for each contractor deduction template that is effective at the time of the pay date for the contractor. Note: Only applicable when payment_items is provided

EXAMPLE CONTRACTOR PAYMENT OBJECT

{
  "contractorPaymentID": "4f3c8e7f0d4c489a92df124aef6d6578",
  "contractorID": "9b1320c5d4d34761b57b0ac09b24037a",
  "companyID": "df2a785b82cb4f46b765a8580e7e9c2f",
  "status": "processed",
  "approval_required": false,
  "approved": false,
  "pay_date": "2024-10-01",
  "amount": "100",
  "disbursement": {
    "method": "direct_deposit",
    "history": [],
    "status": "settled"
  },
  "type": "regular",
  "triggered": true,
  "triggered_at": "2025-03-04T23:18:09Z",
  "customerAccountID": null,
  "metadata": {}
}

Types of Disbursement Methods

Direct Deposit: The most convenient disbursement type is to do a direct deposit into the employee's bank account, from the employers. In this case, Zeal will include the employee net pay in the Company Debit number of the employer check (i.e. net pay is debited from the employer's bank account.

The net pay is deposited into the employee bank account at check date.

Download check: Checks are useful for certain employees who prefer to be paid in checks instead of direct deposits. We do not include net pay from this employee check in the Company Debit number of the employer check (i.e. net pay is not debited from the employer’s bank account if employee check is “download check”).

Net pay is only taken out of the employers bank account when the employee cashes the check. The account / routing number is that of the employers.

The link for downloading the check becomes available by check date on the employee dashboard.

Physical check: For employees where net pay speed delivery is not an issue, and who prefer to be paid with a physical, mailed check instead of the download check or direct deposit methods. We do not include the net pay amount from this employee check in the Company Debit number of the employer check (i.e. net pay is not debited from the employer’s bank account if employee check is “physical check”).

Net pay is only taken out of the employers bank account when the employee cashes the check. The account / routing number is that of the employers.

The physical check is created on the check date, and sent to the home address listed for the employee in Zeal. Its arrival time will depend on the location of the employee.

Prepaid: Prepaid is used when the employer does want to use direct deposit, but instead has an alternate method of paying their employees. In that case, Zeal does not include net pay from this employee check in the Company Debit number of the employer check (i.e. net pay is not debited from the employer’s bank account if employee check is prepaid). Instead the employer is shown the net pay they owe their employees after taking out the appropriate taxes.

The employer is responsible for disbursing net pay outside of Zeal.

Paycard: If an employee has a paycard, the paycard disbursement method can be used to direct funds to the existing paycard. This allows for instantaneous payout and does not depend on ACH timings and delays. Note: This is only available for Paycards product (Early Access)

Instant Pay: If an employee has an Instant Pay wallet, the instant_pay disbursement method can be used to direct funds to their wallet. This allows for instantaneous payout and does not depend on ACH timings and delays. Note: This is only available for Instant Pay product (Early Access)