ToolAssay

Pre-flight a Base payment destination before you send

Pre-flight a Base payment destination before you send. Verifies the EIP-55 checksum, measures distance from an address you expect — catching a mistyped digit and the shared prefix-and-suffix shape of a ground look-alike — flags the zero address, burn sinks and precompiles, refuses a token offered as its own payee, and reports whether the destination can receive the asset. Returns unknown rather than guessing when bytecode does not decide it. Not a judgement of the counterparty.

Not tested: has real-world effectsour last check, 2026-09-24
0 of 0checks answered this week
n/amedian answer time
$0.01listed price per call
n/aprice it asked us

Paid test badge: not yet. The checks above are free: we call the tool without paying and read the payment request it sends back. The Verified badge needs paid calls whose answers match the promised output, and nobody can buy a badge.

Endpoint

POST https://payee.schemasure.com/v1/guard/payee

CategoryMarket data
Provider hostpayee.schemasure.com
Networkseip155:8453
Payment schemesexact
Self-reported calls, 30 days9 from 1 payers (the provider's figure, not ours)

Our checks, last 30 days

We never call tools that send, buy, move money or file anything, not even without paying.

Example input (from the provider)

{
  "body": {
    "address": "0x7a3D40f7c6B18E5920Ab7C3e5d81f4A04E6F8a0D",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "expected_address": "0x7A3D9C1b5e2F4A8d6C0b3E5F7a9D1c2b4e6f8A0d"
  },
  "bodyType": "json",
  "method": "POST",
  "type": "http"
}

Promised output schema (from the provider)

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "properties": {
    "input": {
      "additionalProperties": false,
      "properties": {
        "body": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "additionalProperties": false,
          "properties": {
            "address": {
              "description": "The destination you are about to send to. Send it exactly as you hold it, casing included: the casing is the checksum, and normalising it before you ask destroys the evidence this endpoint checks.",
              "pattern": "^0[xX][0-9a-fA-F]{40}$",
              "type": "string"
            },
            "asset": {
              "default": "native",
              "description": "\"native\" for ETH, or an ERC-20 contract address. Defaults to \"native\". The asset decides which receivability question is asked, and they have different answers.",
              "type": "string"
            },
            "expected_address": {
              "description": "The address you believe the destination should be. Supplying it enables the comparison checks: exact match, case-only difference, small edit distance, and the shared prefix-and-suffix shape of a ground look-alike.",
              "pattern": "^0[xX][0-9a-fA-F]{40}$",
              "type": "string"
            },
            "from": {
              "description": "The sender, when you have one. Enables the self-send check.",
              "pattern": "^0[xX][0-9a-fA-F]{40}$",
              "type": "string"
            }
          },
          "required": [
            "address"
          ],
          "title": "PayeeGuardRequest",
          "type": "object"
        },
        "bodyType": {
          "enum": [
            "json",
            "form-data",
            "text"
          ],
          "type": "string"
        },
        "method": {
          "enum": [
            "POST"
          ],
          "type": "string"
        },
        "type": {
          "const": "http",
          "type": "string"
        }
      },
      "required": [
        "type",
        "method",
        "bodyType",
        "body"
      ],
      "type": "object"
    },
    "output": {
      "properties": {
        "example": {
          "$schema": "https://json-schema.org/draft/2020-12/schema",
          "properties": {
            "data_versions": {
              "type": "object"
            },
            "evidence": {
              "items": {
                "type": "object"
              },
              "type": "array"
            },
            "ok": {
              "type": "boolean"
            },
            "policy_version": {
              "type": "string"
            },
            "request_hash": {
              "type": "string"
            },
            "result": {
              "properties": {
                "address": {
                  "type": "object"
                },
                "asset": {
                  "type": "object"
                },
                "can_receive": {
                  "description": "value is true, false, or null when the bytecode does not decide it.",
                  "type": "object"
                },
                "checksum": {
                  "type": "object"
                },
                "denylist_hits": {
                  "items": {
                    "type": "object"
                  },
                  "type": "array"
                },
                "destination": {
                  "type": "object"
                },
                "expected_comparison": {
                  "type": [
                    "object",
                    "null"
                  ]
                },
                "self_send": {
                  "type": "object"
                },
                "sinks": {
                  "type": "object"
                },
                "unresolved": {
                  "items": {
                    "type": "string"
                  },
                  "type": "array"
                }
              },
              "type": "object"
            },
            "risk_codes": {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            "verdict": {
              "description": "Precedence: block, then unknown, then warn, then allow.",
              "enum": [
                "allow",
                "warn",
                "block",
                "unknown"
              ],
              "type": "string"
            },
            "warnings": {
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          },
          "required": [
            "ok",
            "verdict",
            "result",
            "request_hash",
            "data_versions"
          ],
          "type": "object"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "type"
      ],
      "type": "object"
    }
  },
  "required": [
    "input"
  ],
  "type": "object"
}

This page as JSON