> ## Documentation Index
> Fetch the complete documentation index at: https://developers.circle.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a wire bank account



## OpenAPI

````yaml openapi/account.yaml post /v1/businessAccount/banks/wires
openapi: 3.0.2
info:
  version: ${version}
  title: Core Functionality
  description: >
    All of Circle's APIs share a common set of core functionality that lets you
    manage your Circle Account in a programmatic way.


    With a Circle Account your business can deposit traditional money from 80+
    countries and seamlessly convert them into "digital currency dollars": USDC.
    You can then use USDC for everyday payments and treasury flows.
servers:
  - url: https://api-sandbox.circle.com
  - url: https://api.circle.com
security: []
tags:
  - name: Balances
    description: Get information on settled and unsettled balances.
  - name: Payouts
    description: Create and get information on 1st party payouts.
  - name: Wires
    description: >-
      Create, get instructions, and get information on 1st party bank accounts
      for wire transfers.
  - name: CUBIX
    description: Create and get information on CUBIX accounts.
  - name: PIX
    description: Create and get information on PIX accounts.
  - name: Transfers
    description: Create and get information on 1st party transfers.
  - name: Addresses
    description: Generate and get information on blockchain addresses.
  - name: Deposits
    description: Get information on 1st party deposits.
  - name: Payments
    description: Create, cancel, refund, and get updates on card payments.
  - name: Settlement Bank Routing
    description: View and manage settlement bank routing preferences for fiat accounts.
  - name: Reporting
    description: >-
      Retrieve transaction and balance reports, including ISO 20022 (CAMT.053)
      statements and managed-payment reports.
paths:
  /v1/businessAccount/banks/wires:
    post:
      tags:
        - Wires
      summary: Create a wire bank account
      operationId: createBusinessWireAccount
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WireCreationRequest'
      responses:
        '201':
          description: Successfully created a bank account for wire transfers.
          headers:
            X-Request-Id:
              $ref: '#/components/headers/XRequestId'
          content:
            application/json:
              schema:
                title: CreateBusinessWireAccountResponse
                properties:
                  data:
                    $ref: '#/components/schemas/Wire'
              examples:
                response:
                  value:
                    data:
                      id: b8627ae8-732b-4d25-b947-1df8f4007a29
                      type: wire
                      status: pending
                      description: WELLS FARGO BANK, NA ****0010
                      trackingRef: CIR13FB13A
                      transferTypesInfo:
                        wire:
                          currencies:
                            - USD
                            - EUR
                        rtgs:
                          currencies:
                            - USD
                      fingerprint: eb170539-9e1c-4e92-bf4f-1d09534fdca2
                      billingDetails:
                        name: Satoshi Nakamoto
                        city: Boston
                        country: US
                        line1: 100 Money Street
                        line2: Suite 1
                        district: MA
                        postalCode: '01234'
                      bankAddress:
                        bankName: SAN FRANCISCO
                        city: SAN FRANCISCO
                        country: US
                        line1: 100 Money Street
                        line2: Suite 1
                        district: CA
                      createDate: '2020-04-10T02:13:30.000Z'
                      updateDate: '2020-04-10T02:13:30.000Z'
                      virtualAccountEnabled: false
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/NotAuthorized'
      security:
        - bearerAuth: []
