Skip to content
  • Auto
  • Light
  • Dark
Get started
View as Markdown
Copy Markdown

Open in Claude
Open in ChatGPT

Update a linked bank account

put/v1/linked_bank_accounts/{linked_bank_account_id}

Updates an existing linked bank account's information. This can be used to update account details during onboarding or to update metadata associated with the linked account. The linked bank account must be in 'created' or 'onboarding' status.

Path ParametersExpand Collapse
linked_bank_account_id: string
Header ParametersExpand Collapse
"correlation-id": optional string
"idempotency-key": optional string
"request-id": optional string
Body ParametersExpand Collapse
bank_account: object { account_holder, account_number, routing_number }
account_holder: string

The name of the account holder as it appears on the bank account. Typically, this is the legal name of the business associated with the account.

account_number: string

The bank account number.

routing_number: string

The routing number of the bank account.

minLength9
maxLength9
metadata: optional map[string]

Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the linked bank account in a structured format.

ReturnsExpand Collapse
LinkedBankAccountV1 = object { data, meta, response_type }
data: object { id, account_id, bank_account, 8 more }
id: string

Unique identifier for the linked bank account.

formatuuid
account_id: string

The unique identifier of the Straddle account related to this bank account.

formatuuid
bank_account: object { account_holder, account_mask, institution_name, routing_number }
account_holder: string
account_mask: string
institution_name: string
routing_number: string
created_at: string

Timestamp of when the bank account object was created.

formatdate-time
purposes: array of "charges" or "payouts" or "billing"

The purposes for the linked bank account.

Accepts one of the following:
"charges"
"payouts"
"billing"
status: "created" or "onboarding" or "active" or 3 more

The current status of the linked bank account.

Accepts one of the following:
"created"
"onboarding"
"active"
"rejected"
"inactive"
"canceled"
status_detail: object { code, message, reason, source }
code: string

A machine-readable code for the specific status, useful for programmatic handling.

message: string

A human-readable message describing the current status.

reason: "unverified" or "in_review" or "pending" or 5 more

A machine-readable identifier for the specific status, useful for programmatic handling.

Accepts one of the following:
"unverified"
"in_review"
"pending"
"stuck"
"verified"
"failed_verification"
"disabled"
"new"
source: "watchtower"

Identifies the origin of the status change (e.g., watchtower). This helps in tracking the cause of status updates.

Accepts one of the following:
"watchtower"
updated_at: string

Timestamp of the most recent update to the linked bank account.

formatdate-time
description: optional string

Optional description for the bank account.

metadata: optional map[string]

Up to 20 additional user-defined key-value pairs. Useful for storing additional information about the linked bank account in a structured format.

platform_id: optional string

The unique identifier of the Straddle Platform relatd to this bank account.

formatuuid
meta: ResponseMetadata { api_request_id, api_request_timestamp }

Metadata about the API request, including an identifier and timestamp.

api_request_id: string

Unique identifier for this API request, useful for troubleshooting.

formatuuid
api_request_timestamp: string

Timestamp for this API request, useful for troubleshooting.

formatdate-time
response_type: "object" or "array" or "error" or "none"

Indicates the structure of the returned content.

  • "object" means the data field contains a single JSON object.
  • "array" means the data field contains an array of objects.
  • "error" means the data field contains an error object with details of the issue.
  • "none" means no data is returned.
Accepts one of the following:
"object"
"array"
"error"
"none"
Update a linked bank account
curl https://sandbox.straddle.com/v1/linked_bank_accounts/$LINKED_BANK_ACCOUNT_ID \
    -X PUT \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $STRADDLE_API_KEY" \
    -d '{
          "bank_account": {
            "account_holder": "account_holder",
            "account_number": "account_number",
            "routing_number": "xxxxxxxxx"
          }
        }'
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "account_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "bank_account": {
      "account_holder": "account_holder",
      "account_mask": "account_mask",
      "institution_name": "institution_name",
      "routing_number": "routing_number"
    },
    "created_at": "2019-12-27T18:11:19.117Z",
    "purposes": [
      "charges"
    ],
    "status": "created",
    "status_detail": {
      "code": "code",
      "message": "message",
      "reason": "unverified",
      "source": "watchtower"
    },
    "updated_at": "2019-12-27T18:11:19.117Z",
    "description": "description",
    "metadata": {
      "foo": "string"
    },
    "platform_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
  },
  "meta": {
    "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "api_request_timestamp": "2019-12-27T18:11:19.117Z"
  },
  "response_type": "object"
}
Returns Examples
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "account_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "bank_account": {
      "account_holder": "account_holder",
      "account_mask": "account_mask",
      "institution_name": "institution_name",
      "routing_number": "routing_number"
    },
    "created_at": "2019-12-27T18:11:19.117Z",
    "purposes": [
      "charges"
    ],
    "status": "created",
    "status_detail": {
      "code": "code",
      "message": "message",
      "reason": "unverified",
      "source": "watchtower"
    },
    "updated_at": "2019-12-27T18:11:19.117Z",
    "description": "description",
    "metadata": {
      "foo": "string"
    },
    "platform_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
  },
  "meta": {
    "api_request_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "api_request_timestamp": "2019-12-27T18:11:19.117Z"
  },
  "response_type": "object"
}