# Create Counterparty

This endpoint is used to create a new counterparty for a customer. You can create different types of counterparties,
including `ach`, `on-us`, `wire`, and `international_wire`, by providing the relevant details in the request body.
**Note:** The `account_number` field for creating an `on-us` counterparty represents the Jiko network address of the pocket.
**Note:** The optional `display_name` field lets you assign a custom, human-friendly name to a counterparty — useful for
distinguishing multiple counterparties that belong to the same legal entity. When set, it is returned on the counterparty
and can be shown in place of the counterparty's default name.
**Note:** The optional `id` field lets you choose the counterparty's UUID instead of having Jiko generate one. Supplying it
means you know the counterparty's ID before the call completes, which is useful when the create is subject to an approval
workflow — the `Location` header of the `202` response points at that same ID, so you can correlate the approval with the
counterparty it produces. It also makes a retry safe: re-sending an `id` that already exists is rejected with `409`
(`CounterpartyAlreadyExistsError`) rather than creating a duplicate. Omit the field and Jiko assigns the ID.
The request body must conform to one of the request schemas. On success, it returns the newly created counterparty object.

Endpoint: POST /api/v2/counterparties/
Version: Version: cf52545e
Security: CodeBearer

## Request fields (application/json):

  - `routing_number` (string, required)

  - `identifier` (string, required)
    Bank Account Number or IBAN Number

  - `identifier_code` (any)
    [DEPRECATED] This field is ignored. The identifier code is always set to WireCounterpartyIdentifierCode_DDA_D (Demand Deposit Account).

  - `address` (object, required)

  - `address.street_address` (string, required)
    Street address

  - `address.street_address2` (any)
    Apartment, Suite, Box number, etc.

  - `address.city` (string, required)
    City / Town

  - `address.postal_code` (string, required)
    Postal code / ZIP code

  - `address.state` (string, required)
    State (Postal Abbreviations. Example: "AL", "NJ", "OH")

  - `address.country` (string, required)
    A ISO-3166 Alpha-2 country code (Abbreviated. Example: "US")

  - `wire_instructions` (any)
    Any additional wire instructions required for the wire to be processed correctly.

  - `counterparty_name` (any, required)

  - `counterparty_name.first_name` (string, required)

  - `counterparty_name.last_name` (string, required)

  - `counterparty_name.type` (string, required)

  - `counterparty_name.business_name` (string, required)
    The name of the business counterparty.

  - `verification` (any, required)

  - `verification.type` (string, required)

  - `verification.document_ids` (array, required)

  - `verification.wire_id` (string, required)

  - `verification.verification_method` (string, required)
    Underlying verification method
    Enum: "PLAID", "MICRO_DEPOSIT"

  - `type` (string, required)

  - `ownership_type` (any)
    Relationship of the counterparty to the account holder. FIRST_PARTY means the counterparty is owned by the account holder, THIRD_PARTY means it is owned by a different entity.

  - `display_name` (any)
    An optional custom display name for the counterparty, useful for distinguishing multiple counterparties that share the same legal name.

  - `id` (any)
    An optional client-chosen UUID to assign as the counterparty's `id`. Supply one to know the counterparty's ID before it is created — useful for correlating a create that goes through an approval flow, or for making a retry safe. Omit it and Jiko generates the ID. Reusing an ID that already exists is rejected with `409`.

  - `account_number` (string, required)

  - `account_type` (string, required)
    Account type
    Enum: "CHECKING", "SAVINGS"

  - `account_number` (string, required)
    Represents the Jiko network address of the pocket.

  - `identifier_type` (string)
    Enum: "iban", "local"

  - `swift_bic` (string, required)

  - `id` (string, required)

  - `chain` (string, required)
    `ETH` is supported at this time.

  - `wallet_address` (string, required)

## Response 422 fields (application/json):

  - `detail` (array)

  - `detail.loc` (array, required)

  - `detail.msg` (string, required)

  - `detail.type` (string, required)

  - `detail.input` (any)

  - `detail.ctx` (object)