components:
  schemas:
    WireCreationRequest:
      type: object
      description: >-
        Request object used to create a bank account (wires). Different fields
        are required depending on the bank country, see the guide documentation
        for the list of supported bank countries along with which ones support
        IBAN.
      oneOf:
        - $ref: '#/components/schemas/WireCreationRequestUs'
        - $ref: '#/components/schemas/WireCreationRequestIban'
        - $ref: '#/components/schemas/WireCreationRequestAccountNumber'
    Wire:
      type: object
      required:
        - id
        - status
        - description
        - trackingRef
        - fingerprint
        - billingDetails
        - createDate
        - updateDate
      properties:
        id:
          $ref: '#/components/schemas/Id'
        type:
          type: string
          description: The type of the bank account.
          example: wire
        status:
          $ref: '#/components/schemas/ExternalFiatAccountStatus'
        description:
          type: string
          description: Bank name plus last four digits of the bank account number or IBAN.
          example: WELLS FARGO BANK, NA ****0010
        trackingRef:
          type: string
          description: >-
            Wire tracking ref that needs to be set in the wire reference to
            beneficiary field.
          example: CIR13FB13A
        transferTypesInfo:
          type: object
          description: >-
            A <TransferType, TransferTypeInfo> map which shows transfer types
            supported on this account as well as additional information for
            each.
          additionalProperties:
            $ref: '#/components/schemas/TransferTypeInfo'
          example:
            wire:
              currencies:
                - USD
                - EUR
            rtgs:
              currencies:
                - USD
        fingerprint:
          $ref: '#/components/schemas/Fingerprint'
        billingDetails:
          $ref: '#/components/schemas/BillingDetails'
        bankAddress:
          $ref: '#/components/schemas/BankAddress'
        createDate:
          $ref: '#/components/schemas/UtcTimestamp'
        updateDate:
          $ref: '#/components/schemas/UtcTimestamp'
        virtualAccountEnabled:
          type: boolean
          description: Whether virtual account applies to the bank account.
          example: false
    WireCreationRequestUs:
      type: object
      title: US Bank Account
      description: Relevant fields for U.S. bank accounts.
      required:
        - idempotencyKey
        - accountNumber
        - routingNumber
        - billingDetails
        - bankAddress
      properties:
        idempotencyKey:
          $ref: '#/components/schemas/IdempotencyKey'
        accountNumber:
          description: Account number that identifies the bank account.
          type: string
          example: '12340010'
          minLength: 6
          maxLength: 35
        routingNumber:
          description: >-
            ABA routing number for the bank account. Note this has to be
            specific for bank wire transfers.
          type: string
          example: '121000248'
        billingDetails:
          $ref: '#/components/schemas/BillingDetails'
        bankAddress:
          $ref: '#/components/schemas/BankAddress'
    WireCreationRequestIban:
      type: object
      title: Non US Bank Account - IBAN Supported
      description: Relevant fields for non-U.S. bank accounts that support IBAN.
      required:
        - idempotencyKey
        - iban
        - billingDetails
        - bankAddress
      properties:
        idempotencyKey:
          $ref: '#/components/schemas/IdempotencyKey'
        iban:
          description: International Bank Account Number (IBAN) for the bank account.
          type: string
          example: DE31100400480532013000
        billingDetails:
          $ref: '#/components/schemas/BillingDetails'
        bankAddress:
          $ref: '#/components/schemas/BankAddressIbanSupported'
    WireCreationRequestAccountNumber:
      type: object
      title: Non US Bank Account - IBAN Not Supported
      description: Relevant fields for non-U.S. banks that do NOT support IBAN.
      required:
        - idempotencyKey
        - accountNumber
        - routingNumber
        - billingDetails
        - bankAddress
      properties:
        idempotencyKey:
          $ref: '#/components/schemas/IdempotencyKey'
        accountNumber:
          description: Account number that identifies the bank account.
          type: string
          example: 321800123
          minLength: 6
          maxLength: 35
        routingNumber:
          description: The bank's SWIFT / BIC code.
          type: string
          example: SBININBB354
        billingDetails:
          $ref: '#/components/schemas/BillingDetails'
        bankAddress:
          $ref: '#/components/schemas/BankAddressNonIban'
    Id:
      type: string
      description: Unique system generated identifier for the entity.
      format: uuid
      example: b8627ae8-732b-4d25-b947-1df8f4007a29
    ExternalFiatAccountStatus:
      description: >-
        Status of the account. A `pending` status indicates that the linking is
        in-progress; `complete` indicates the account was linked successfully;
        `failed` indicates it failed.
      type: string
      enum:
        - pending
        - complete
        - failed
    TransferTypeInfo:
      type: object
      required:
        - currencies
      description: Additional information for specific transfer type.
      properties:
        currencies:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/FiatCurrency'
        additionalProperties:
          description: Additional properties that apply to specific transfer type.
          type: object
          properties:
            transactionLimits:
              type: integer
              description: Transaction amount limit for the transfer type.
              example: 100000
    Fingerprint:
      type: string
      description: >-
        A UUID that uniquely identifies the account number. If the same account
        is used more than once, each card object will have a different id, but
        the fingerprint will stay the same.
      example: eb170539-9e1c-4e92-bf4f-1d09534fdca2
    BillingDetails:
      type: object
      required:
        - name
        - city
        - country
        - line1
        - postalCode
      properties:
        name:
          type: string
          description: Full name of the card or bank account holder.
          maxLength: 1024
          example: Satoshi Nakamoto
        city:
          type: string
          description: City portion of the address.
          maxLength: 1024
          example: Boston
        country:
          type: string
          description: >-
            Country portion of the address. Formatted as a two-letter country
            code specified in ISO 3166-1 alpha-2.
          maxLength: 2
          example: US
        line1:
          type: string
          description: Line one of the street address.
          maxLength: 1024
          example: 100 Money Street
        line2:
          type: string
          description: Line two of the street address.
          maxLength: 1024
          example: Suite 1
        district:
          description: >-
            State / County / Province / Region portion of the address. If the
            country is US or Canada, then district is required and should use
            the two-letter code for the subdivision.
          type: string
          maxLength: 16
          example: MA
        postalCode:
          type: string
          description: Postal / ZIP code of the address.
          maxLength: 16
          example: '01234'
    BankAddress:
      type: object
      description: >-
        The address details for the bank, as provided during bank account
        creation.
      required:
        - country
      properties:
        bankName:
          type: string
          description: >-
            Name of the bank. This property is required for bank accounts
            outside of the US that do not support IBAN'
          maxLength: 35
          example: SAN FRANCISCO
        city:
          type: string
          description: >-
            City portion of the address. This property is required for bank
            accounts outside of the US.
          maxLength: 35
          example: SAN FRANCISCO
        country:
          type: string
          description: >-
            Country portion of the address. Formatted as a two-letter country
            code specified in ISO 3166-1 alpha-2.
          maxLength: 2
          example: US
        line1:
          type: string
          description: Line one of the street address.
          maxLength: 35
          example: 100 Money Street
        line2:
          type: string
          description: Line two of the street address.
          maxLength: 35
          example: Suite 1
        district:
          type: string
          description: >-
            State / County / Province / Region portion of the address. US and
            Canada use the two-letter code for the subdivision.
          maxLength: 16
          example: CA
    UtcTimestamp:
      type: string
      description: ISO-8601 UTC date/time format.
      example: '2020-04-10T02:13:30.000Z'
    IdempotencyKey:
      type: string
      description: >-
        Universally unique identifier (UUID v4) idempotency key. This key is
        utilized to ensure exactly-once execution of mutating requests.
      format: uuid
      example: ba943ff1-ca16-49b2-ba55-1057e70ca5c7
    BankAddressIbanSupported:
      type: object
      description: The address of the bank. City and country fields are required.
      required:
        - city
        - country
      properties:
        bankName:
          type: string
          description: >-
            Name of the bank. This property is required for bank accounts
            outside of the US that do not support IBAN'
          maxLength: 35
          example: SAN FRANCISCO
        city:
          type: string
          description: >-
            City portion of the address. This property is required for bank
            accounts outside of the US.
          maxLength: 1024
          example: SAN FRANCISCO
        country:
          type: string
          description: >-
            Country portion of the address. Formatted as a two-letter country
            code specified in ISO 3166-1 alpha-2.
          maxLength: 2
          example: US
        line1:
          type: string
          description: Line one of the street address.
          maxLength: 35
          example: 100 Money Street
        line2:
          type: string
          description: Line two of the street address.
          maxLength: 35
          example: Suite 1
        district:
          type: string
          description: >-
            State / County / Province / Region portion of the address. US and
            Canada use the two-letter code for the subdivision.
          maxLength: 16
          example: CA
    BankAddressNonIban:
      type: object
      description: The address of the bank. BankName, City and Country fields are required.
      required:
        - bankName
        - city
        - country
      properties:
        bankName:
          type: string
          description: >-
            Name of the bank. This property is required for bank accounts
            outside of the US that do not support IBAN'
          maxLength: 35
          example: SAN FRANCISCO
        city:
          type: string
          description: >-
            City portion of the address. This property is required for bank
            accounts outside of the US.
          maxLength: 1024
          example: SAN FRANCISCO
        country:
          type: string
          description: >-
            Country portion of the address. Formatted as a two-letter country
            code specified in ISO 3166-1 alpha-2.
          maxLength: 2
          example: US
        line1:
          type: string
          description: Line one of the street address.
          maxLength: 35
          example: 100 Money Street
        line2:
          type: string
          description: Line two of the street address.
          maxLength: 35
          example: Suite 1
        district:
          type: string
          description: >-
            State / County / Province / Region portion of the address. US and
            Canada use the two-letter code for the subdivision.
          maxLength: 16
          example: CA
    FiatCurrency:
      type: string
      description: Currency code.
      title: Currency
      enum:
        - USD
        - EUR
        - MXN
        - SGD
        - BRL
  headers:
    XRequestId:
      description: >-
        Universally unique identifier (UUID v4) for the request. Helpful for
        identifying a request when communicating with Circle support.
      schema:
        type: string
        format: uuid
        example: 2adba88e-9d63-44bc-b975-9b6ae3440dde
  responses:
    BadRequest:
      description: The request cannot be processed due to a client error.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/json:
          schema:
            type: object
            title: BadRequest
            required:
              - code
              - message
            properties:
              code:
                type: integer
                example: 400
              message:
                type: string
                example: Something went wrong.
            example:
              code: 400
              message: Bad request.
          examples:
            response:
              value:
                code: 400
                message: Bad request.
    NotAuthorized:
      description: >-
        The request has not been applied because it lacks valid authentication
        credentials.
      headers:
        X-Request-Id:
          $ref: '#/components/headers/XRequestId'
      content:
        application/json:
          schema:
            type: object
            title: NotAuthorized
            required:
              - code
              - message
            properties:
              code:
                type: integer
                example: 400
              message:
                type: string
                example: Something went wrong.
            example:
              code: 401
              message: Malformed authorization.
          examples:
            response:
              value:
                code: 401
                message: Malformed authorization.
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````