Bridge Virtual Accounts API

The Virtual Accounts API from Bridge — 7 operation(s) for virtual accounts.

Operations 9

POST /customers/{customerID}/virtual_accounts Create a Virtual Account #
GET /customers/{customerID}/virtual_accounts List Virtual Accounts by Customer #
GET /customers/{customerID}/virtual_accounts/{virtualAccountID} Get a Virtual Account #
PUT /customers/{customerID}/virtual_accounts/{virtualAccountID} Update a Virtual Account #
POST /customers/{customerID}/virtual_accounts/{virtualAccountID}/deactivate Deactivate a Virtual Account #
POST /customers/{customerID}/virtual_accounts/{virtualAccountID}/reactivate Reactivate a Virtual Account #
GET /customers/{customerID}/virtual_accounts/{virtualAccountID}/history Virtual Account Activity #
GET /virtual_accounts List Virtual Accounts #
GET /virtual_accounts/history Virtual Account Activity Across All Customers #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/bridge-virtual-accounts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

bridge-virtual-accounts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Bridge Virtual Accounts API
  description: APIs to move into, out of, and between any form of a dollar
  version: '1'
servers:
- url: https://api.bridge.xyz/v0
  description: The base path for all resources
security:
- ApiKey: []
tags:
- name: Virtual Accounts
paths:
  /customers/{customerID}/virtual_accounts:
    post:
      summary: Create a Virtual Account
      description: Create a Virtual Account or Virtual IBAN for the specified customer
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/IdempotencyKeyParameter'
      - $ref: '#/components/parameters/CustomerIDParameter'
      requestBody:
        description: Virtual Account object to be created
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVirtualAccount'
            examples:
              us:
                summary: Virtual Account
                value:
                  developer_fee_percent: '0.1'
                  source:
                    currency: usd
                  destination:
                    currency: usdc
                    payment_rail: base
                    address: '0xdeadbeef'
              us_fee_config_request_only:
                summary: Virtual Account with fee_config (available by request only)
                value:
                  fee_config:
                    source:
                      ach_push:
                        fee_percent: '0.5'
                        minimum_fee: '1.00'
                      wire:
                        fee_amount: '10.00'
                        fee_percent: '1.0'
                  source:
                    currency: usd
                  destination:
                    currency: usdc
                    payment_rail: base
                    address: '0xdeadbeef'
              eu:
                summary: Virtual IBAN
                value:
                  developer_fee_percent: '0.1'
                  source:
                    currency: eu
                  destination:
                    currency: eurc
                    payment_rail: solana
                    adddress: DeAdBeEf
              mx:
                summary: Virtual Account Mexico
                value:
                  developer_fee_percent: '0.1'
                  source:
                    currency: mxn
                  destination:
                    currency: usdc
                    payment_rail: base
                    address: '0xdeadbeef'
              gb:
                summary: Virtual Account United Kingdom (beta)
                value:
                  developer_fee_percent: '0.1'
                  source:
                    currency: gbp
                  destination:
                    currency: usdc
                    payment_rail: base
                    address: '0xdeadbeef'
              co:
                summary: Virtual Account Colombia (Bre-B)
                value:
                  developer_fee_percent: '0.1'
                  source:
                    currency: cop
                  destination:
                    currency: usdc
                    payment_rail: ethereum
                    address: '0xdeadbeef'
      responses:
        '200':
          description: Virtual Account object created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualAccountResponse'
              examples:
                us:
                  summary: Virtual Account
                  value:
                    id: 59waova4hbt1vhabj3jo7don6j1mj5peq8i8rhc5l1
                    status: activated
                    developer_fee_percent: '0.1'
                    source_deposit_instructions:
                      currency: usd
                      payment_rails:
                      - ach_push
                      - fednow
                      - wire
                      bank_name: Lead Bank
                      bank_address: 1801 Main St., Kansas City, MO 64108
                      bank_beneficiary_name": Customer Name
                      bank_beneficiary_address": 1234 Main St., Kansas City, MO 64108
                      bank_account_number": '123456789'
                      bank_routing_number": '87654321'
                    destination:
                      currency: usdc
                      payment_rail: polygon
                      address: '0xdeadbeef'
                us_fee_config_request_only:
                  summary: Virtual Account with fee_config (available by request only)
                  value:
                    id: 59waova4hbt1vhabj3jo7don6j1mj5peq8i8rhc5l1
                    status: activated
                    developer_fee_percent: '0.0'
                    fee_config:
                      source:
                        ach_push:
                          fee_percent: '0.5'
                          minimum_fee: '1.00'
                        fednow:
                          fee_percent: '1.0'
                          minimum_fee: '1.00'
                        wire:
                          fee_amount: '10.00'
                          fee_percent: '1.0'
                    source_deposit_instructions:
                      currency: usd
                      payment_rails:
                      - ach_push
                      - fednow
                      - wire
                      bank_name: Lead Bank
                      bank_address: 1801 Main St., Kansas City, MO 64108
                      bank_beneficiary_name": Customer Name
                      bank_beneficiary_address": 1234 Main St., Kansas City, MO 64108
                      bank_account_number": '123456789'
                      bank_routing_number": '87654321'
                    destination:
                      currency: usdc
                      payment_rail: polygon
                      address: '0xdeadbeef'
                eu:
                  summary: Virtual IBAN
                  value:
                    id: 59waova4hbt1vhabj3jo7don6j1mj5peq8i8rhc5l1
                    status: activated
                    developer_fee_percent: '0.1'
                    source_deposit_instructions:
                      currency: eur
                      payment_rails:
                      - sepa
                      iban: X6099
                      bic: BCIRLULL
                      account_holder_name: Bridge Building Sp. Z.o.o.
                      bank_name: Banking Circle S.A.
                      bank_address: 2 Boulevard de la Foire, L-1528 Luxembourg
                    destination:
                      currency: eurc
                      payment_rail: solana
                      address: DeAdBeEf
                mx:
                  summary: Virtual Account Mexico
                  value:
                    id: 59waova4hbt1vhabj3jo7don6j1mj5peq8i8rhc5l1
                    status: activated
                    developer_fee_percent: '0.1'
                    source_deposit_instructions:
                      currency: mxn
                      payment_rails:
                      - spei
                      bank_name: Banco Azteca
                      bank_address: Av. Aztecas 215, Santa Cruz Acatlán, Naucalpan de Juárez, Estado de México
                      bank_beneficiary_name: Customer Name
                      bank_beneficiary_address: Calle Ejemplo 123, Ciudad de México, CDMX 01234
                      bank_account_number: '1234567890123456789'
                      clabe: '127180001234567890'
                    destination:
                      currency: usdc
                      payment_rail: solana
                      address: DeAdBeEf
                gb:
                  summary: Virtual Account United Kingdom (beta)
                  value:
                    id: 2ecad10b-f44b-4ffa-8c53-39a6b63ab9ab
                    status: activated
                    developer_fee_percent: '0.1'
                    source_deposit_instructions:
                      currency: gbp
                      payment_rails:
                      - faster_payments
                      account_number: '01234567'
                      sort_code: '987654'
                      bank_name: Banking Circle S.A.
                      bank_address: 2 Boulevard de la Foire, L-1528 Luxembourg
                      bank_benficiary_name: Bridge Building Sp. Z.o.o.
                      bank_benficiary_address: 2 Boulevard de la Foire, L-1528 Luxembourg
                      account_holder_name: Bridge Building Sp. Z.o.o.
                co:
                  summary: Virtual Account Colombia (Bre-B)
                  value:
                    id: 59waova4hbt1vhabj3jo7don6j1mj5peq8i8rhc5l1
                    status: activated
                    developer_fee_percent: '0.1'
                    source_deposit_instructions:
                      currency: cop
                      payment_rails:
                      - bre_b
                      bre_b_key: '12345678901234567890'
                      account_holder_name: Bridge Developer Name
                      deposit_message: COP7depositmessage
                    destination:
                      currency: usdc
                      payment_rail: ethereum
                      address: '0xdeadbeef'
      operationId: postCustomersByCustomerIDVirtualAccounts
      x-operation-id-source: derived
    get:
      summary: List Virtual Accounts by Customer
      description: List all Virtual Account objects for a customer
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/CustomerIDParameter'
      - $ref: '#/components/parameters/FiatInstructionsActivationStatusParameter'
      - $ref: '#/components/parameters/LimitParameter'
      - $ref: '#/components/parameters/VirtualAccountStartingAfterParameter'
      - $ref: '#/components/parameters/VirtualAccountEndingBeforeParameter'
      responses:
        '200':
          description: List of Virtual Accounts
          content:
            application/json:
              schema:
                title: Virtual Accounts
                type: object
                required:
                - count
                - data
                properties:
                  count:
                    description: total number of items in data
                    type: integer
                  data:
                    type: array
                    minItems: 0
                    items:
                      $ref: '#/components/schemas/VirtualAccountResponse'
      operationId: getCustomersByCustomerIDVirtualAccounts
      x-operation-id-source: derived
  /customers/{customerID}/virtual_accounts/{virtualAccountID}:
    get:
      summary: Get a Virtual Account
      description: Retrieve the Virtual Account object from the passed ID
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/CustomerIDParameter'
      - $ref: '#/components/parameters/VirtualAccountIDParameter'
      responses:
        '200':
          description: Successful Virtual Account object response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualAccountResponse'
      operationId: getCustomersByCustomerIDVirtualAccountsByVirtualAccountID
      x-operation-id-source: derived
    put:
      summary: Update a Virtual Account
      description: Update instructions for an existing Virtual Account
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/CustomerIDParameter'
      - $ref: '#/components/parameters/VirtualAccountIDParameter'
      requestBody:
        description: The Virtual Account details to be updated
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateVirtualAccount'
      responses:
        '200':
          description: Updated Virtual Account object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualAccountResponse'
      operationId: putCustomersByCustomerIDVirtualAccountsByVirtualAccountID
      x-operation-id-source: derived
  /customers/{customerID}/virtual_accounts/{virtualAccountID}/deactivate:
    post:
      summary: Deactivate a Virtual Account
      description: Deactivate a Virtual Account to prevent it from acceping new incoming transactions
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/IdempotencyKeyParameter'
      - $ref: '#/components/parameters/CustomerIDParameter'
      - $ref: '#/components/parameters/VirtualAccountIDParameter'
      responses:
        '200':
          description: Deactivated Virtual Account object
          content:
            application/json:
              schema:
                allOf:
                - $ref: '#/components/schemas/VirtualAccountResponse'
                - type: object
                  properties:
                    status:
                      example: deactivated
      operationId: postCustomersByCustomerIDVirtualAccountsByVirtualAccountIDDeactivate
      x-operation-id-source: derived
  /customers/{customerID}/virtual_accounts/{virtualAccountID}/reactivate:
    post:
      summary: Reactivate a Virtual Account
      description: Reactivate a previously deactivated Virtual Account
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/IdempotencyKeyParameter'
      - $ref: '#/components/parameters/CustomerIDParameter'
      - $ref: '#/components/parameters/VirtualAccountIDParameter'
      responses:
        '200':
          description: Reactivated Virtual Account object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VirtualAccountResponse'
      operationId: postCustomersByCustomerIDVirtualAccountsByVirtualAccountIDReactivate
      x-operation-id-source: derived
  /customers/{customerID}/virtual_accounts/{virtualAccountID}/history:
    parameters:
    - $ref: '#/components/parameters/CustomerIDParameter'
    - $ref: '#/components/parameters/VirtualAccountIDParameter'
    - $ref: '#/components/parameters/DepositIDQueryParameter'
    - $ref: '#/components/parameters/DepositIDsQueryParameter'
    - $ref: '#/components/parameters/TxHashParameter'
    - $ref: '#/components/parameters/LimitParameter'
    - $ref: '#/components/parameters/EventStartingAfterParameter'
    - $ref: '#/components/parameters/EventEndingBeforeParameter'
    - $ref: '#/components/parameters/EventTypeParameter'
    get:
      summary: Virtual Account Activity
      tags:
      - Virtual Accounts
      description: History of activity for a Virtual Account
      responses:
        '200':
          description: List of Virtual Account events
          content:
            application/json:
              schema:
                title: Virtual Account history
                type: object
                required:
                - count
                - data
                properties:
                  count:
                    type: integer
                    description: The number of events returned
                  data:
                    type: array
                    minItems: 0
                    items:
                      $ref: '#/components/schemas/VirtualAccountEvent'
              examples:
                History:
                  $ref: '#/components/examples/VirtualAccountHistoryExample'
      operationId: getCustomersByCustomerIDVirtualAccountsByVirtualAccountIDHistory
      x-operation-id-source: derived
  /virtual_accounts:
    get:
      summary: List Virtual Accounts
      description: List all Virtual Account objects
      tags:
      - Virtual Accounts
      parameters:
      - $ref: '#/components/parameters/FiatInstructionsActivationStatusParameter'
      - $ref: '#/components/parameters/LimitParameter'
      - $ref: '#/components/parameters/VirtualAccountStartingAfterParameter'
      - $ref: '#/components/parameters/VirtualAccountEndingBeforeParameter'
      responses:
        '200':
          description: List of Virtual Accounts
          content:
            application/json:
              schema:
                title: Virtual Accounts
                type: object
                required:
                - count
                - data
                properties:
                  count:
                    description: total number of items in data
                    type: integer
                  data:
                    type: array
                    minItems: 0
                    items:
                      $ref: '#/components/schemas/VirtualAccountResponse'
      operationId: getVirtualAccounts
      x-operation-id-source: derived
  /virtual_accounts/history:
    parameters:
    - $ref: '#/components/parameters/DepositIDQueryParameter'
    - $ref: '#/components/parameters/DepositIDsQueryParameter'
    - $ref: '#/components/parameters/TxHashParameter'
    - $ref: '#/components/parameters/LimitParameter'
    - $ref: '#/components/parameters/EventStartingAfterParameter'
    - $ref: '#/components/parameters/EventEndingBeforeParameter'
    - $ref: '#/components/parameters/EventTypeParameter'
    - $ref: '#/components/parameters/UpdatedAfterMsParameter'
    - $ref: '#/components/parameters/UpdatedBeforeMsParameter'
    get:
      summary: Virtual Account Activity Across All Customers
      tags:
      - Virtual Accounts
      description: History of activity across all customers and Virtual Accounts
      responses:
        '200':
          description: List of Virtual Account events
          content:
            application/json:
              schema:
                title: Virtual Account history
                type: object
                required:
                - count
                - data
                properties:
                  count:
                    type: integer
                    description: The number of events returned
                  data:
                    type: array
                    minItems: 0
                    items:
                      $ref: '#/components/schemas/VirtualAccountEvent'
              examples:
                History:
                  $ref: '#/components/examples/VirtualAccountHistoryExample'
      operationId: getVirtualAccountsHistory
      x-operation-id-source: derived
