Skip to main content
POST
/
wallet
/
transactions
/
crypto
/
send
transactions - Send crypto to an external address
curl --request POST \
  --url https://api.ripio.com/wallet/transactions/crypto/send/ \
  --header 'Content-Type: application/json' \
  --header 'authorization: <authorization>' \
  --header 'signature: <signature>' \
  --header 'timestamp: <timestamp>' \
  --data '
{
  "amount": "0.001",
  "currency": "BTC",
  "address_to": "bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh",
  "gateway": "crypto",
  "network_fee": "0.00005",
  "gateway_data": {
    "network": "bitcoin",
    "memo_id": "123456789"
  },
  "alternative_fee": true,
  "otp_code": 123
}
'
{
  "error_code": null,
  "message": null,
  "data": {
    "id": "12345",
    "currency": "ARS",
    "status": "PEN",
    "amount": "5000.00",
    "fee": "0.00",
    "total": "5000.00",
    "gateway": "bank-transfer-cvu",
    "txn_type": "WITHDRAWAL",
    "txn_class": "fiat",
    "is_swap": false,
    "alt_fee_currency": null,
    "date_created": "2026-04-13T12:00:00Z",
    "fee_currency": "ARS",
    "alt_fee": "0.00",
    "address_from": null,
    "address_to": null,
    "address_to_memo": null,
    "network": null,
    "network_fee": "0.00",
    "amount_network_fee": "0.00",
    "crypto_amount": null,
    "rate_currency": null,
    "description": null,
    "expiring_date": null,
    "barcode": null,
    "invoice_pdf": null,
    "redirect": null,
    "txn_hash": null,
    "phone_refill": null,
    "currency_pair": null,
    "balance_transfer_hash": null,
    "investment_id": null,
    "txn_hash_url": null,
    "reference_code": null,
    "gateway_data": {},
    "reference_id": null,
    "network_standard": null
  }
}

Headers

authorization
string
required

The API key as a string.

signature
string
required

See the Generating Signature section for more details.

timestamp
number
required

A timestamp in milliseconds. See the Timestamp Security section for more details.

timstamp-tolerance
number

An additional, non-required parameter, that you can send to specify the number of milliseconds after the timestamp for the request to be valid. See the Timestamp Security section for more details.

Body

application/json
amount
string
required

Amount to send as a decimal string.

Example:

"0.001"

currency
string
required

Crypto currency ticker to send.

Example:

"BTC"

address_to
string
required

Destination blockchain address.

Example:

"bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh"

gateway
string
required

Payment gateway identifier. Obtain from GET /transactions/gateways/ filtering by action=SEND. Use the gateway field of the matching result. For crypto sends this is always "crypto".

Example:

"crypto"

network_fee
string
required

Network fee as a decimal string. Must be ≥ 0. Obtain the recommended value from the network_fee field in GET /currency-networks/.

Example:

"0.00005"

gateway_data
object
required

Gateway-specific data for the crypto send.

alternative_fee
boolean

If true, pay the fee in an alternative currency.

otp_code
integer

Two-factor authentication code. Required when the user has 2FA enabled.

Response

Send transaction created successfully.

error_code
string
required
Example:

null

message
string
required
Example:

null

data
object
required

Transaction object returned by creation endpoints (withdrawal, send). Uses the v3 TransactionOutputSerializer format, which differs from the list/detail format (GatewayTransaction).