{"uid":"cap_zNsiE4uQ2BGFSmgNNLUdG","slug":"wallet-safety-checks-076baad5","name":"Wallet Safety Checks","description":"Is it safe to pay this address? One check before sending or accepting crypto: OFAC SDN sanctions screen, wallet age, EOA or contract, first funder and recent large transfers on Base, Ethereum, Arbitrum, Optimism or Polygon (wallet kind and activity on Solana), plus the token's 0-100 risk score when a token is given. Returns ok, caution or block with plain reasons and each check in full. Rules-based, not legal advice.","url":"https://onchaincheck.dev/check?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"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","required":["address"],"properties":{"chain":{"enum":["base","eth","arbitrum","optimism","polygon","solana"],"type":"string","description":"Chain of the payment; defaults to solana for base58 addresses, otherwise base"},"token":{"type":"string","pattern":"^(0x[0-9a-fA-F]{40}|[1-9A-HJ-NP-Za-km-z]{32,44})$","description":"Token being paid or received (contract or mint on the same chain); adds its risk score"},"expect":{"enum":["any","eoa","contract"],"type":"string","description":"What the address should be: eoa (a wallet), contract, or any (default); a mismatch gives caution"},"address":{"type":"string","pattern":"^(0x[0-9a-fA-F]{40}|[1-9A-HJ-NP-Za-km-z]{32,44})$","description":"Address you are about to pay or receive from"}},"additionalProperties":false}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object"}}}}},"responseSchema":{"type":"json","example":{"chain":"base","notes":"Screens only the digital currency addresses that OFAC publishes on its SDN list, from a copy dated listAsOf. It is not legal advice and not a complete sanctions or AML check: it doesn't cover addresse… (240 chars, truncated in this example)","rules":"block if the address or token contract is on the OFAC SDN list; caution if the wallet's first activity is under 7 days old, it has no activity, it isn't the expected kind (expect=eoa or contract), the… (240 chars, truncated in this example)","token":{"name":"Degen","risk":{"level":"low","score":15,"reasons":[{"code":"can-pause","text":"The owner can pause all transfers.","points":10},{"code":"owner-not-renounced","text":"Ownership is not renounced.","points":5}],"summary":"Low risk: the owner can pause all transfers; ownership is not renounced."},"asset":{"known":false},"chain":"base","flags":{"canMint":false,"ownerCanAct":true,"upgradeable":false,"canBlacklist":false,"noLiquidPool":false,"canChangeFees":false,"thinLiquidity":false},"notes":"Privileged functions are detected from bytecode selectors and may have false positives or misses. Liquidity is the WETH or USDC held by the deepest Uniswap v3 or aerodrome pool found.","owner":"0x704Ec5C12Ca20a293C2C0B72B22619A4231f3c0d","proxy":{"upgradeable":false},"market":{"dex":"uniswap-v3","pool":"0xc9034c3E7F58003E6ae0C8438e7c8f4598d5ACAA","priceUsd":0.000959674,"feeTierBps":30,"pairedWith":"WETH","poolsFound":10,"fullyDilutedValueUsd":34520000,"quoteSideLiquidityUsd":133000},"symbol":"DEGEN","address":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","decimals":18,"nativeUsd":{"price":2402.43,"source":"Chainlink ETH/USD","symbol":"ETH","updatedAt":"2026-10-23T06:25:27.000Z"},"totalSupply":35967154646.5,"ownershipRenounced":false,"privilegedFunctions":{"mint":false,"pause":true,"setFees":false,"blacklist":false,"tradingSwitch":false,"maxTransaction":false}},"checks":{"token":"ok","wallet":"ok","sanctions":"ok"},"expect":"any","wallet":{"age":{"ageDays":886.53,"firstDirection":"in","firstActivityAt":"2024-05-19T17:46:01.000Z","firstActivityTx":"0x5f454db47b81efe7131819debc259678524c550771a0262b9cb486d58b5ba799","firstActivityBlock":14675707},"chain":"base","notes":"From Alchemy's transfer index: ETH (top-level only), ERC-20, ERC-721 and ERC-1155 transfers, zero-value ones excluded. Activity, counterparties and large transfers cover the newest 100 transfers in ea… (240 chars, truncated in this example)","account":{"kind":"minimal proxy (often a smart-contract wallet)","isContract":true,"nativeBalance":"7.554675633166555733","nativeBalanceUsd":18149.579},"address":"0x2211d1D0020DAEA8039E46Cf1367962070d77DA9","activity":{"newestAt":"2026-10-23T05:32:03.000Z","byCategory":{"erc20":193,"erc721":7},"moreHistory":true,"inboundScanned":100,"oldestScannedAt":"2026-03-04T20:47:51.000Z","outboundScanned":100,"transfersScanned":200},"nativeUsd":{"price":2402.43,"source":"Chainlink ETH/USD","symbol":"ETH","updatedAt":"2026-10-23T06:25:27.000Z"},"firstFunder":{"at":"2024-05-19T17:46:01.000Z","tx":"0x5f454db47b81efe7131819debc259678524c550771a0262b9cb486d58b5ba799","asset":"ETH","amount":1,"address":"0x1985EA6E9c68E1C272d8209f3B478AC2Fdb25c87"},"largeTransfers":[{"at":"2026-06-11T18:24:41.000Z","usd":10000,"hash":"0x946b81e380e8efa4ba6e90b9eb22b76733b331a1613c5f540ff93d0ef0de8759","asset":"USDC","block":47206467,"token":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":10000,"category":"erc20","direction":"out","counterparty":"0xf605767BB0636FE082B20b2999A6957e3c772378"},{"at":"2026-03-15T05:58:07.000Z","usd":1000,"hash":"0x980b5e79d2c9aca49de1b0dbed6303cbc76f1003eb463e04af3086839efb8540","asset":"USDC","block":43382470,"token":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","amount":1000,"category":"erc20","direction":"out","counterparty":"0x944766f715b51967E56aFdE5f0Aa76cEaCc9E7f9"}],"recentTransfers":[{"at":"2026-10-23T05:32:03.000Z","usd":null,"hash":"0xfa9eb05cc39d5837f798e4af956c2d5701e7caedb1ed870b8cc7719a79616adc","asset":"ZORA","block":52972088,"token":"0x1111111111166b7FE7bd91427724B487980aFc69","amount":1.176424941,"category":"erc20","direction":"in","counterparty":"0xC8d077444625eB300A427a6dfB2b1DBf9b159040"},{"at":"2026-10-23T04:54:45.000Z","usd":null,"hash":"0x86f49f84cfc339368a9e60506d1c5f53b22b7584dfd1e6e4a2785aa0230c70c0","asset":"ZORA","block":52970969,"token":"0x1111111111166b7FE7bd91427724B487980aFc69","amount":38.73637901,"category":"erc20","direction":"in","counterparty":"0xC8d077444625eB300A427a6dfB2b1DBf9b159040"}],"topCounterparties":[{"sent":0,"lastAt":"2026-10-23T05:32:03.000Z","address":"0xC8d077444625eB300A427a6dfB2b1DBf9b159040","received":54,"transfers":54},{"sent":0,"lastAt":"2026-10-23T04:50:31.000Z","address":"0x4Ee35c658b8032a7577096B60bd51Ae9909E4f98","received":30,"transfers":30}]},"address":"0x2211d1D0020DAEA8039E46Cf1367962070d77DA9","reasons":[{"code":"not_sanctioned","text":"The address is not found on the OFAC SDN list as of 2026-10-21.","level":"info"},{"code":"wallet_age","text":"First activity was 886 days ago.","level":"info"},{"code":"account_kind","text":"The address is a contract (minimal proxy (often a smart-contract wallet)), not a wallet (EOA).","level":"info"},{"code":"token_risk","text":"Token risk is low (15/100): Low risk: the owner can pause all transfers; ownership is not renounced.","level":"info"}],"summary":{"kind":"minimal proxy (often a smart-contract wallet)","ageDays":886.53,"isWallet":false,"listAsOf":"2026-10-21","tokenRisk":{"level":"low","score":15},"sanctioned":false,"firstFunder":"0x1985EA6E9c68E1C272d8209f3B478AC2Fdb25c87","newestActivityAt":"2026-10-23T05:32:03.000Z","largeTransfersRecent":2},"verdict":"ok","sanctions":{"result":"not found on the OFAC SDN list as of 2026-10-21","matches":[],"listAsOf":"2026-10-21","sanctioned":false,"listAgeDays":2,"listAddresses":1065},"tokenAddress":"0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed","tokenSanctions":{"result":"not found on the OFAC SDN list as of 2026-10-21","matches":[],"listAsOf":"2026-10-21","sanctioned":false,"listAgeDays":2,"listAddresses":1065}}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.02","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.02/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.02","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_YA-4lIa1z11LQKsJLe885","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.02","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Screens a crypto wallet address for OFAC SDN sanctions, age, type, activity, and optionally token risk before sending or accepting payment","exampleAgentPrompt":"Before I send 500 USDC to 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed on Base, can you run a safety check on that wallet — screen it for OFAC sanctions, check how old it is, whether it's a real wallet or a contract, and also score the DEGEN token at 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed for risk?","exampleUseCases":[{"title":"Sanctions screen before crypto payment","prompt":"I need to pay 0xAb5801a7D398351b8bE11C439e05C5B3259aeC9B on Ethereum — can you check if that address is on the OFAC SDN sanctions list and whether it's safe to send funds to?"},{"title":"New vendor wallet due diligence","prompt":"A vendor just gave me this Solana address GhvFFCpE35xh1gTT3f3mE6K1GdUNd4NZNDfC3fWH7swy to pay them — can you check how old it is, who funded it first, and whether I should be cautious?"},{"title":"Token risk score before DeFi trade","prompt":"Before I buy DEGEN tokens on Base (contract 0x4ed4E862860beD51a9570b96d89aF5E1B0Efefed), can you check both the token's risk score and whether the contract address itself looks safe to interact with?"}],"resultDescription":"A JSON response containing an overall verdict of 'ok', 'caution', or 'block' with plain-English reasons, plus individual check results for sanctions (OFAC SDN match), wallet age, wallet type (EOA vs contract), first funder identity, recent large transfers, and optionally a 0-100 token risk score with flagged issues like mintability, blacklisting, upgradeability, and liquidity depth. Also includes the rules applied and a disclaimer.","failureModes":["Address not found on specified chain — returns no activity data but still screens sanctions","Invalid address format — 400 error if address doesn't match hex or base58 pattern","Unsupported chain specified — returns error if chain enum value is invalid","Token contract not found — token check omitted or flagged if contract address is unrecognized","OFAC list may be dated — sanctions data reflects the listed copy date, not necessarily real-time","Rate limit or payment failure — 402 payment required if x402 payment header is missing or rejected"],"whenToPreferThis":"Choose this endpoint when you need a fast, rules-based pre-payment safety check on a crypto address across Base, Ethereum, Arbitrum, Optimism, Polygon, or Solana. It is uniquely valuable when you want OFAC sanctions screening combined with wallet heuristics (age, type, first funder) and optionally token risk scoring in a single call. Prefer it over generic blockchain explorers when you need a structured ok/caution/block verdict rather than raw chain data, and when operating in an agentic payment flow where a quick compliance signal is required before executing a transaction.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-29T12:40:53.055Z","isFirstParty":false,"canonicalSlug":"wallet-safety-checks-076baad5"}