Ethereum: Transaction executor icon

Ethereum: Transaction executor

Execute Ethereum transaction

Overview

This node executes Ethereum blockchain transactions using a provided signed transaction. It supports multiple Ethereum-compatible blockchains and testnets, allowing users to send ETH or interact with smart contracts by specifying calldata and other transaction parameters.

Common scenarios include:

  • Sending ETH from one address to another.
  • Invoking smart contract functions by providing calldata and signature.
  • Automating transaction submission on various Ethereum networks and Layer 2 solutions like Optimism and Base.

Practical example:

  • A user wants to programmatically transfer ETH on the Ethereum Sepolia testnet by specifying recipient address, amount, nonce, gas limit, calldata (if calling a contract), and a valid signature. The node submits the transaction and returns the receipt once mined.

Properties

Name Meaning
Blockchain Target blockchain network. Options: Ethereum Mainnet, Ethereum Sepolia (testnet), Ethereum Holesky (testnet), Optimism Mainnet, Optimism Sepolia (testnet), Base Mainnet, Base Sepolia (testnet).
Recipient Address The destination Ethereum address for the transaction.
Value Amount of ETH to send in the transaction (supports up to 8 decimal places).
Nonce Transaction nonce to ensure correct ordering on the blockchain.
Calldata Hexadecimal calldata payload for contract interaction or empty string for simple ETH transfer.
Signature Cryptographic signature authorizing the transaction.
Gas Limit Maximum gas units allowed for the transaction execution.

Output

The node outputs an array of JSON objects, each containing a receipt field representing the transaction receipt returned by the blockchain after the transaction is mined. This receipt includes details such as transaction hash, status, gas used, logs, and block information.

No binary data output is produced.

Example output structure:

{
  "receipt": {
    "to": "0xRecipientAddress",
    "from": "0xSenderAddress",
    "contractAddress": null,
    "transactionIndex": 1,
    "gasUsed": "21000",
    "logsBloom": "...",
    "blockHash": "...",
    "transactionHash": "...",
    "logs": [...],
    "blockNumber": 1234567,
    "confirmations": 1,
    "cumulativeGasUsed": "21000",
    "effectiveGasPrice": "...",
    "status": 1,
    "type": 2,
    "byzantium": true
  }
}

Dependencies

  • Requires an API key credential with access to Ethereum-compatible blockchain nodes via RPC endpoints.
  • Uses the ethers library for blockchain interaction and transaction signing.
  • The node internally selects the appropriate RPC endpoint based on the chosen blockchain network.
  • No additional environment variables are required beyond the API key credential.

Troubleshooting

  • Invalid Signature or Private Key: If the signature or private key is incorrect or missing, the transaction will fail to send. Ensure the signature matches the transaction data and the private key corresponds to the sender address.
  • Nonce Errors: Using an incorrect nonce can cause transaction rejection or replacement issues. Verify the nonce matches the sender's current transaction count.
  • Insufficient Gas Limit: Setting gas limit too low may cause out-of-gas errors. Adjust gas limit according to the complexity of the transaction.
  • Network Connectivity Issues: Failure to connect to the specified blockchain endpoint will prevent transaction submission. Check API key validity and network availability.
  • Value Conversion: The value property is converted to Ether units; ensure the input number is correctly formatted and within acceptable range.

Links and References

Discussion