202 pending
most withdrawals still answer 200 with status: confirmed once the transfer lands. sometimes the transfer is already on the network but its landing is not seen in time. that call now answers 202 with status: pending, the operation_id and the tx_hash (on tron, the trace_id) when known.
it is never reported as failed at that point. the outcome arrives later, usually within a minute, as withdraw.confirmed or withdraw.failed with a reason: not_landed, onchain_reverted, onchain_error or gasfree_failed. retrying with the same idempotency_key returns the same operation and never sends twice. after a withdraw.failed nothing left the hotwallet. the api reference has the schema.
send what's available, in the panel
the panel always asks for the full amount. when a tron withdrawal is larger than the hotwallet can send, it now tells you in plain words: the hotwallet can send $X right now, $Y is reserved, nothing was sent.
next to that message there is a send the available amount button. it resends the same withdrawal with allow_partial: true, so a partial payout only happens when someone clicks for it, never on its own. the wording is in english, portuguese and spanish.
api integrations keep the same rule: a payout larger than the balance is refused unless the call asks for allow_partial.
fixes and improvements
- the withdrawal response now carries
operation_id, to match withGET /v1/operationsand webhooks.