Update Autopay

Use the Update Autopay API endpoint to change a scheduled autopay, or to cancel it, on a customer's line of credit account.

📘

Early Access

Credit API endpoints are currently being finalised as part of ongoing product development. While we do not anticipate significant changes, some interfaces, behaviours, and documentation may be refined before general availability.

The Update Autopay endpoint enables you to change the payment amount option or applied date of a scheduled autopay, or to cancel it, on a customer's line of credit account. Use this endpoint when a customer wants to adjust an autopay they've already set up, or to stop a future payment. To create a new autopay instead, use the Create Autopay endpoint.

📘

More Information

For more information about the Accounts endpoints, see: Credit Accounts.

Prerequisites

To integrate calls to the Update Autopay endpoint, you need:

  • The account_id of the line of credit account. This is the Thredd Account ID, returned when a credit application is approved.
  • The bank_account_id of the bank account the autopay was scheduled against.
  • The autopayId of the autopay to update. Retrieve this using the Get Autopays endpoint.
  • The field or fields you want to change. All request fields are optional — include only what you want to update.

Example Request

Update an autopay by making a PUT request to the Update Autopay endpoint.

PUT {{baseUrl}}/api/v1/credit/accounts/{account_id}/bank-accounts/{bank_account_id}/payment/autopay/{autopay_id}

Path Parameters

ParameterDescription
account_idstring. Required. The unique identifier of the line of credit account.
bank_account_idstring. Required. The unique identifier of the bank account the autopay uses.
autopay_idstring. Required. The unique identifier of the autopay to update.

Example Payload

{
  "paymentAmountOption": "minimum_payment | statement_balance | current_balance | past_due | other_amount",
  "applyDate": "YYYY-MM-DD",
  "status": "scheduled | completed | failed | cancelled | unknown"
}
{
  "applyDate": "2025-03-01"
}
{
  "status": "cancelled"
}

Request Fields

AttributeDescription
paymentAmountOptionstring. Optional. Which amount the autopay collects. Possible values: minimum_payment, statement_balance, current_balance, past_due, other_amount.
applyDatestring. Optional. The date on which the payment applies to the account, in YYYY-MM-DD format.
statusstring. Optional. The status of the autopay. Send cancelled to cancel the autopay. Possible values: scheduled, completed, failed, cancelled, unknown.
📘

Note

To cancel an autopay before it runs, send "status": "cancelled" and no other fields.

Example Response

A successful request returns a 200 HTTP status code with the updated set of autopays live on the account.

{
  "accountId": "acc_123456",
  "autopays": [
    {
      "autopayId": "ap_789012",
      "status": "scheduled",
      "paymentAmountOption": "statement_balance",
      "amount": null,
      "paymentDate": "2025-03-01",
      "frequency": "monthly"
    }
  ]
}
{
  "detail": "Account mapping not found."
}
{
  "detail": "Bank Account mapping not found."
}
{
  "detail": [
    {
      "loc": ["body", "status"],
      "msg": "Input should be 'scheduled', 'completed', 'failed', 'cancelled' or 'unknown'",
      "type": "enum"
    }
  ]
}

Response Fields

The response follows the same Autopay Response Object and Autopay Object shape as the Get Autopays endpoint — see that page for the full field reference.

Error Messages

If there is a problem with the request, the response returns one of the following errors:

  • 404 — The account_id, bank_account_id, or autopay_id provided does not match an existing account, bank account, or autopay.
  • 422 — A field value is invalid, for example an unrecognized status or paymentAmountOption value, or an incorrectly formatted applyDate. The response includes details of the validation failure.

Did this page help you?