---
title: "Check a Base transaction or x402 settlement"
method: GET
path: "/api/x402/base/tx-check"
tags: ["base-onchain-data", "x402-paid"]
---

# Check a Base transaction or x402 settlement

`GET /api/x402/base/tx-check`

## Request

- Base URL: `https://ontarioprotocol.com`
- URL: `https://ontarioprotocol.com/api/x402/base/tx-check`
- Auth: none required

Status, block, timestamp and confirmations for one Base transaction, with its ERC-20 Transfers decoded (up to 100 listed; transfers_total gives the full count), EIP-3009 authorizations used, and match flags for an optional expected payTo and USDC amount. 0.002 USDC on Base; a hash that is not found is not charged.

## Query parameters

- `hash` string, required
- `expected_to` string
- `expected_amount` string

## Response `200`

Successful live read; the payment settled

- object
  - `authorizations_used` object[], required
    - `authorizer` string, required
    - `nonce` string, required
    - `token` string, required
  - `block` integer, required
  - `confirmations` integer, required
  - `expected` object
    - `amount_atomic` string, nullable
    - `amount_matches` boolean
    - `to` string, nullable
    - `to_matches` boolean
  - `from` string, nullable
  - `hash` string, required
  - `network` 'eip155:8453', required
  - `schema` 'ontario.base_tx_check.v1', required
  - `source` 'Base RPC', required
  - `status` 'success' | 'reverted', required
  - `timestamp` string, nullable, required
  - `timestamp_note` string
  - `to` string, nullable
  - `transfers` object[], required: ERC-20 Transfers in log order, up to 100; transfers_total gives the full count.
    - `decimals` integer, nullable
    - `formatted` string, nullable, required
    - `from` string, required
    - `raw` string, required
    - `symbol` string, nullable, required
    - `to` string, required
    - `token` string, required
  - `usdc_payment` object, nullable

## Other responses

- `400`: Signed request refused before settlement; no payment taken
- `402`: x402 payment challenge (every unsigned request)
- `404`: Transaction not found or still pending; payment not settled
- `503`: Base RPC unavailable; payment not settled

## Changes

- **2026-10-25** `39920cff9aa5`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/ontarioprotocol/apis/ontario-protocol-x402-api/changes/api/x402/base/tx-check/get.md)

---

[API](https://skmtc.dev/ontarioprotocol/apis/ontario-protocol-x402-api.md) - [All operations](https://skmtc.dev/ontarioprotocol/apis/ontario-protocol-x402-api/llms.txt) - [OpenAPI document](https://skmtc.dev/ontarioprotocol/apis/ontario-protocol-x402-api/revisions/c4bb7fd32b2f?raw)
