Docs
Supported ChainsFlow EVM GatewayJSON-RPC APITransaction Methods

eth_getTransactionReceipt - Flow EVM RPC Method

Get transaction receipt with status and logs on Flow EVM Gateway. Essential for verifying transaction execution for consumer NFTs (NBA Top Shot, Disney Pinnacle), gaming dApps, and hybrid Cadence-EVM applications.

Returns the receipt of a transaction by transaction hash on Flow EVM Gateway. Receipt is only available for mined transactions.

Why Flow EVM? Build on the EVM-equivalent layer on Flow blockchain enabling Cadence+Solidity composability with full EVM equivalence on Flow, atomic multi-operation transactions, 40% lower gas fees, and 473% contract growth in 2025.

Use Cases

The eth_getTransactionReceipt method is essential for:

  • Transaction confirmation - Verify transaction was mined successfully
  • Gas analysis - Check actual gas used vs estimated
  • Event parsing - Read emitted events from logs
  • Status verification - Confirm success/failure for consumer NFTs (NBA Top Shot, Disney Pinnacle), gaming dApps, and hybrid Cadence-EVM applications

Request Parameters

Request
transactionHashDATA

32-byte transaction hash

Response Body

Response
statusQUANTITY

1 (success) or 0 (failure)

transactionHashDATA

Transaction hash

blockHashDATA

Block hash

blockNumberQUANTITY

Block number

gasUsedQUANTITY

Gas used by this transaction

cumulativeGasUsedQUANTITY

Total gas used in block up to this tx

logsArray

Array of log objects

contractAddressDATA

Created contract address (if deployment)

Code Examples

Bash
curl -X POST https://api-flow-evm-gateway-mainnet.n.dwellir.com/YOUR_API_KEY \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "method": "eth_getTransactionReceipt",
    "params": ["0xac905cb8672fe39508dab7199529d77b32d459242ad9d3f6799e4e427d6003f8"],
    "id": 1
  }'
JavaScript
import { JsonRpcProvider } from 'ethers';

const provider = new JsonRpcProvider('https://api-flow-evm-gateway-mainnet.n.dwellir.com/YOUR_API_KEY');

const txHash = '0xac905cb8672fe39508dab7199529d77b32d459242ad9d3f6799e4e427d6003f8';
const receipt = await provider.getTransactionReceipt(txHash);

if (receipt) {
  console.log('Status:', receipt.status === 1 ? 'Success' : 'Failed');
  console.log('Gas Used:', receipt.gasUsed.toString());
  console.log('Block:', receipt.blockNumber);
  console.log('Logs:', receipt.logs.length);

  // Parse specific events
  for (const log of receipt.logs) {
    console.log('Event from:', log.address);
  }
}
Python
from web3 import Web3

w3 = Web3(Web3.HTTPProvider('https://api-flow-evm-gateway-mainnet.n.dwellir.com/YOUR_API_KEY'))

tx_hash = '0xac905cb8672fe39508dab7199529d77b32d459242ad9d3f6799e4e427d6003f8'
receipt = w3.eth.get_transaction_receipt(tx_hash)

if receipt:
    status = 'Success' if receipt['status'] == 1 else 'Failed'
    print(f'Status: {status}')
    print(f'Gas Used: {receipt["gasUsed"]}')
    print(f'Block: {receipt["blockNumber"]}')
    print(f'Logs: {len(receipt["logs"])}')
Go
package main

import (
    "context"
    "fmt"
    "log"

    "github.com/ethereum/go-ethereum/common"
    "github.com/ethereum/go-ethereum/ethclient"
)

func main() {
    client, err := ethclient.Dial("https://api-flow-evm-gateway-mainnet.n.dwellir.com/YOUR_API_KEY")
    if err != nil {
        log.Fatal(err)
    }

    txHash := common.HexToHash("0xac905cb8672fe39508dab7199529d77b32d459242ad9d3f6799e4e427d6003f8")
    receipt, err := client.TransactionReceipt(context.Background(), txHash)
    if err != nil {
        log.Fatal(err)
    }

    fmt.Printf("Status: %d\n", receipt.Status)
    fmt.Printf("Gas Used: %d\n", receipt.GasUsed)
    fmt.Printf("Logs: %d\n", len(receipt.Logs))
}

Error Handling

Error CodeMessageDescription
-32602Invalid paramsInvalid transaction hash

Note: Returns null if transaction is not yet mined.