components:
  schemas:
    PaymentScheme:
      type: string
      enum:
      - sepa_credit
      - sepa_instant
    VirtualAccountSourceDepositInstructionsEu:
      title: Virtual IBAN
      allOf:
      - type: object
        required:
        - iban
        - bic
        - account_holder_name
        - currency
        - payment_rails
        properties:
          iban:
            description: he IBAN of the account that the customer should send the deposit to
            type: string
          bic:
            description: The BIC of the bank that the customer should send the deposit to
            type: string
          account_holder_name:
            $ref: '#/components/schemas/AccountHolderName'
          currency:
            type: string
            enum:
            - eur
          payment_rails:
            type: string
            enum:
            - sepa
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsCommon'
    VirtualAccountSourceDepositInstructions:
      title: Source Deposit Instructions
      readOnly: true
      oneOf:
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsUs'
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsEu'
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsMx'
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsBr'
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsGb'
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsCo'
    Receipt:
      required:
      - initial_amount
      - developer_fee
      - exchange_fee
      - subtotal_amount
      properties:
        initial_amount:
          description: 'The initial amount of the transfer, represented as a decimal string. Examples include "100.25", "0.1", "1.234567", "1.01" etc.


            It''s denominated in the transfer''s fiat currency (see the top-level `currency` field for more info)'
          type: string
        developer_fee:
          description: 'The fee, expressed as a decimal string, represents the amount you wish to reserve for your own account.  This fee is the final amount deducted from what your customer ultimately receives, rather than a percentage.


            It is denominated in the transfer''s fiat currency (see the top-level `currency` field for more info).'
          type: string
        exchange_fee:
          description: 'The fee, expressed as a decimal string, represents the amount Bridge charges for facilitating the transfer.  This is the final amount to take out of what is ultimately received by your customer, not a percentage.


            It''s denominated in the transfer''s fiat currency (see top-level `currency` field for more info).'
          type: string
        subtotal_amount:
          description: 'The initial amount of the transfer less fixed fees (including the developer_fee and exchange_fee). Examples include "100.25", "0.1", "1.234567", "1.01" etc.


            It''s denominated in the transfer''s fiat currency (see top-level `currency` field for more info).'
          type: string
        remaining_prefunded_balance:
          description: For Prefunded Accounts, this value will represent the remaining account balance after the transfer.
          type: string
        gas_fee:
          description: 'The fee, expressed as a decimal string. It''s deducted from the withdrawn amount to pay for gas.  Only nonzero to crypto withdrawals that cost gas (e.g. USDT), and only known when the transaction is confirmed on-chain.  Will be missing if not yet known.


            It''s denominated in the fiat currency to which the destination currency is pegged.'
          type: string
        final_amount:
          description: 'The final amount of the transfer, expressed as a decimal string, equal to the subtotal_amount minus any gas fees.  If the gas fee is not known, this field will be missing.  Examples include "100.25", "0.1", "1.234567", "1.01" etc.


            It''s denominated in the destination currency if that is a fiat currency or the fiat currency to which the destination currency is pegged.'
          type: string
        source_tx_hash:
          description: The hash of the on-chain deposit to the source address, where applicable
        destination_tx_hash:
          description: The hash of the on-chain transfer to the destination address, where applicable
        exchange_rate:
          description: The effective exchange rate can be calculated by dividing the converted amount by the amount available for conversion after deducting the developer fee. This rate includes a currency conversion spread and is subject to a rounding precision loss during the calculation. Currently it's populated for SEPA onramp/offramp transfers only.
        url:
          description: The URL of a user-facing copy of the receipt.
          type: string
        bank_details:
          description: Bank-lookup details for fiat offramp receipts, to help the recipient's bank locate the payment. Present for enabled developers once the offramp's bank leg exists; individual fields may be null until they become available (e.g. the ACH trace ID before submission to the Fed).
          type: object
          properties:
            sending_routing_number:
              description: Routing number of the bank Bridge sent the payment from.
              type: string
            ach_description:
              description: Statement descriptor on the outgoing ACH credit.
              type: string
            ach_trace_id:
              description: ACH trace number, populated after submission to the Fed.
              type: string
            recipient_name:
              description: Name on the receiving external account.
              type: string
    TravelRuleBeneficiary:
      type: object
      description: Travel Rule details for beneficiary crypto movement.
      properties:
        is_self:
          $ref: '#/components/schemas/TravelRuleIsSelf'
        name:
          $ref: '#/components/schemas/TravelRuleName'
        address:
          description: Mailing or legal address of the beneficiary. Usually omitted when `is_self` is `true`.
          allOf:
          - $ref: '#/components/schemas/TravelRuleAddress'
        wallet_type:
          $ref: '#/components/schemas/TravelRuleWalletType'
        wallet_attested_ownership_at:
          $ref: '#/components/schemas/TravelRuleWalletAttestedOwnershipAt'
        legal_entity_identifier:
          type: string
          description: The Legal Entity Identifier (LEI) or equivalent (e.g. VAT number) of the beneficiary. Provide this when the beneficiary is a legal entity rather than an individual.
    GbBankAccountVirtualAccount:
      title: gb
      type: object
      required:
      - account_number
      - sort_code
      properties:
        account_number:
          type: string
          description: The bank account number
          minLength: 8
          maxLength: 8
          example: 12345678
        sort_code:
          type: string
          description: The sort code, without hyphens
          minLength: 6
          maxLength: 6
          example: 123456
    VirtualAccountSourcePaymentRails:
      type: string
      enum:
      - ach_push
      - bre_b
      - faster_payments
      - pix
      - sepa
      - spei
      - wire
    TravelRuleAddress:
      type: object
      description: Address for travel rule submissions. All fields are optional to support partial address data (e.g. country-only).
      properties:
        street_line_1:
          type: string
        street_line_2:
          type: string
        city:
          type: string
        state:
          type: string
          description: ISO 3166-2 subdivision code.
        postal_code:
          type: string
        country:
          description: Three-letter alpha-3 country code as defined in the ISO 3166-1 spec.
          type: string
          minLength: 3
          maxLength: 3
    VirtualAccountDeveloperFeePercent:
      description: The developer fee percent that will be applied to this Virtual Account. The value is a base 100 percentage, i.e. 10.2% is 10.2 in the API.
      type: string
      format: number
      minimum: 0
      example: '0.1'
      exclusiveMaximum: 100
    UpdateVirtualAccount:
      properties:
        destination:
          $ref: '#/components/schemas/UpdateVirtualAccountDestination'
        developer_fee_percent:
          $ref: '#/components/schemas/VirtualAccountDeveloperFeePercent'
        fee_config:
          description: Developer fee configuration. Available by request only. Contact Bridge to enable this feature for your developer account. When provided, performs a full replacement of the existing fee configuration. If the virtual account was previously configured with `developer_fee_percent`, providing `fee_config` will clear `developer_fee_percent` and replace it with the new configuration. Include the desired fee under `source` (e.g. `fee_config.source.fee_percent`). Cannot be provided alongside `developer_fee_percent` in the same request.
          allOf:
          - $ref: '#/components/schemas/FeeConfigRequest'
    Uetr:
      description: 'Deprecated: use tracking_number instead. The unique end-to-end transaction reference, for tracing purposes.'
      type: string
      readOnly: true
      deprecated: true
    Imad:
      description: (Wire only) The IMAD of a wire transfer, if available
      type: string
      pattern: '[a-z0-9]*'
      minLength: 1
      maxLength: 40
    TravelRuleOriginator:
      type: object
      description: Travel Rule details for originator crypto movement.
      properties:
        is_self:
          $ref: '#/components/schemas/TravelRuleIsSelf'
        name:
          $ref: '#/components/schemas/TravelRuleName'
        address:
          description: Mailing or legal address of the originator. Usually omitted when `is_self` is `true`.
          allOf:
          - $ref: '#/components/schemas/TravelRuleAddress'
        wallet_type:
          $ref: '#/components/schemas/TravelRuleWalletType'
        wallet_attested_ownership_at:
          $ref: '#/components/schemas/TravelRuleWalletAttestedOwnershipAt'
        identifying_information:
          allOf:
          - $ref: '#/components/schemas/IdentifyingInformation'
          description: 'List of identification objects for the originator. Do **not** include `image_front` or `image_back` fields in this context; those are not accepted in Travel Rule submissions.

            '
        birth_date:
          type: string
          description: Date of birth in format yyyy-mm-dd.
          minLength: 10
          maxLength: 10
        place_of_birth:
          $ref: '#/components/schemas/PlaceOfBirthInput'
        legal_entity_identifier:
          type: string
          description: The Legal Entity Identifier (LEI) or equivalent (e.g. VAT number) of the originator. Provide this when the originator is a legal entity rather than an individual.
    VirtualAccountSourceDepositInstructionsGb:
      title: Virtual Account UK
      allOf:
      - $ref: '#/components/schemas/GbBankAccountVirtualAccount'
      - type: object
        required:
        - currency
        - payment_rails
        - account_holder_name
        properties:
          account_holder_name:
            $ref: '#/components/schemas/AccountHolderName'
          currency:
            type: string
            enum:
            - gbp
          payment_rails:
            type: string
            enum:
            - faster_payments
      - $ref: '#/components/schemas/VirtualAccountSourceDepositInstructionsCommon'
    SepaReference:
      description: A reference message to be sent with a SEPA transaction. We recommend you set a unique value to help you and your customers track payments end to end. It must be from 6 to 140 characters. The allowed characters are `a-z`, `A-Z`, `0-9`, spaces, ampersand (`&`), hyphen (`-`), full stop (`.`), and solidus (`/`). If not populated, the default value is "Payment via Bridge {unique_token}".
      type: string
      minLength: 6
      maxLength: 140
    TravelRuleIsSelf:
      type: boolean
      description: Set to `true` when this party is the same person or business as the Bridge customer on the resource. When `true`, Bridge uses the customer's name and address on file instead of relying on `name` and `address` in this payload.
    FeeConfigResponse:
      description: Developer fee configuration. Available by request only. Contact Bridge to enable this feature for your developer account. Responses render source-side fees keyed by payment rail, using `default` for a catch-all configuration.
      type: object
      properties:
        source:
          description: Source-side fee configuration keyed by payment rail or `default`
          type: object
          additionalProperties:
            $ref: '#/components/schemas/FeeConfigFeeParams'
          example:
            default:
              fee_percent: '0.5'
              minimum_fee: '1.00'
            wire:
              fee_amount: '10.00'
              fee_percent: '1.0'
    UpdateVirtualAccountDestination:
      properties:
        currency:
          $ref: '#/components/schemas/CryptoCurrency'
        payment_rail:
          $ref: '#/components/schemas/OfframpChain'
        address:
          description: The crypto wallet address that the customer wishes to ultimately receive funds at
          type: string
        blockchain_memo:
          type: string
          description: The memo to include when sending funds on chain. Only allowed for blockchains that support memos such as Stellar
        bridge_wallet_id:
          description: The Bridge Wallet to which Bridge will send the funds. The chain associated with the Bridge Wallet must match the payment rail.
          $ref: '#/components/schemas/Id'
      example:
        currency: usdc
        payment_rail: polygon
        address: '0xdeadbeef'
        blockchain_memo: from_bridge
    VirtualAccountSourceDepositInstructionsBr:
 

# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/bridge/refs/heads/main/openapi/bridge-virtual-accounts-api-openapi.yml