---
title: "Create Internal Account"
method: POST
path: "/internal_accounts"
---

# Create Internal Account

`POST /internal_accounts`

This endpoint enables you to create a new internal account, which can represent a bank account or a wallet. Internal Accounts can be used to originate payment orders and receive inbound payments. Please note that if you are bringing your own bank, this endpoint may not be supported for your bank.

## Request body

- object
  - `connection_id` string — The UUID of the `Connection` this account should be associated with. If you only have 1 connection, you do not need to supply this field.
  - `name` string — The name of the account. Only required for bring your own bank integrations.
  - `currency` string, required — Follow ISO 4217 currency codes
  - `metadata` string, json — Set of key-value pairs that will be attached to the object and can be used to store additional data.
  - `external_id` string — An optional user-defined 180 character unique identifier
  - `party_address` object — The address associated with the owner or null.
    - `line1` string, required
    - `line2` string
    - `locality` string, required — Locality or City. Use the full city name rather than an abbreviation (e.g. San Francisco).
    - `region` string, required — Region or State. This field is free-form; for US states, we recommend a two-letter code (e.g. CA). Full state names are also accepted.
    - `postal_code` string, required — The postal code of the address.
    - `country` string, required — Country code conforms to [ISO 3166-1 alpha-2]
  - `legal_entity_id` string, required — The Legal Entity associated to this account. Not required for bring your own bank integrations.
  - `debitable` boolean, nullable — Whether this account can receive ACH debits. Defaults to `false` and is only configurable on creation. Please reach out to your customer success manager if you are interested in activating this functionality.

## Response `201`

201

- object
  - `id` string
  - `object` string
  - `live_mode` boolean
  - `account_type` unknown
  - `party_name` string
  - `party_type` unknown
  - `party_address` object
    - `id` string
    - `object` string
    - `live_mode` boolean
    - `line1` string
    - `line2` string
    - `locality` string
    - `region` string
    - `postal_code` string
    - `country` string
    - `created_at` string
    - `updated_at` string
  - `account_details` object[]
    - `id` string
    - `object` string
    - `live_mode` boolean
    - `account_number_safe` string
    - `account_number_type` string
    - `discarded_at` unknown
    - `created_at` string
    - `updated_at` string
  - `routing_details` object[]
    - `id` string
    - `object` string
    - `live_mode` boolean
    - `payment_type` unknown
    - `routing_number` string
    - `routing_number_type` string
    - `bank_name` string
    - `bank_address` object
      - `id` string
      - `object` string
      - `live_mode` boolean
      - `line1` string
      - `line2` unknown
      - `locality` string
      - `region` string
      - `postal_code` string
      - `country` string
      - `created_at` string
      - `updated_at` string
    - `discarded_at` unknown
    - `created_at` string
    - `updated_at` string
  - `name` string
  - `metadata` object
  - `connection` object
    - `id` string
    - `object` string
    - `live_mode` boolean
    - `vendor_id` string
    - `vendor_name` string
    - `vendor_customer_id` unknown
    - `discarded_at` unknown
    - `created_at` string
    - `updated_at` string
  - `currency` string
  - `parent_account_id` string
  - `counterparty_id` string
  - `created_at` string
  - `updated_at` string
  - `external_id` string, nullable
  - `debitable` boolean, nullable

---

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