Contractor Final Payment Batch Sender (Any L2)
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
Contractor Final Payment Batch Sender (Any L2) is a specialised blockchain audit tool that enables project teams and procurement managers to prepare and verify batch final payments for contractors across any L2 network. It reads on-chain payment contract balances, checks token balances for multiple contractor wallets simultaneously, fetches token decimals to ensure accurate formatting, and retrieves current gas price estimates for cost planning. The tool also queries contractor final payment contract records, including program name and total distributed amounts, providing a consolidated view of the proposed payment plan alongside actual on-chain holdings. All data is presented in a clean table with per-address breakdowns, making it easy to spot discrepancies between intended final payments and on-chain balances. The interface is designed for rapid auditing of large contractor lists without requiring any on-chain transactions.
HOW TO USE
Connect your wallet to the appropriate L2 network using the built-in wallet bridge. Enter the contractor final payment contract address, optionally specify a token contract address (leave blank for native currency), and a list of contractor addresses with their final payment amounts (format: address,amount — one per line). Click the scan button — the tool will read the payment contract balance, query each contractor address for its current token balance, and calculate the total allocation against the contract balance. A progress bar shows real-time status, and results appear in a sortable table with final payment amounts and current balance columns. You can then use this data to prepare your contractor final payment distribution transaction with confidence. All operations are read-only and do not modify any state.
TECHNICAL MECHANISM
The tool uses ethers.js v5.7.2 to interact with the blockchain via the injected wallet provider. It performs batched eth_call requests with controlled concurrency (4 simultaneous queries) to avoid rate limits while maintaining responsiveness. For the payment contract address, it queries the total balance using the provider's getBalance method or the ERC-20 balanceOf method, and also attempts to read contract state including programName and totalDistributed via standard contractor final payment contract interfaces. For each contractor, it fetches the current balance to show the pre-distribution state. The tool parses payment amounts, converts them using the correct decimals, and sums them to compare against the contract balance. Gas price is fetched using ethers' getFeeData(), which returns the current network fee estimate. All queries use the view/pure function pattern, meaning they consume no gas and execute instantly.
WHAT IT CANNOT SEE
This tool cannot verify contractor final payment eligibility. It does not confirm whether contractors are entitled to final payments based on contract completion or work records. It cannot validate payment entitlement amounts — these must be provided by the project team based on their own records. The tool has no access to off-chain contract completion data, work records, or private decision-making records. It cannot determine whether the payment plan is compliant with internal policies or has received proper authorisation. It only reads what is publicly available on the blockchain through the contract interfaces you specify.
PLEASE NOTE
This tool is designed exclusively for EVM-compatible chains, including Optimism, Arbitrum, Base, Scroll, Mantle, Linea, and other L2 networks. It does not support non-EVM networks. The payment contract address you provide should implement standard contractor final payment distribution interfaces. Always verify the contractor list and final payment amounts before relying on the scan output. The tool is read-only and does not execute transfers or modifications. Always double-check that you are on the correct network before scanning.