---
title: "Create a counterparty"
method: POST
path: "/counterparties"
tags: ["Counterparties"]
---

# Create a counterparty

`POST /counterparties`

The response reveals the account numbers the caller just submitted.

## Request body

- object
  - `name` string, required
  - `email` string, email
  - `rail` union
    - object
      - `type` 'bank', required
      - `bankName` string, required
      - `routingNumber` string, required
      - `accountNumber` string, required
      - `accountType` 'checking' | 'savings'
      - `address` string
      - `addressStreet` string, required
      - `addressCity` string, required
      - `addressState` string, required
      - `addressPostalCode` string, required
      - `addressCountry` string
    - object
      - `type` 'wallet', required
      - `walletAddress` string, required
      - `network` 'base' | 'base-sepolia' | 'arc' | 'solana', required
  - `rails` unknown[]
    - unknown

## Response `201`

Counterparty created

- object
  - `counterparty` object, required
    - `id` string, required
    - `name` string, required
    - `email` string
    - `createdAt` string, date-time, required
    - `rails` union[], required
      - union
        - object
          - `id` string, required
          - `counterpartyId` string, required
          - `createdAt` string, date-time, required
          - `source` 'platform' | 'counterparty', required
          - `type` 'bank', required
          - `bankName` string, required
          - `routingNumber` string, required
          - `accountNumber` string, required
          - `accountType` 'checking' | 'savings'
          - `address` string
          - `addressStreet` string
          - `addressCity` string
          - `addressState` string
          - `addressPostalCode` string
          - `addressCountry` string
          - `providerExternalAccountId` string
        - object
          - `id` string, required
          - `counterpartyId` string, required
          - `createdAt` string, date-time, required
          - `source` 'platform' | 'counterparty', required
          - `type` 'wallet', required
          - `walletAddress` string, required
          - `network` 'base' | 'base-sepolia' | 'arc' | 'solana', required
    - `status` 'ready' | 'awaiting_details', required
    - `invite` object
      - `state` 'outstanding' | 'expired', required
      - `expiresAt` string, required
      - `methods` object, required
        - `bank` boolean, required
        - `wallet` boolean, required

---

[API](https://skmtc.dev/catena/apis/catena-api.md) · [All operations](https://skmtc.dev/catena/apis/catena-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/catena/catena-api/revisions/f0a9c99d458d/schema)
