Payments (x402)
Farcaster prices routes and MCP tools and gates them behind
x402 — a challenge/response protocol,
now stewarded by the Linux Foundation’s x402 Foundation, for stablecoin
payment authorizations (EIP-3009 / EIP-712 exact scheme, USDC on Base).
Two capabilities sit on top of the same protocol, and Farcaster draws its open-core line exactly between them:
- The gate — verifying that a caller’s signed payment authorization is valid, sufficient, and unexpired before Farcaster forwards the call. This runs in the gateway, self-hosted, with no server-held key. It is OSS.
- Settlement — actually collecting the verified payment on-chain, so the operator’s balance changes. This requires a facilitator: self-hostable (OSS) or Zerker-managed (Commercial). See Facilitator.
See The open-core boundary for why the line sits between verify and collect.
In this section
Section titled “In this section”- The wire contract — the
X-PAYMENTheader, the402challenge, and theAuthorizationEIP-3009 payload, all generated from the samex402types/openapi.yamlthe gateway, the facilitator, and the SDKs share. - Gate vs settle — what each step does, what changes between a gate-only route and a settlement-enabled one, and what happens on failure at each stage.
For a hands-on example of gating a call today, see Quickstart → Gate a paid tool.