Transaction status

$0.001 per call · USDC via x402 · GET /api/tx-status · Cached 1m

Check the confirmation status of a transaction by hash on Base/Polygon/Arbitrum/Optimism/Ethereum/Monad/Celo/Avalanche/Sei/Robinhood Chain: success / failed / pending / not found, with block, from, to, gas used. Send GET /api/tx-status with the required field hash and pay $0.001 per call over x402 or MPP (there is no free tier). It returns a JSON object with hash, network, status, blockNumber, from and 2 more.

Read-only. ?hash=0x…&network=base

Category: Payments & x402 · Tags: transaction status receipt confirmation multichain robinhood usdg · Also found as: tx

TRY IN PLAYGROUND →

Parameters

NameTypeRequiredDescription
hashstringyes0x transaction hash Also accepted as tx, txid, txHash, tx_hash, transaction, signature.
networkstringnochain: base | polygon | arbitrum | optimism | ethereum | monad | celo | avalanche | sei | robinhood (default base)

Example request

curl -i "https://agent402.tools/api/tx-status?hash=0x2f1fecade9bd945e7817c11e5a34cafe6b349dd8c92a7587efed1de476bddfeb&network=base"

Without payment this returns HTTP 402 Payment Required with the exact price for tx-status; any x402 v2 or MPP client pays it and retries.

Example response

{
  "hash": "0x2f1fecade9bd945e7817c11e5a34cafe6b349dd8c92a7587efed1de476bddfeb",
  "network": "base",
  "status": "success",
  "blockNumber": 50829610,
  "from": "0x…",
  "to": "0x…",
  "gasUsed": 91958
}
FieldTypeAlways presentIn the example
hashstringno0x2f1fecade9bd945e7817c11e5a34cafe6b349dd8c92a7587efed1de476bddfeb
networkstringnobase
statusstringnosuccess
blockNumbernumberno50829610
fromstringno0x…
tostringno0x…
gasUsednumberno91958

From an MCP client

catalog.call {
  "slug": "tx-status",
  "params": {
    "hash": "0x2f1fecade9bd945e7817c11e5a34cafe6b349dd8c92a7587efed1de476bddfeb",
    "network": "base"
  }
}

The hosted connector at https://agent402.tools/mcp needs a payment for tx-status; the stdio package pays it from a wallet or from AGENT402_CREDITS_KEY. Local install: npx -y agent402-mcp.

Errors and behavior

Paid call (JavaScript agent)

import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
client.setSpendControls?.(false); // keep your own spending ceiling in code
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);

const res = await payFetch("https://agent402.tools/api/tx-status?hash=0x2f1fecade9bd945e7817c11e5a34cafe6b349dd8c92a7587efed1de476bddfeb&network=base");

Part of these workflows

Transaction status is one step in this skill pack, each sold as a single call:

Related tools

Gas price

$0.001 · GET /api/gas-estimate

Current gas price on Base, Polygon, Arbitrum, Optimism, Ethereum, Monad, Celo, Avalanche, Sei, or Robinhood Chain - for …

Verify x402 settlement

$0.004 · GET /api/x402-verify

Confirm a USDC payment actually settled: given a tx hash (and network), returns whether it succeeded and the USDC transf…

Rate a call you paid for

$0.001 · POST /api/feedback

Tell this server whether a call you paid for delivered what it promised. Bound to the receipt: give it the settlement tr…

Build USDC transfer authorization

$0.003 · POST /api/transfer-authorization

Build the EIP-3009 transferWithAuthorization typed data for a gasless USDC transfer on Base/Polygon/Arbitrum/Optimism/Et…

USDC balance

$0.003 · GET /api/usdc-balance

Read the USDC balance of any address on Base, Polygon, Arbitrum, Optimism, Ethereum, Monad, Celo, Avalanche, or Sei. Rea…

Transaction receipt (decoded transfers)

$0.003 · POST /api/tx-receipt

Full receipt for a transaction hash in one call: status, block, from/to, value, gas used vs limit, effective gas price, …