Skip to main content

Update a Pull Account

Changes a pull account. Only the fields sent change; an omitted or empty field is left as it is.

  • name and bank_name change freely.
  • A change to any bank detail — holder_name, holder_type, routing_number, account_number, account_type — is a different account to debit: it needs the holder's authorization again, and is refused while a pull from the account is still open.
  • Sending a new authorization alone turns a disabled account back to active: that is how a holder authorizes again after a return.

New in v3: v2 has no equivalent.

An account-scoped key changes only its own account's pull accounts; another account's reads as 404. A workspace-scoped key changes any pull account of the workspace.

Authorization:

Every request is signed with your API key: a short-lived JWT, signed with your private key, sent in one header on /v3/* and /api/v2/* alike.

Headers:
Authorization: APIKey {SIGNED_JWT}

How to build and sign the JWT: Authentication.

Endpoint

PATCH

/v3/banking/pull-accounts/{pull_account_id}

Path parameters​

ParameterTypeDescription
pull_account_idstring (bpa_…)Required. The pull account.

Request Body Sample​

{
"account_number": "000987654321",
"authorization": {
"accepted": true,
"version": "2026-10-20.v2"
}
}

Request Body Schema​

FieldTypeDescription
name, bank_namestringUp to 100 characters.
holder_name, holder_type, routing_number, account_number, account_typestringAs in Create a Pull Account.
authorizationobject{ "accepted": true, "version": "…" } with the current authorization text's version. Required with any bank detail.

Response Schema​

The updated pull account, with the fields of a Create a Pull Account response.

Errors​

StatusmessageWhen
400failed to parse requestThe body is not valid JSON, a type is not one of the listed values, or pull_account_id is not a bpa_… id.
400invalid_routing_number / invalid_account_number / invalid_holder_nameAs in Create a Pull Account.
401unauthorizedMissing or invalid signature.
403account_frozenThe account is frozen or blocked.
404pull_account_not_foundNo such pull account, or it belongs to another account.
409ach_authorization_outdatedauthorization.version is not the current text.
409pull_account_in_useA bank detail changed while a pull from the account is still open.
422ach_authorization_requiredA bank detail changed without authorization.accepted: true.
422Validation failedA text field is too long; details names it.

Support and Resources​

If you need assistance or have any questions, our support team is here to help. You can contact our support team at support@blockwyre.com.

Stay Updated​

Stay up-to-date with the latest news, updates, and features from BlockWyre by following us on social media:

We are excited to have you on board and look forward to seeing how you leverage BlockWyre's powerful tools to enhance your financial operations. Happy integrating!