Withdrawals
POST /v1/withdrawals requires an API key, an Idempotency-Key, and a JSON body with asset, amount, network set to BSC, and destination. GET /v1/withdrawals returns the gas address, whether it meets the minimum, the confirmed balance still available, and past withdrawals.
The gas address belongs to that merchant only. Fund it with at least 5 USDT worth of BNB. A withdrawal is one transaction from that address. The minimum withdrawal is 5 USDT, or 5 USDT worth of the selected asset. The destination receives the full amount. A flat withdrawal fee in BNB, set by the size of the withdrawal, is paid from the gas address, together with the network gas. See Fees for the fee table, how fees are collected, and examples. GET /v1/withdrawals/preview?asset=USDT&amount=5 shows the fees before you withdraw. When the gas balance is not enough, the API returns GAS_REQUIRED and the message includes the address to fund.
Creating an invoice address does not send a transaction. Do not send a transaction from the gas address before the first withdrawal. Only confirmed received amounts can be withdrawn. The merchant does not receive the account key or passphrase. Dashboard withdrawal uses the same rules.
curl -s https://zenvault.world/v1/withdrawals \
-H "Authorization: Bearer cx_test_example" \
-H "Idempotency-Key: withdraw_12345" \
-H "Content-Type: application/json" \
-d '{"asset":"USDT","amount":"10","network":"BSC","destination":"0x1111111111111111111111111111111111111111"}'