Ethers.js Transaction Builder
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
Ethers.js Transaction Builder lets you construct raw transaction objects for any contract interaction. Paste your contract ABI, enter the contract address, select a function, and provide parameter values—the tool encodes the function call into transaction data using ethers.js, and generates a complete transaction object with configurable gas limit, gas price, and nonce. It also produces a ready-to-use ethers.js code snippet that you can drop into your project. This is essential for developers who need to build, test, or debug contract transactions without actually sending them on-chain, or who want to understand the raw data behind a contract call.
HOW TO USE
Connect your EVM wallet (optional—the tool works read-only). Enter your contract ABI as a JSON array and the contract address. The tool automatically parses the ABI and populates a dropdown with all available functions. Select a function and enter the parameter values as a comma-separated list (following the order in the function signature). Optionally set gas limit, gas price (in Gwei), and nonce. Click "build transaction" to generate the transaction object and a code snippet. The tool displays the encoded data, the full transaction object, and a ready-to-use ethers.js code snippet with copy buttons. Use the "clear" button to reset all fields.
TECHNICAL MECHANISM
The tool uses ethers.js v5.7.2 to parse the ABI and encode function calls. It creates an ethers.utils.Interface from the provided ABI, then uses interface.encodeFunctionData(functionName, params) to generate the transaction data. The function fragment is resolved by name, handling overloaded functions correctly. Parameter values are parsed from the input string—addresses are passed as hex strings, numbers as integers or floats, and strings with quotes are handled as string literals. The transaction object is assembled with the contract address, encoded data, and optional gasLimit (as ethers.BigNumber), gasPrice (parsed from Gwei to wei), and nonce. The tool outputs the transaction as a JSON object and as a JavaScript code snippet with comments for sending the transaction using a signer.
WHAT IT CANNOT SEE
This tool cannot sign or broadcast transactions—it only constructs the transaction object. It cannot verify that the generated transaction will succeed on-chain—the transaction may fail due to insufficient balance, revert conditions, or other on-chain factors. It cannot handle complex transaction types (e.g., EIP-1559 with maxPriorityFeePerGas, blob transactions) beyond basic gas price and gas limit. It cannot decode or simulate the transaction—you must use a separate tool for that. It cannot detect function overloading automatically beyond using the provided name. It cannot validate that the parameter values match the expected types—incorrect types may cause encoding errors. The tool is limited by the accuracy of the provided ABI and user inputs.
PLEASE NOTE
Works exclusively with EVM-compatible contracts and uses ethers.js v5.7.2. Solana, Tron, Starknet, SUI, TON, Aptos, Bitcoin, Cosmos, and XRP are not supported. The generated transaction object is not signed and cannot be broadcast without a wallet signer. This is a free developer tool—use it for transaction construction and debugging, but always test the generated transaction in a safe environment before deploying to production.