Withdraw organization funds
Changed onCreates a withdrawal. Requires fund.withdraw permission.
request_id is optional. When supplied, it must be a UUID and acts as the idempotency key. When the same merchant retries with the same request_id, the API returns the previously created withdrawal information with is_duplicate=true.
source_currency is optional and defaults to token_type. Set it to USD to deduct from the organization's USD Cash Account when withdrawing USDT or USDC. Other cross-currency pairs are rejected.
Request
- Base URLhttps://openapi.infini.money/v2/funds
- AuthAPI key in header Authorization
- TypeScriptA function with typed inputs. Its response is checked against the schema.
Headers
32-character Base58 credential ID returned after public-key registration.
Unix timestamp in seconds; tolerance is ±300 seconds.
16 cryptographically random bytes encoded as unpadded Base64URL; fresh on every attempt.
SHA-256= followed by standard padded Base64 of SHA-256 of exact request body bytes. Required even for an empty body; included in the signing string.
Use Ed25519 signature="BASE64_SIGNATURE", where BASE64_SIGNATURE is the standard padded Base64 signature. See /docs/en/4-authorization for the exact signing string.
Request body
Example request
{
"request_id": "e94b4e88-36c2-4550-907e-839742cf5fae",
"chain": "ETHEREUM",
"token_type": "USDT",
"source_currency": "USD",
"amount": "10.00",
"wallet_address": "0x5f716e5775b18409917e2a2f0762d29d6c385cb0",
"note": "Treasury withdrawal"
}Response
Standard response envelope
Example response
{
"data": {
"request_id": "e94b4e88-36c2-4550-907e-839742cf5fae",
"status": "pending"
}
}Changes
- breaking
added the new required
headerrequest parameterX-API-Key-ID - breaking
added the new required
headerrequest parameterX-API-Nonce - breaking
added the new required
headerrequest parameterX-API-Timestamp - breaking
the
headerrequest parameterAuthorizationbecame required - breaking
the
headerrequest parameterDigestbecame required - breaking
removed the media type
application/jsonfor the response with the status - breaking
removed the media type
application/jsonfor the response with the status - warning
deleted the
headerrequest parameterDate
- breaking
- info
added the new optional request property
- info