Skip to main content
The Finance District Agent Wallet handles the buyer side of x402. When an agent encounters a payment requirement, the wallet reads accepts, selects the best network and token based on available balance, signs an ERC-3009 authorization inside the TEE, and returns the complete signed object ready for submission.

How Signing Works

The private key never leaves the secure enclave. The wallet:
  1. Receives the paymentRequirements object (the accepts array from the merchant)
  2. Selects a network/token pair — based on balance availability and chain preference
  3. Constructs an ERC-3009 transferWithAuthorization and signs it inside the TEE
  4. Returns the full x402 payment object for the agent to submit
{
  "paymentPayload": {
    "signature": "0x...",
    "authorization": {
      "from":        "0xAgentWalletAddress",
      "to":          "0xMerchantAddress",
      "value":       "10000",
      "validAfter":  "0",
      "validBefore": "1760000000",
      "nonce":       "0x..."
    }
  },
  "paymentRequirements": {
    "x402Version": 2,
    "accepts": [ "..." ]
  }
}

Using x402 via MCP

If your agent is connected to the Agent Wallet MCP server, x402 authorization is exposed as a tool. Pass paymentRequirements from the merchant response and receive the signed object back — no additional formatting required. See Agent Wallet MCP Server to get connected, and x402 Payments in Agent Wallet for a full breakdown of the buyer-side flow.

Agent Wallet MCP Server

Connect your agent to the wallet via MCP

x402 Payments Concept

Deep dive into x402 from the buyer perspective
Last modified on March 23, 2026