> ## Documentation Index
> Fetch the complete documentation index at: https://docs.stablestack.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Bank Account

> API reference for updating bank payout methods

Updates an existing bank payout method (either merchant-owned or customer-specific).

### Key Features:

* Supports partial updates - only include fields that need to be modified
* Include `customer_id` only when updating customer-specific bank accounts
* Returns the complete updated bank account object

### Request Parameters:

* `payout_method_id` (path, required): The ID of the bank account to update

### Request Body:

```json theme={null}
{
  "customer_id": "85b148ab-3f6b-4d55-917f-3c8de668a48e", // optional
  "account_name": "Updated Name",
  "account_number": "9876543210",
  "bank_name": "Updated Bank",
  "currency": "USD",
  "bank_code": "000007",
  "sort_code": "202525", // optional
  "swift_code": "SWIFT123", // optional
  "routing_number": "ROUT456", // optional
  "iban": "IBAN789" // optional
}
```

```
```


## OpenAPI

````yaml PUT /payout/methods/banks/{payout_method_id}
openapi: 3.0.0
info:
  title: 'StableStack: API Service'
  description: "# Overview\n\n##  Introduction\n\nStableStack offers an API first, last mile payment orchestration + liquidity router built with stablecoins. Stablecoin layer integrated into your existing payment flow, with smart accounts and blockchain abstraction. Go between digital and fiat currencies in minutes.\n\n## Getting Help\n\nWe're excited to have you build with us! If you're integrating, we will set up a communication channel. This will enable our teams to easily collaborate and ensure you launch as quickly as possible.\n\nPlease reach out to us at\_[hello@stablestack.xyz](https://mailto:hello@stablestack.xyz)\_for any questions or concerns."
  version: 1.0.0
servers:
  - url: https://api-staging.stablestack.com/api
    description: StableStack API
security: []
tags:
  - name: customers
  - name: customers > kyc
  - name: payouts
  - name: banks
  - name: transactions
  - name: wallets
  - name: assets
  - name: swap
paths:
  /payout/methods/banks/{payout_method_id}:
    put:
      tags:
        - payouts
      summary: Update bank payout method
      description: >
        Updates an existing bank payout method (either merchant-owned or
        customer-specific).

        - Include customer_id only when updating a customer-specific bank
        account

        - Omit customer_id when updating merchant-owned bank account

        - Only include fields that need to be updated (partial updates
        supported)
      parameters:
        - name: x-api-key
          in: header
          schema:
            type: string
          required: true
          example: ''
        - name: payout_method_id
          in: path
          description: ID of the bank account to update
          required: true
          schema:
            type: string
            format: uuid
          example: b6d3af87-e67f-42a2-b24a-d33f220a0d37
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  enum:
                    - BANK
                  default: BANK
                  description: Must be 'BANK' for this endpoint
                customer_id:
                  type: string
                  nullable: true
                  description: Required only when updating customer-specific bank account
                  example: 85b148ab-3f6b-4d55-917f-3c8de668a48e
                account_name:
                  type: string
                  example: Updated Name
                account_number:
                  type: string
                  example: '9876543210'
                bank_name:
                  type: string
                  example: Updated Bank
                currency:
                  type: string
                  enum:
                    - NGN
                    - ZAR
                  example: NGN
                bank_code:
                  type: string
                  example: '000007'
                sort_code:
                  type: string
                  example: '202525'
                swift_code:
                  type: string
                  example: SWIFT123
                routing_number:
                  type: string
                  example: ROUT456
                iban:
                  type: string
                  example: IBAN789
              required:
                - type
                - account_name
                - account_number
                - bank_name
                - currency
                - bank_code
      responses:
        '200':
          description: Bank account updated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: success
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        example: b6d3af87-e67f-42a2-b24a-d33f220a0d37
                      type:
                        type: string
                        example: BANK
                      currency:
                        type: string
                        example: USD
                      account_name:
                        type: string
                        example: Updated Name
                      account_number:
                        type: string
                        example: '9876543210'
                      bank_name:
                        type: string
                        example: Updated Bank
                      bank_code:
                        type: string
                        example: '000007'
                      sort_code:
                        type: string
                        nullable: true
                        example: '202525'
                      swift_code:
                        type: string
                        nullable: true
                        example: SWIFT123
                      routing_number:
                        type: string
                        nullable: true
                        example: ROUT456
                      iban:
                        type: string
                        nullable: true
                        example: IBAN789
                      created_at:
                        type: string
                        format: date-time
                        example: '2025-05-12T15:30:56.623Z'
                      updated_at:
                        type: string
                        format: date-time
                        example: '2025-05-20T10:15:45.123Z'
                      customer_id:
                        type: string
                        nullable: true
                        example: 85b148ab-3f6b-4d55-917f-3c8de668a48e
                  message:
                    type: string
                    example: Bank account updated successfully
              examples:
                customerBank:
                  value:
                    status: success
                    data:
                      id: b6d3af87-e67f-42a2-b24a-d33f220a0d37
                      type: BANK
                      currency: USD
                      account_name: Updated Name
                      account_number: '9876543210'
                      bank_name: Updated Bank
                      bank_code: '000007'
                      sort_code: '202525'
                      swift_code: SWIFT123
                      routing_number: ROUT456
                      iban: IBAN789
                      created_at: '2025-05-12T15:30:56.623Z'
                      updated_at: '2025-05-20T10:15:45.123Z'
                      customer_id: 85b148ab-3f6b-4d55-917f-3c8de668a48e
                    message: Bank account updated successfully
                merchantBank:
                  value:
                    status: success
                    data:
                      id: a1b2c3d4-e67f-42a2-b24a-d33f220a0d37
                      type: BANK
                      currency: USD
                      account_name: Updated Merchant Name
                      account_number: '9876543210'
                      bank_name: Updated Bank
                      bank_code: '000007'
                      sort_code: '202525'
                      swift_code: SWIFT123
                      routing_number: ROUT456
                      iban: IBAN789
                      created_at: '2025-05-12T15:30:56.623Z'
                      updated_at: '2025-05-20T10:15:45.123Z'
                      customer_id: null
                    message: Bank account updated successfully
        '400':
          description: Validation error
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: failed
                  message:
                    type: string
                    example: Validation error
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                          example: field
                        value:
                          type: string
                          example: ''
                        msg:
                          type: string
                          example: Invalid bank account ID
                        path:
                          type: string
                          example: bank_id
                        location:
                          type: string
                          example: params
        '404':
          description: Bank account not found
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    type: string
                    example: failed
                  message:
                    type: string
                    example: Bank account not found

````