Skip to main content
POST
Create a stablecoin withdrawal

What this endpoint does

Creates a stablecoin withdrawal and durably reserves its source debit from this tenant account’s matching asset/network wallet.

When to use it

Submit it after reviewing the approved destination, exact network, fee, source debit, and available balance.

Before you call

Use a secret API key with treasury:write. The destination, asset/network, limits, screening, and available balance must all be eligible.

Money and balance effect

On acceptance, the source debit is reserved. It is captured after confirmed execution or released only when non-execution is proven.

States and completion

accepted means funds are reserved, not sent. Follow submission, blockchain confirmations, finality, failure, hold, and reconciliation state.

Safe retries

Send a unique Idempotency-Key for the logical action. If the response is lost, retry the same payload with the same key; never create a new key merely because the first response timed out. Read Conversions and withdrawals for the complete workflow.

Authorizations

Authorization
string
header
required

Send the same Wayex API key as Authorization: Bearer <key>.

Headers

Idempotency-Key
string
required

A unique key for this logical action. Reuse the same key and identical payload when retrying after an unknown response.

Required string length: 8 - 255

Body

application/json
asset
enum<string>
required
Available options:
USDC,
USDT
network
enum<string>
required
Available options:
ethereum,
base,
arbitrum,
optimism,
polygon,
bsc,
avalanche,
solana,
tron
amount
string
required
Pattern: ^\d+(\.\d+)?$
destinationId
string
required
Minimum string length: 1
externalReference
string
required
Minimum string length: 1

Response

201 - application/json
id
string
required
Minimum string length: 1
clientId
string
required
Minimum string length: 1
asset
enum<string>
required
Available options:
USDC,
USDT
network
enum<string>
required
Available options:
ethereum,
base,
arbitrum,
optimism,
polygon,
bsc,
avalanche,
solana,
tron
amount
string
required
Pattern: ^\d+(\.\d+)?$
fee
object
required
sourceDebit
object
required
destinationAddress
string
required
Minimum string length: 1
status
enum<string>
required
Available options:
accepted,
held,
submitted,
settled,
failed,
returned
configurationId
string
required
Minimum string length: 1
externalReference
string
required
Minimum string length: 1
reservation
object
required
nextAction
enum<string>
required
Available options:
none,
wait_for_settlement,
contact_support,
retry_new_request,
review_balance
createdAt
string<date-time>
required
updatedAt
string<date-time>
required
destinationId
string
Minimum string length: 1
destinationTag
string
Minimum string length: 1
providerReference
string
Minimum string length: 1
statusReason
string
Minimum string length: 1