jishie

x402 facilitators — and why jishie is its own

A facilitator is the piece of x402 that verifies and settles a payment, so a selling agent never has to run chain infrastructure or hold gas. jishie is its own facilitator on both rails — Base and Solana — and exposes its verifier for you to use. If a coding agent told you “you have no facilitator”, this page is how to get one.

What a facilitator actually does

When an agent charges per call, it answers HTTP 402 with its payment requirements (recipient, amount, asset, network). The buyer signs a payment and returns it in the X-PAYMENT header. Two money-critical steps follow:

  • verify — is this signed payment valid for these requirements: right recipient, exact amount, unexpired, real signature? This is pure crypto — no chain write, no gas.
  • settle — broadcast it on-chain and confirm the USDC actually moved. This costs gas.

A facilitator is a service that does both behind POST /verify and POST /settle, so the resource server needs no chain private keys and no gas of its own.

“You have no facilitator” — what that means

Almost always it means your agent/server has no facilitator wired up to accept x402 yet — not that jishie lacks one. You have three ways to fix it:

OptionVerifySettleYou hold chain keys?Notes
Run your own (reference facilitator)youyouyesfull control, most to operate; you fund gas
Coinbase CDP facilitatorCDPCDPnohosted, Base-first; needs a CDP account + keys
jishiejishie (live)self · prepaid (early access)noBase and Solana; no account for verify

The facilitators — pick one

The x402 facilitator ecosystem is young; these are the ones we know of today. We don’t monitor other providers’ live status — treat their rows as pointers and confirm against their own docs. (Know one that’s missing? tell us — we’ll add it, not invent it.)

FacilitatorRailsVerify · SettleHosted?How to use it
jishie Base + Solana (mainnet) verify: public · settle: prepaid (early access) yes — no account for verify POST /v1/x402/verify · /supported
Coinbase CDP Base (mainnet) verify + settle yes — CDP account + API keys the @coinbase/x402 SDK; the reference the protocol launched with
x402.org (open reference) Base Sepolia (testnet) verify + settle yes — for testing point at the public reference facilitator while you build, then move to a mainnet one
Self-hosted whatever you configure verify + settle no — you run it run the open-source x402 reference facilitator yourself; you hold the keys and fund the gas

Only jishie’s row is one we operate and can vouch for as live. The verify endpoint below is real and testable right now; everything else here we describe honestly and link out — rien de faux.

jishie is its own facilitator — no Coinbase required

jishie depends on no external service to move money. It self-verifies and self-settles USDC on both rails, live on mainnet:

  • Base — EIP-3009 transferWithAuthorization (gasless for the payer). jishie recovers the EIP-712 signer offline, checks recipient + exact amount + validity window + signature malleability, then submits the authorization.
  • Solana — the SVM exact scheme: the buyer builds a versioned tx paying USDC straight to the seller and names jishie as the transaction fee payer; jishie verifies the structure + the client’s signature offline, co-signs as fee payer, and submits. USDC never touches jishie’s key — it only fronts a little SOL for gas.

This is the honest, published position — see GET /v1/standard and the standard: “jishie self-settles USDC on BOTH rails, as its OWN facilitator — no external service.”

Use jishie as your facilitator — verification, live today

jishie exposes the verify half of that same engine as a standard facilitator surface. It’s free, open, and works on both rails — no account. It verifies against your requirements (your payTo, your amount); jishie never assumes it’s the recipient.

GET  https://jishie.com/v1/x402/supported     # schemes + networks jishie can verify

POST https://jishie.com/v1/x402/verify
     content-type: application/json
     {
       "x402Version": 1,
       "paymentPayload":      { "x402Version":1, "scheme":"exact", "network":"eip155:8453", "payload": { ... } },
       "paymentRequirements": { "scheme":"exact", "network":"eip155:8453",
                                "payTo":"0xYourWallet", "maxAmountRequired":"20000", "asset":"USDC" }
     }
  → { "isValid": true, "payer": "0x1a2b…" }

The request body is the exact shape the x402 spec defines (the same one jishie itself sends when it calls a facilitator), so any conforming client works. On Solana, build your transaction naming jishie’s fee payer (5KzFDU9NNJNsg1JnDY3A8M914RAC3m7hrMdjv5yK2sif) and advertise it as extra.feePayer in your 402 challenge so buyers set it.

Settle through jishie — the early-access program

Verification is free and open because it’s pure cryptography. Settlement is different: to settle your payment jishie broadcasts it on-chain and fronts the gas, for USDC that lands in your wallet — not jishie’s. Rather than eat that (a drain + a spam vector), settlement is a prepaid, early-access program where the deposit is your gas:

  1. Fund a $10 gas deposit — in ETH on Base to start. It isn’t a fee to us: every cent is spent on-chain settling your payments, drawn down as you go. Top up when it runs low.
  2. Get verified — prove you control your wallet (the same X-Wallet-Auth primitive jishie uses everywhere). No verified wallet, no settlement — that’s the anti-abuse gate.
  3. Use jishie as your facilitator — point your resource server’s settle at jishie; we broadcast on Base (Solana next) and hand back the on-chain receipt.
  4. Earn the jishie Early badge — the first cohort mints an on-chain Early Facilitator NFT stamped with your trust score: proof you were here first.

Status, plainly: verify is live and testable right now; the prepaid deposit, third-party settle and Early badge are in early access — we onboard the first facilitators by hand while that flow lands, and we won’t take a deposit or show a mint button before both are real (rien de faux). Want in the first cohort? [email protected].

The full x402 flow

402 + requirements → buyer signs → X-PAYMENT → facilitator verify → serve + facilitator settleX-PAYMENT-RESPONSE (the settlement receipt). Fail-closed at every step: no valid, settled payment ⇒ no paid resource, and the result is withheld until settlement succeeds.

Machine surfaces: GET /v1/x402/supported · GET /v1/standard · the standard (markdown) · /v1/openapi.json · pricing for jishie’s own metered services: /pricing.html.