Skip to main content
POST
/
payout
/
rails
/
transfers
Create an off-ramp transfer (crypto → fiat)
curl --request POST \
  --url http://localhost:4000/v1/payout/rails/transfers \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "bridge_customer_db_id": "uuid-customer-1",
  "external_account_id": "ext_abc123",
  "amount": "100.00",
  "source_currency": "usdc",
  "source_network": "base",
  "destination_currency": "usd",
  "destination_payment_rail": "ach",
  "from_address": "0xabc123..."
}
'

Authorizations

Authorization
string
header
required

Use this format: ApiKey <your_api_key>

Body

application/json
bridge_customer_db_id
string
required

Internal DB id of the bridge_customers record

Example:

"uuid-customer-1"

external_account_id
string
required

Bridge external account id (ext_xxx) to receive funds

Example:

"ext_abc123"

amount
string
required

Transfer amount as a decimal string

Example:

"100.00"

source_currency
string
required

Source cryptocurrency (e.g. 'usdc')

Example:

"usdc"

source_network
string
required

Source blockchain network (e.g. 'base', 'avalanche')

Example:

"base"

destination_currency
string
required

Destination fiat currency (e.g. 'usd', 'eur')

Example:

"usd"

destination_payment_rail
string
required

Destination payment rail (e.g. 'ach', 'wire', 'sepa')

Example:

"ach"

from_address
string

Blockchain address that will send the crypto funds

Example:

"0xabc123..."

Response

Transfer created or returned from cache