> ## 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.

# Add Bank Account

> API reference for adding bank payout methods

Adds a new bank payout method (either merchant-owned or customer-specific).

* Include `customer_id` to create for a specific customer
* Omit `customer_id` to create merchant-owned bank account

### Request Body:

```json theme={null}
{
  "customer_id": "85b148ab-3f6b-4d55-917f-3c8de668a48e", // optional
  "account_name": "John Doe",
  "account_number": "1234567890",
  "bank_name": "Test Bank",
  "currency": "NGN",
  "bank_code": "000006",
  "sort_code": "202524", // For GBP
  "swift_code": "", // For international transfers
  "routing_number": "", // For USD
  "iban": "" // For international accounts
}
```

```
```


## OpenAPI

````yaml POST /payout/methods/banks
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:
    post:
      tags:
        - payouts
      summary: Add bank payout method
      description: >
        Adds a new bank payout method (either merchant-owned or
        customer-specific).

        - Include customer_id to create for a specific customer

        - Omit customer_id to create merchant-owned bank account
      parameters:
        - name: x-api-key
          in: header
          schema:
            type: string
          required: true
          example: ''
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - type
                - account_name
                - account_number
                - bank_name
                - bank_code
                - currency
              properties:
                type:
                  type: string
                  enum:
                    - BANK
                  default: BANK
                  description: Must be 'BANK' for this endpoint
                customer_id:
                  type: string
                  nullable: true
                  description: Required only for customer-specific payout methods
                  example: 85b148ab-3f6b-4d55-917f-3c8de668a48e
                account_name:
                  type: string
                  example: John Doe
                account_number:
                  type: string
                  example: '1234567890'
                bank_name:
                  type: string
                  example: Test Bank
                currency:
                  type: string
                  enum:
                    - NGN
                    - ZAR
                  example: NGN
                bank_code:
                  type: string
                  example: '000006'
                sort_code:
                  type: string
                  example: '202524'
                swift_code:
                  type: string
                  example: ''
                routing_number:
                  type: string
                  example: ''
                iban:
                  type: string
                  example: ''
      responses:
        '201':
          description: Bank account added 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: NGN
                      account_name:
                        type: string
                        example: John Doe
                      account_number:
                        type: string
                        example: '1234567890'
                      bank_name:
                        type: string
                        example: Test Bank
                      bank_code:
                        type: string
                        example: '000006'
                      sort_code:
                        type: string
                        nullable: true
                        example: null
                      swift_code:
                        type: string
                        nullable: true
                        example: null
                      routing_number:
                        type: string
                        nullable: true
                        example: null
                      iban:
                        type: string
                        nullable: true
                        example: null
                      created_at:
                        type: string
                        format: date-time
                        example: '2025-05-12T15:30:56.623Z'
                      updated_at:
                        type: string
                        format: date-time
                        example: '2025-05-12T15:30:56.623Z'
                      customer_id:
                        type: string
                        nullable: true
                        example: 85b148ab-3f6b-4d55-917f-3c8de668a48e
                  message:
                    type: string
                    example: Payout method added successfully
              examples:
                merchantBank:
                  value:
                    status: success
                    data:
                      id: a1b2c3d4-e67f-42a2-b24a-d33f220a0d37
                      type: BANK
                      currency: NGN
                      account_name: John Doe
                      account_number: '1234567890'
                      bank_name: Test Bank
                      bank_code: '000006'
                      sort_code: null
                      swift_code: null
                      routing_number: null
                      iban: null
                      created_at: '2025-05-12T15:30:56.623Z'
                      updated_at: '2025-05-12T15:30:56.623Z'
                      customer_id: null
                    message: Merchant payout method added successfully!
                customerBank:
                  value:
                    status: success
                    data:
                      id: b6d3af87-e67f-42a2-b24a-d33f220a0d37
                      type: BANK
                      currency: NGN
                      account_name: John Doe
                      account_number: '1234567890'
                      bank_name: Test Bank
                      bank_code: '000006'
                      sort_code: null
                      swift_code: null
                      routing_number: null
                      iban: null
                      created_at: '2025-05-12T15:30:56.623Z'
                      updated_at: '2025-05-12T15:30:56.623Z'
                      customer_id: 85b148ab-3f6b-4d55-917f-3c8de668a48e
                    message: Customer payout method added 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: Account number is required
                        path:
                          type: string
                          example: account_number
                        location:
                          type: string
                          example: body

````