Retries the payment's latest attempted money movement. Normally, this retries a failed payment to its original recipient. Retrying a failed employee or contractor disbursement requires an active bank_account owned by that recipient. For a payment with status refund_failed and a failed employer refund attempt, this retries the employer refund by ACH and requires an active bank_account owned by the employer that differs from the account used by the failed refund. If no employer refund attempt was created, start the refund again instead. Refunds for payrolls funded by a payroll advance cannot be retried.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Setting the payment_type parameter to wire, instant, or ach indicates how the failed payment will be retried. Note that only debit payments can be retried using wires. The wire details for this retry attempt are provided in the wire_details object in the first (most recent) payment attempt after the /retry endpoint is called.
Setting the bank_account parameter indicates the failed payment will be retried using a new bank account. Both credits and debits may be retried using a new bank account.
Retry limits: A debit can be attempted by ACH at most three times in total. The original debit counts as the first attempt, and any automatic redebits Check sends count toward the limit along with retries you request, including retries to a different bank account. Once a debit has used all three ACH attempts, an ACH retry returns a 400 error and the debit can only be retried by wire. Wire retries have no limit.
Deprecation Notice: The use_wire parameter has been deprecated in favor of the payment_type field.
If use_wire is provided:
- When
true, it is treated as ifpayment_type="wire" was set. - If
payment_typeis also provided,payment_typetakes precedence, anduse_wireis ignored.
Please update your integrations accordingly.
Note that the can_retry field on the Payment object communicates whether a payment can be retried. We recommend relying on this field to determine whether a retry is possible. A debit that has reached the ACH limit can still show can_retry as true, because a wire retry remains available.
Retrying a failed refund
When Check sends an employer refund for an employee or contractor payment and that refund fails, the payment moves to refund_failed and can_refund is set to false. can_retry is true when the refund meets the requirements below. Retry the refund with this endpoint, not with Refund a payment, which rejects it.
A refund retry has these requirements:
bank_accountis required. The account must be active, belong to the employer, and differ from the account used by the failed refund.- Refunds are retried by ACH only. Setting
payment_typetowireorinstant, oruse_wiretotrue, is rejected. - The payroll must be funded and the company must be in good standing.
- Refunds for payrolls funded by a payroll advance cannot be retried.
A successful retry sends the refund to the new bank account and moves the payment back to refund_processing. The failed refund attempt stays in payment_attempts with status failed.
When a refund retry does not meet these requirements, the endpoint returns a 400 with type payment_ineligible_for_retry, and message gives the reason:
{
"error": {
"type": "payment_ineligible_for_retry",
"message": "bank_account is required when retrying a failed refund"
}
}
