---
title: "Creates a new payout method for a sub account"
method: POST
path: "/accounts/{id}/payout-methods"
tags: ["Payout Methods"]
---

# Creates a new payout method for a sub account

`POST /accounts/{id}/payout-methods`

This is for creating payout methods for one of your sub accounts, so they can receive payouts. You can only create 1 payout method per currency

## Path parameters

- `id` string, required

## Request body

- object — The request body for creating a payout method
  - `type` 'BankAccount'
  - `displayName` string, nullable — A friendly name for the payout method, for display only
  - `currency` string — The three-character ISO 4217 currency code of the payout method. The currencies available here are the same as are available for making payments.
  - `country` string — The two-character ISO 3166 country code of the payout method. Only certain countries are supported for a given currency
  - `bankAccount` BankAccountRequest
    - `bankIdType` 'RoutingNumber' | 'SortCode' | 'BSBCode' | 'BankCode', nullable
    - `bankId` string, nullable — The id of the bank that the bank account is with, e.g. sort code / routing number / bank code (see `bankIdType` for options)
    - `branchIdType` 'TransitNumber', nullable — The types of branch ID for bank accounts.
    - `branchId` string, nullable — The id of the branch that the bank account is with, see BranchIdType for types. Validation requirements may vary by country and BranchIdType.
    - `swiftCode` string, nullable — The Swift code / BIC of the bank. This is required for bank accounts paying out via Swift to certain countries, please check our examples below + our [docs](https://developer.ryftpay.com/documentation/overview/core_concepts/payouts) for more information.
    - `accountNumberType` 'Iban' | 'UnitedKingdom' | 'Domestic'
    - `accountNumber` string — The account number of the bank account This is the account number or IBAN of the bank account, depending on the currency + country of the payout method
    - `address` object, nullable — The address of the bank account holder If not provided for `Business` entities, the address of the `business` will be used If not provided for `Individual` entities, the address of the `individual` will be used
      - `lineOne` string — First line of the address. It must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
      - `lineTwo` string, nullable — Second line of the address. It must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
      - `city` string — The address city/town It must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
      - `country` string — The two-character ISO country code
      - `postalCode` string — The postal/zip code of the address. It must satisfy the following regex pattern: ^[A-Za-z0-9 -]*$
      - `region` string, nullable — The state/county/province/region Required if the address is in the US/Canada and must be a 2-character ISO state/province code Otherwise it must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$

## Response `200`

The payout method was created successfully

- PayoutMethod
  - `id` string — The id of the payout method
  - `type` 'BankAccount'
  - `displayName` string, nullable — A friendly name for the payout method, for display only
  - `status` 'Invalid' | 'Valid'
  - `invalidReason` string, nullable — The reason why the payout method has been marked as 'Invalid'
  - `currency` string — The three-character ISO 4217 currency code of the payout method
  - `countryCode` string — The two-character ISO 3166 country code of the payout method
  - `bankAccount` BankAccount
    - `bankIdType` 'RoutingNumber' | 'SwiftCode' | 'SortCode' | 'BSBCode' | 'BankCode', nullable
    - `bankId` string, nullable — The id of the bank that the bank account is with, e.g. sort code / routing number (see `bankIdType`)
    - `branchIdType` 'TransitNumber', nullable — The types of branch ID for bank accounts.
    - `branchId` string, nullable — The id of the branch that the bank account is with, see BranchIdType for types.
    - `bankName` string, nullable — The name of the bank that the bank account is with
    - `swiftCode` string, nullable — The Swift code / BIC of the bank
    - `accountNumberType` 'Iban' | 'UnitedKingdom' | 'Domestic'
    - `last4` string — The last 4 digits of the account number for the bank account. This is the account number or IBAN of the bank account, depending on the currency + country of the payout method
    - `address` object, nullable — The address of the bank account holder
      - `lineOne` string, nullable — First line of the address. It must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
      - `lineTwo` string, nullable — Second line of the address. It must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
      - `city` string, nullable — The address city/town It must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
      - `country` string — The two-character ISO country code
      - `postalCode` string, nullable — The postal/zip code of the address. It must satisfy the following regex pattern: ^[A-Za-z0-9 -]*$
      - `region` string, nullable — The state/county/province/region Required if the address is in the US/Canada and must be a 2-character ISO state/province code Otherwise it must satisfy the following regex pattern: ^[A-Za-z0-9 !&'()+,-./:;]*$
  - `createdTimestamp` integer — The epoch timestamp (seconds) when the payout method was created
  - `lastUpdatedTimestamp` integer — The epoch timestamp (seconds) when the payout method was last updated

## Other responses

- `400` — One or more inputs are invalid
- `409` — This operation has already been performed
- `500` — An unexpected error occurred when executing this request

---

[API](https://skmtc.net/ryftpay/apis/ryft-payment-api.md) · [All operations](https://skmtc.net/ryftpay/apis/ryft-payment-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ryftpay/ryft-payment-api/versions/a042f64d4305/schema)
