Screen a payee before paying: wallet risk check API (OFAC)

$0.01 per call · failed calls are never charged · no account or subscription: pay per call with a card key or USDC

Screen a payee before paying, trading or onboarding: one call vets an address on Base, Ethereum, Arbitrum or Optimism with an OFAC SDN match, account type and activity, USD holdings and, on Base, wallet or contract risk checks; add the payee's domain for its age and trust flags. One block, review or pass verdict with reasons. Screening aid, not legal advice or a security audit. Use before paying, trading with or onboarding an address.

When to use it

Guide: OFAC wallet screening API

Run it free (25 free calls) Buy credits by card (from $1) Example result (JSON)

Try it with your own inputs

0x address to check

Uses one of your 25 free calls. Nothing is charged, and a call that fails is not counted.

Inputs

NameTypeDescription
address (required)string0x address to check
chainstringNetwork: base (default), eth, arb or op. One of: base, eth, arb, op.
domainstringOptional: the payee's domain or website URL, e.g. ethereum.org; adds domain age and trust flags

Request

Over HTTP, with a card key from /credits:

curl -H "Authorization: Bearer adt_…" "https://tools.funwords.eu/check/counterparty?address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"

Or one of your 25 free calls, no key:

curl "https://tools.funwords.eu/check/counterparty?address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&trial=1"

Without a key, the same URL answers 402 Payment Required with x402 and MPP terms, so an agent with a wallet pays per call in USDC (Base, Polygon, Arbitrum or Solana over x402; Base or Tempo over MPP) and retries.

Example result

{
  "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
  "chain": "base",
  "verdict": "pass",
  "reasons": [],
  "sanctions": {
    "listed": false,
    "matches": [],
    "listDate": "2026-10-17T20:15:00.000Z"
  },
  "account": {
    "type": "eoa",
    "riskLevel": "low",
    "riskFlags": [],
    "accountNonce": 1234
  },
  "contract": null,
  "domain": {
    "name": "ethereum.org",
    "trust": "high",
    "ageDays": 4100,
    "registeredAt": "2015-03-21T00:00:00Z",
    "flags": []
  },
  "holdings": {
    "totalUsd": 1234.56,
    "tokensChecked": 9
  },
  "limitations": [],
  "note": "Screening aid only: confirm any sanctions match against the official OFAC record; heuristics are not a security audit."
}

From an AI agent (MCP)

Add the MCP server to Claude, Cursor or any MCP client. This tool is check_counterparty, and the first 25 successful calls are free:

https://tools.funwords.eu/mcp

Questions

Which networks?

Base, Ethereum, Arbitrum and Optimism.

What does the verdict mean?

Block, review or pass, with the reasons that produced it. It is a screening aid, not a security audit.

How do I pay?

Each successful call costs $0.01; failed calls are not charged. The first 25 calls are free. Then pay with card credits (from $1; the key goes in an Authorization header or, for clients that can only fetch a URL, as api_key= in the URL) or per call in USDC over x402 or MPP. No account is needed.

Related tools