Airdrop Clawback Executor
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
This tool executes clawback operations on airdrop distributor contracts, allowing the authorized owner or administrator to recover unclaimed tokens. You specify the distributor contract address, the token address, and a recovery address (defaults to your wallet). The tool automatically detects and invokes the appropriate clawback function—recoverUnclaimed, withdrawRemaining, terminate, or clawback—based on what the contract supports. It can recover all unclaimed tokens, a partial amount, or terminate the contract entirely if that function is available. The tool reads the distributor's token balance, verifies ownership (if an owner() function exists), and executes the recovery transaction with a single click.
HOW TO USE
Connect your EVM wallet to the network where the distributor contract is deployed. Enter the distributor contract address and the ERC20 token address you want to recover. Optionally specify a custom recovery address; if left blank, your connected wallet address will be used. Choose the clawback mode: "Claw back all" to recover all unclaimed tokens, "Claw back partial" to recover a specific amount (enter the amount in human-readable units), or "Terminate contract" to permanently close the distributor (if the contract supports termination). Set the token decimals if different from the default of 18. Review the on-chain balance and the clawback summary, then click Execute Clawback. The tool will estimate gas, send the transaction, and display the result with the transaction hash and gas cost.
TECHNICAL MECHANISM
The tool dynamically probes the distributor contract for common clawback function signatures using ethers.js. It attempts to call recoverUnclaimed(address token, address recipient) first, which is the most widely used pattern in OpenZeppelin's TokenDistributor and MerkleDistributor variants. If that fails, it falls back to withdrawRemaining(address token, address recipient) and then to clawback(address token, address recipient, uint256 amount) for partial recoveries. For termination, it attempts terminate(address token, address recipient). The tool uses static calls to check if a function exists before sending a transaction, preventing failed transactions due to missing functions. It also reads the distributor's token balance using balanceOf and displays it in the UI before execution. The gas price is estimated using the provider's fee data, and post-EIP-1559 transactions use effectiveGasPrice from the receipt for accurate cost reporting. The tool validates that the caller is the owner (if an owner() view function exists) and warns if not, but does not block execution—this allows contracts with different authorization schemes to still be used.
WHAT IT CANNOT SEE
This tool cannot verify off-chain reasons for clawback, such as fraud, policy violation, or sybil detection—it only acts on on-chain conditions. It cannot prove that a user was ineligible beyond what is encoded in the contract's claim logic. It cannot recover tokens that have already been claimed or transferred out of the distributor. It cannot reverse claims once they have been executed. It cannot guarantee that revoked tokens will not be lost if the distributor contract lacks a clawback function—the tool attempts multiple function signatures, but some contracts may have custom or non-standard recovery mechanisms. It cannot monitor the distributor for ongoing claims during the clawback process; claims may still be executed in the same block. It also cannot detect if the recovery address is a contract that might revert or block the transfer.
PLEASE NOTE
EVM chains only. This tool works with any EVM-compatible network that supports standard ERC20 and distributor patterns. Only execute clawback if you are the authorized owner or administrator of the distributor contract. Clawback operations are irreversible—once tokens are recovered, they cannot be returned to the distributor through this tool. Always test on testnet first with a small amount. The tool does not store any data; all state is on-chain. Gas costs vary by network and contract complexity. For contracts with custom clawback functions not covered by the standard signatures, you may need to interact directly via a custom script.