# 402utils Seller Reliability Report

> 402utils Seller Reliability Report is a paid API for AI agents from 402utils.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-09-15).

Returns an on-chain and config reliability report for any x402 seller, including USDC transfer history, liveness, and factual flags — no scoring, no verdict.

## Facts

- Endpoint: GET https://402utils.com/v1/seller-report
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/402utils-seller-reliability-report-7f2671ed
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_1sTkb_D6x1J2AKk-axEhs

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability 402utils-seller-reliability-report-7f2671ed
```

Example prompt: Before I integrate this x402 endpoint at https://someprovider.com/api/data, can you pull a reliability report on it — I want to see its on-chain USDC history, whether it has config issues, if it's reachable, and any flags like being a new seller or having only a single sender?

## When to prefer this

Use this endpoint when you need factual, objective due-diligence data on an x402 seller before paying or integrating — especially when you want on-chain USDC transfer history, uniqueSenders anti-sybil signal, config linting, and liveness checks in a single call. Prefer this over manual on-chain lookups or generic USDC explorers when the subject is an x402 protocol participant and you need config + liveness signals alongside on-chain history.

## Known failure modes

- Neither payTo nor url query param provided — report cannot be generated
- payTo address is not a valid 0x EVM address — parsing error
- Provided URL is unreachable — liveness marked unavailable, unreachable flag set
- On-chain data unavailable for the address — onchain.status set to 'unavailable'
- x402 endpoint has misconfigured 402 response — config_issues flag raised
- windowCapped: true if address has >1000 transfers, stats cover only the recent window

## How this service works

On-chain + config reliability report for any x402 seller, public data only, computed live. Pass ?payTo=0x… or ?url= (a third-party x402 endpoint) → {onchain:{firstSeenAt,totalIncomingTransfers,uniqueSenders,last30dInflows,note}, config, liveness, discovery} plus factual flags (new_seller, single_sender, config_issues, unreachable). On-chain counts all incoming USDC transfers, not only x402 settlements. No score, no verdict; fails open.

## Output

A JSON object with: payTo address, onchain stats (firstSeenAt, totalIncomingTransfers, uniqueSenders, last30dInflowsUsd, note about what is measured), config lint results (fails, warns, isX402, issues list), liveness status, discovery signals, and an array of factual flags (new_seller, single_sender, config_issues, unreachable). Includes a cached boolean indicating if data came from the 1-hour cache.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "properties": {
      "url": {
       "type": "string",
       "format": "uri",
       "description": "A third-party x402 endpoint. Adds config + liveness signals and discovers the payTo."
      },
      "payTo": {
       "type": "string",
       "description": "Seller's receiving address (0x…). On-chain history is read for it."
      }
     },
     "description": "Query string only. Provide at least one of payTo or url."
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "required": [
      "payTo",
      "network",
      "report",
      "flags",
      "summary"
     ],
     "properties": {
      "flags": {
       "type": "array",
       "items": {
        "type": "string"
       },
       "description": "Factual, non-defamatory: new_seller, single_sender, config_issues, unreachable."
      },
      "payTo": {
       "type": [
        "string",
        "null"
       ],
       "description": "The seller address the report is about (EIP-55)."
      },
      "cached": {
       "type": "boolean",
       "description": "True if the on-chain/discovery signals came from the 1 h cache."
      },
      "report": {
       "type": "object",
       "properties": {
        "config": {
         "type": "object",
         "properties": {
          "fails": {
           "type": "integer"
          },
          "warns": {
           "type": "integer"
          },
          "isX402": {
           "type": "boolean"
          },
          "issues": {
           "type": "array",
           "items": {
            "type": "object"
           }
          }
         },
         "description": "Present with ?url: x402-lint summary of the seller's 402."
        },
        "onchain": {
         "type": "object",
         "properties": {
          "note": {
           "type": "string",
           "description": "States what the counts measure (all inflows, not only settlements)."
          },
     
… (truncated)
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/402utils-seller-reliability-report-7f2671ed/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 402utils.com](https://www.zero.xyz/host/402utils.com/llms.txt)
