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, manual, or instant

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
retry

Field 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.