ドラランプ・デジタルドル
dolaramp
changelog blog
← changelog

Payouts larger than the balance are refused

apibreaking change
// shippeda withdrawal asks for an amount and either sends all of it or nothing, and your team hears on telegram before the hotwallet runs dry.
// breaking change · what you need to changeon TRON a payout larger than what the hotwallet can send used to go out capped. it is now refused with 400 insufficient_balance (with balance, available and reserved_for_fees) and a withdraw.failed webhook with reason: insufficient_balance. if you want the old behaviour, send allow_partial: true; otherwise size payouts from available.

all or nothing, unless you ask

on every network, a withdrawal larger than what the hotwallet can send is refused with 400 insufficient_balance. nothing leaves. on tron, where our fees are set aside in the hotwallet until they are collected, the error carries balance, available, reserved_for_fees and a hint, so you can size the payout or top up by the difference.

the refusal is also an event: withdraw.failed with reason: insufficient_balance goes to your webhook and your team's telegram, so a payout queue can top up and retry.

on tron you can still choose to send what fits: pass allow_partial: true. the response and the webhook then say recipient_receives and capped_for_fees: true. without that flag, a payout is never sent partially. details in the api reference.

a warning before the hotwallet runs dry

after each tron withdrawal, if what is free in the hotwallet drops under a floor, your team chat gets a hotwallet.low alert with the balance, what is free and what is reserved. it is telegram-only, no webhook, and free.

the floor starts at $200 and is yours to change, in three places that set the same value: the hotwallet floor field in the panel's alerts tab, PUT /v1/alerts/profile with hotwallet_low_usd, or /floor 500 typed in a team chat (/floor default goes back to the platform value). customer chats cannot change it.

fixes and improvements

  • the ledger records the amount that actually left the hotwallet; the requested amount is kept alongside.