S

Solidarity Basket

All articles

Smart Contract / English

English

Withdrawals

Only the beneficiary — the address that holds the credited balance — can withdraw. The platform does not run a daily “payout script” that moves family money. This page explains the withdraw functions and the operational model.

withdrawBNB

withdrawBNB(address payable to, uint256 amount) may be called by msg.sender only against bnbBalanceOf[msg.sender]. Insufficient balance reverts. Funds are sent via low-level call after the balance is reduced.

withdrawUSDT

withdrawUSDT(address to, uint256 amount) follows the same pattern for the USDT mapping and uses safeTransfer to the destination.

Who clicks withdraw

In the beneficiary dashboard, the connected wallet must be the same address that was set as the page beneficiary. The UI reads on-chain balances with bnbBalanceOf / usdtBalanceOf and proposes a full or partial withdrawal to that same wallet (or another address the beneficiary chooses as to).

Emergency path is not the normal path

An owner-only function exists for rare stuck native BNB situations. It is not a substitute for beneficiary withdrawals and should not be part of routine operations.