Docs
Supported ChainsXDC NetworkJSON-RPC APITransaction Methods

eth_getTransactionByHash - XDC Network RPC Method

Retrieve transaction details by hash on XDC Network. Essential for trade finance developers, enterprise blockchain teams, and RWA tokenization builders tracking transactions on the enterprise-grade blockchain for trade finance with 2-second finality and ISO 20022 compliance.

Returns the information about a transaction by transaction hash on XDC Network.

Why XDC Network? Build on the enterprise-grade blockchain for trade finance with 2-second finality and ISO 20022 compliance with ISO 20022 messaging, ITFA membership, Contour Network acquisition, 801M+ transactions, and partnerships with Circle and Deutsche Telekom.

Use Cases

The eth_getTransactionByHash method is essential for:

  • Transaction tracking - Get details of pending or confirmed transactions
  • Payment verification - Verify transaction parameters
  • Debugging - Analyze transaction data for tokenized trade finance (Letters of Credit, Bills of Lading), cross-border payments, and real-world asset tokenization
  • Block explorers - Display transaction information

Request Parameters

Request
transactionHashDATA

32-byte transaction hash

Response Body

Response
hashDATA

Transaction hash

fromDATA

Sender address

toDATA

Recipient address

valueQUANTITY

Value in wei

gasQUANTITY

Gas provided

gasPriceQUANTITY

Gas price in wei

inputDATA

Transaction input data

nonceQUANTITY

Sender's nonce

blockHashDATA

Block hash (null if pending)

blockNumberQUANTITY

Block number (null if pending)

Code Examples

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

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

const txHash = '0x60975ea1a0c8283193d6b1ea0b8ea7d37745e30703eeb15f82a3acf1c72ce8f3';
const tx = await provider.getTransaction(txHash);

if (tx) {
  console.log('From:', tx.from);
  console.log('To:', tx.to);
  console.log('Value:', formatEther(tx.value));
  console.log('Block:', tx.blockNumber);
}
Python
from web3 import Web3

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

tx_hash = '0x60975ea1a0c8283193d6b1ea0b8ea7d37745e30703eeb15f82a3acf1c72ce8f3'
tx = w3.eth.get_transaction(tx_hash)

if tx:
    print(f'From: {tx["from"]}')
    print(f'To: {tx["to"]}')
    print(f'Value: {w3.from_wei(tx["value"], "ether")}')
    print(f'Block: {tx["blockNumber"]}')
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-xdc-mainnet.n.dwellir.com/YOUR_API_KEY")
    if err != nil {
        log.Fatal(err)
    }

    txHash := common.HexToHash("0x60975ea1a0c8283193d6b1ea0b8ea7d37745e30703eeb15f82a3acf1c72ce8f3")
    tx, isPending, err := client.TransactionByHash(context.Background(), txHash)
    if err != nil {
        log.Fatal(err)
    }

    fmt.Printf("Pending: %v\n", isPending)
    fmt.Printf("Value: %s\n", tx.Value().String())
}

Error Handling

Error CodeMessageDescription
-32602Invalid paramsInvalid transaction hash format