---
title: "Create Settlement Account"
method: POST
path: "/v3/settlement-account"
tags: ["Settlement Accounts"]
---

# Create Settlement Account

`POST /v3/settlement-account`

Creates a settlement account for the organization. A settlement account is the destination where settled funds are paid out.

Use the `currencyType` field to select the type of account to create:

- `currencyType: fiat` — creates a fiat settlement account. Requires `currency`, `paymentType`, and `paymentCode`. The fields to pass inside `accountDetails` depend on the selected payment method: call `GET /v3/config/payment-methods?direction=withdraw&userType=business&currency=<currency>` and pass every field listed under the payment method's `additionalDetails` inside `accountDetails`.
- `currencyType: crypto` — creates a crypto settlement account. Requires `walletAddress` plus the currency identification: either `cryptoTicker`, or both `cryptoCurrency` and `cryptoNetwork`.

The first settlement account created for a given type is marked as the default. If a matching settlement account already exists, the existing account is returned instead of creating a duplicate.

## Headers

- `MID` string, required

## Request body

- union
  - object
    - `currencyType` 'fiat', required — Selects a fiat settlement account.
    - `accountAlias` string — Optional friendly name for the settlement account.
    - `currency` string, required — ISO 4217 currency code (exactly 3 characters).
    - `paymentType` 'bank_transfer' | 'card' | 'local_wallet', required — Payment rail of the settlement account.
    - `paymentCode` string, required — Payment method code. Obtain it from `GET /v3/config/payment-methods?direction=withdraw&userType=business&currency=<currency>`.
    - `accountDetails` object — Bank / wallet details for the fiat settlement account. The required fields depend on the selected payment method — pass every field listed under the payment method's `additionalDetails` (from `GET /v3/config/payment-methods?direction=withdraw&userType=business&currency=<currency>`).
  - object
    - `currencyType` 'crypto', required — Selects a crypto settlement account.
    - `accountAlias` string — Optional friendly name for the settlement account.
    - `walletAddress` string, required — Destination crypto wallet address.
    - `cryptoTicker` string — Crypto ticker identifying the currency and network (e.g. `USDCSOL`). Provide either `cryptoTicker`, or both `cryptoCurrency` and `cryptoNetwork`.
    - `cryptoCurrency` string — Crypto currency symbol. Required when `cryptoTicker` is not provided.
    - `cryptoNetwork` string — Crypto network. Required when `cryptoTicker` is not provided.

## Response `200`

Settlement account created successfully (or already exists)

- object
  - `status` string
  - `message` string
  - `data` object
    - `settlementAccountId` string
    - `type` 'fiat' | 'crypto'
    - `accountAlias` string
    - `currency` string
    - `paymentType` string
    - `paymentCode` string
    - `accountDetails` object
    - `cryptoTicker` string
    - `cryptoNetwork` string
    - `cryptoCurrency` string
    - `walletAddress` string
    - `orgType` string

## Other responses

- `400` — Validation error
- `500` — Internal server error

---

[API](https://skmtc.net/transfi/apis/transfi-single-integrated-api.md) · [All operations](https://skmtc.net/transfi/apis/transfi-single-integrated-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/transfi/transfi-single-integrated-api/revisions/adb1b62e58cf/schema)
