Transfers

Create a transfer

Changed on

Create a transfer.

If this transfer cannot be created because the funding source is temporarily busy processing another update, this endpoint may return 409 resource_state_conflict. This is a transient, retryable response. You may safely retry the same request with the same Idempotency-Key.

post/transfers

Request

  • Base URL
    https://api.bridge.xyz/v0
  • URL
    https://api.bridge.xyz/v0/transfers
  • Auth
    API key in header Api-Key

Headers

Idempotency-Keystring required

Request body

idstring

A UUID that uniquely identifies a resource

client_reference_idstring

A client-provided reference ID that uniquely identifies a resource in the client's system

amountstring

Amount of the transfer, expressed as a decimal string. Examples include "100.25", "0.1", "1.234567", "1.01" etc.

It is denominated in the source currency if that is a fiat currency, or in the fiat currency to which the source currency is pegged.

on_behalf_ofstring required

The id of the Bridge customer that you are moving funds on behalf of.

developer_feestring

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 source currency if that is a fiat currency, or in the fiat currency to which the source currency is pegged.

developer_fee_percentstring

The fee percent, expressed as a decimal string from 0.0 to 100.0, represents the percentage of the transfer you wish to reserve for your own account.

This field must be set instead of developer_fee when using Flexible Amounts.

dry_runboolean

Whether to validate the transfer route without creating a transfer. If set to true, a valid transfer will return a TransferRouteResponse indicating the transfer would have been valid. The same error response will be returned for an invalid transfer as in the non-dry-run case.

Example request

{
  "travel_rule_data": {
    "originator": {
      "name": "Jane Smith",
      "address": {
        "street_line_1": "123 Market St",
        "street_line_2": null,
        "city": "San Francisco",
        "state": "CA",
        "postal_code": "94105",
        "country": "USA"
      },
      "identifying_information": {
        "type": "national_id",
        "number": "1234567890",
        "issuing_country": "USA"
      },
      "birth_date": "2000-01-31",
      "place_of_birth": {
        "city": "San Francisco",
        "country": "USA"
      },
      "wallet_type": "self_custodied",
      "wallet_attested_ownership_at": "2026-04-01T12:00:00Z"
    },
    "beneficiary": {
      "is_self": true,
      "wallet_type": "external"
    }
  }
}

Response

Transfer object created

OR

Example response

{
  "source_deposit_instructions": {
    "payment_rail": "wire",
    "amount": "75.0",
    "currency": "usd",
    "deposit_message": "BVI7depositmessage",
    "bank_name": "Bank name",
    "bank_address": "Bank address",
    "bank_routing_number": "123456789",
    "bank_account_number": "1234567890",
    "bank_beneficiary_name": "Bank beneficiary",
    "bank_beneficiary_address": "Bank beneficiary address"
  },
  "return_details": {
    "risk_rejection_reason": "Exceeds Transaction Limits"
  }
}

Changes

    • breaking

      the ///// request property's maxLength was decreased to 140

    • breaking

      the response property //// became optional for the status

    • breaking

      added to the //// response property oneOf list for the response status

    • warning

      removed the request property /////

    • warning

      removed the optional property ///////// from the response with the status

    • warning

      added the new fednow enum value to the ///////// response property for the response status

    • warning

      added the new linea enum value to the ///////// response property for the response status

    • warning

      added the new linea enum value to the ////// response property for the response status

    • warning

      added the new linea enum value to the ///////// response property for the response status

    • warning

      added the new linea enum value to the ////// response property for the response status

    • warning

      added the new linea enum value to the ////// response property for the response status

    • warning

      added the new ousd enum value to the ///////// response property for the response status

    • warning

      added the new ousd enum value to the ////// response property for the response status

    • warning

      added the new ousd enum value to the ///////// response property for the response status

    • warning

      added the new ousd enum value to the ////// response property for the response status

    • warning

      added the new path_usd enum value to the ///////// response property for the response status

    • warning

      added the new path_usd enum value to the ////// response property for the response status

    • warning

      added the new path_usd enum value to the ///////// response property for the response status

    • warning

      added the new path_usd enum value to the ////// response property for the response status

    • warning

      added the new usdl_linea enum value to the ///////// response property for the response status

    • warning

      added the new usdl_linea enum value to the ////// response property for the response status

    • warning

      added the new usdl_linea enum value to the ///////// response property for the response status

    • warning

      added the new usdl_linea enum value to the ////// response property for the response status

    • warning

      added the new xdc enum value to the ///////// response property for the response status

    • warning

      added the new xdc enum value to the ////// response property for the response status

    • warning

      added the new xdc enum value to the ///////// response property for the response status

    • warning

      added the new xdc enum value to the ////// response property for the response status

    • warning

      added the new xdc enum value to the ////// response property for the response status

    • info

      added the new fednow enum value to the request property /////

    • info

      added the new linea enum value to the request property /////

    • info

      added the new linea enum value to the request property /////

    • info

      added the new ousd enum value to the request property /////

    • info

      added the new ousd enum value to the request property /////

    • info

      added the new path_usd enum value to the request property /////

    • info

      added the new path_usd enum value to the request property /////

    • info

      added the new usdl_linea enum value to the request property /////

    • info

      added the new usdl_linea enum value to the request property /////

    • info

      added the new xdc enum value to the request property /////

    • info

      added the new xdc enum value to the request property /////

    • info

      added the optional property //// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ////// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///// to the response with the status

    • info

      added the optional property ///////// to the response with the status

    • info

      the response optional property ///// became read-only for the status

    • info

      removed subschema #2 from the //// response property allOf list for the response status

    • info

      added the required property ///// to the response with the status

    • info

      added the required property ///// to the response with the status

    • info

      added the required property ///// to the response with the status

    • info

      added the required property ///// to the response with the status