Skip to main content
POST
Any fiat transactions submitted between 9:30 AM and 5:30 PM ET on a weekday are processed the same day. Transactions submitted outside these hours or on weekends will be settled the next business day.
This endpoint can only be used with beneficiaries created with auto_settlement set to false.

What changed from V2

Send a unique X-Idempotency-Key (up to 255 characters) with every new request. A UUID works well:
The request body and response are unchanged.
V2 remains available at POST /v2/transactions/transfer-payout. Transfers created on V3 must be settled with Settle a Transfer V3.

Authorizations

Authorization
string
header
required

Bearer token authentication. Obtain token from Issue a Token endpoint

Headers

X-Idempotency-Key
string
required

Unique key that identifies this request. Use a new key for each new request. Maximum 255 characters.

Maximum string length: 255

Body

application/json
beneficiary_id
string<uuid>
required
Example:

"e710eb60-f1cd-4e70-94df-6b99a7fcf58d"

reference_id
string
required

Your own identifier for this transfer.

Example:

"REF-12345-ABC"

source_currency
enum<string>
required

Currency the funds are debited in.

Available options:
USD,
USDC
Example:

"USD"

deduct_from
enum<string>
required

Where the funds are drawn from. Only PREFUNDED_BALANCE transfers are eligible for refunds if they fail.

Available options:
PREFUNDED_BALANCE,
LIQUIDATION_ADDRESS
Example:

"PREFUNDED_BALANCE"

remarks
string
required
Example:

"Monthly payment for services"

source_amount
integer

Amount to debit, in cents (e.g. 850 = $8.50). Minimum 500 cents. Send this or destination_amount, never both.

Required range: x >= 500
Example:

850

destination_amount
integer

Amount the beneficiary receives, in cents of the beneficiary's currency. Send this or source_amount, never both.

Example:

77350

attachments
object[]
Minimum array length: 1

Response

Transfer created successfully

data
object