
ENS402
Discover x402 services on ENSv2, govern updates with EAC, and verify payments before agents sign.
Demo
About
ENS402 is a public context and payment verification stack for x402 services. An HTTP 402 response tells an agent how to pay, but the server presenting the bill should not be the sole authority for its recipient and terms. ENS402 gives each provider and service a stable ENSv2 name. The service publishes a description, call format, endpoint, status and fixed payment terms on Sepolia. A native provider Registry groups services; a shared native PermissionedResolver stores separate records for each service. Enhanced Access Control lets an operations wallet update endpoints and descriptions while a Treasury wallet governs payment terms. Independent indexers can rebuild the supported service directory from public ENS state. Our reference Search API, SDK and MCP support keyword and semantic discovery. Before an agent signs a Base Sepolia USDC payment, Guard resolves the latest ENS records, compares them with the live HTTP 402 challenge and applies a separate risk signal. A mismatch in recipient, token, network or price stops the checkout. The project connects public discovery, scoped configuration governance and pre-sign payment verification in one agent workflow.
How it's made
We use the ENSv2 Sepolia deployment directly. The platform name points to a native Registry; each provider receives a child Registry and a native PermissionedResolver. Service names have distinct record bundles. Native EAC grants Ops only the endpoint, description, image and call-metadata writers, while a Treasury Safe receives the payment-record writer. A provider Admin manages registrations and grants. Our Solidity service registrar and TypeScript planners assemble native deployments, scoped permissions and service publication; Foundry and Anvil forks test both permitted and denied writes. An Envio event journal and bounded finalized RPC reconstruction build a PostgreSQL catalog; OpenAI embeddings add semantic ranking to keyword search. The Next.js reference app exposes provider onboarding, Search API, read-only MCP and buyer checkout. The TypeScript SDK freshly resolves ENS and compares the current HTTP 402 challenge before requesting a signature. x402 settlement uses Base Sepolia USDC. Privy is an optional hosted-wallet adapter; self signing remains available. Intercepta provides an Ethereum-mainnet address risk signal in the payment decision path, with its coverage shown separately from the Base Sepolia settlement checks. The public ENS402 platform Registry is linked on Sepolia; provider publication and a funded public end-to-end payment remain in progress.