The payments and payment attempts objects

Represents payments and their corresponding attempts for completion initiated by Check on behalf of a company

See the Payments guide for more information

{
  "id": "pyt_uzasLBvddSm6aJkHGwQw",
  "status": "paid",
  "amount": "4522.0400",
  "type": "company_cash_requirement",
  "parent_type": "payroll",
  "parent_id": "pay_aPKCtxqbi1jDNEWRrz9w",
  "payment_attempts": [
    {
      "id": "pya_LUHvXtQBhkNM22xIk8K1",
      "created_at": "2022-02-18T20:17:13.033205Z",
      "expected_completion_date": "2022-02-23",
      "status": "paid",
      "failure_code": null,
      "payment_method": "ach",
      "payment_instrument": "bnk_W7hjDGn6sU1d3U8dr9bq",
      "wire_details": null,
      "ach_details": {
        "ach_trace_id": "ABC12300080",
        "description": "PAYMENT",
        "transaction_type_code": "PCR"
      },
      "retry": null,
    }
  ],
  "can_retry": false,
  "can_refund": false,
  "can_cancel": false,
  "cancel_deadline": "2022-02-19T17:00:00.000Z",
  "direction": "debit",
  "company": "com_ENA4k8LMHbgpV07GLGSv"
}
AttributeDescription
id
string
Unique identifier for the payment.
status
string
Status of the payment in its lifecycle.

One of draft, processing, paid, failed, refunded, refund_processing, refund_failed, reversal_processing, reversal_failed, reversed, orcanceled
amount
string
The amount of the payment, expressed as a decimal.
type
string
The type of payment.

One of company_cash_requirement, employee_net_pay, net_pay_refund, collection, or refund
parent_type
string
The parent type of the payment

One of payroll, payroll_item, contractor_payment, collection, or refund
parent_id
string
The id of the parent of the payment (refer to the parent_type field for the potential parents).

An id can be one of pay_..., pyi_..., cpa_..., or pyt_...
payment_attempts
array of objects
A list of associated attempts to fulfill the payment. Described in detail below.
can_retry
boolean
Boolean representing whether a particular payment can be retried. A payment must be in a failed state to be eligible for retry.
can_refund
boolean
Boolean representing whether a particular payment can be refunded. Only credit payments in a failed state are eligible for refunds.
can_cancel
boolean
Boolean representing whether a particular payment can be canceled. Only credit payments in a pending state are eligible for cancel.
cancel_deadline
datetime
Datetime by which the payment can be canceled by.
direction
string
String describing the direction of the payment from the caller's perspective.

Direction can be either credit or debit
company
string
Unique identifier for the company associated with this payment

Objects in the payment_attempts array

AttributeDescription
id
string
Id of the payment attempt
created_at
datetime
Datetime at which the payment attempt was created
expected_completion_date
date
The date on which the payment is expected to settle.
status
string
Status of the payment attempt in its lifecycle.

One of draft, processing, paid, failed, refunded, refund_processing, refund_failed, reversal_processing, reversal_failed, reversed, orcanceled
failure_code
string
A code describing the reason for a payment attempt failure.

One of insufficient_funds, account_closed, invalid_account_number, debit_not_authorized, declined, could_not_process, account_frozen, or invalid_account_holder
payment_method
string
A field describing the method of which the payment attempt was executed.

One of ach, wire, or manual
payment_instrument
string
If relevant, the id of the corresponding instrument used to complete a payment attempt. When payment_method is set to ach, payment_instrument will be a bank account id
wire_details
object
An object describing the relevant details to wire Check for a payment. Present if payment_method is set to wire
ach_details
object
An object describing the relevant details regarding an ACH payment. Present if payment_method is set to ach
retryField indicating whether the PaymentAttempt is a retry. Can be one of null, manual , automatic .

null indicates that the payment attempt is not a retry.

manual indicates the payment attempt was initiated by a partner in console.

automatic indicates the payment attempt was initiated automatically by Check’s systems.

The wire_details object

AttributeDescription
account_number
string
Account number for a Check-controlled bank account for wiring purposes
routing_number
string
Routing number used for wiring purposes.
bank_name
string
Name of the bank used for wiring purposes.
account_name
string
Name of the bank account used for wiring purposes.
account_address
string
Address of the bank account used for wiring purposes.
amount
number
Decimal-quoted amount of money to wire Check.

The ach_details object

AttributeDescription
ach_trace_id
string
Trace ID associated with Payment Attempt. Present after attempt is processed if payment_method = ach
description
string
Human-friendly description of Payment
transaction_type_code
string
Arbitrary descriptive codes that will show up alongside the transaction in the
receivers bank statement. Please see our glossary of these codes for more information.