Get $TOLL

The x402 facilitator for Robinhood Chain

Settle x402 payments in USDG. Keyless, no fee, we pay the gas. Every payment checks payTo against the seller's registered identity (ERC-8478), and every settlement gets a signed Toll receipt.

Payments settled
11
tests by Toll
9
Volume, USDG
1.305
Sellers
6
Payers
3
Escrow holds
1
Failed
0
Median settle time, 7 days
—
11 rows · 6 in view, scroll for more
The latest settlements, newest first
SellerPaid toAmountWhen (UTC)Settle timeReceiptTransaction
Seller#1000 0xb628…4fb7Paid toverifiedAmount0.01 USDGtest by TollWhen (UTC)2026-11-13 12:22Settle time—Receiptreceipt · shareTransaction0x79cc…877e
Seller#8811 Bucks 0xf585…bb65Paid toverifiedAmount0.1 USDGtest by TollWhen (UTC)2026-11-13 05:15Settle time—Receiptreceipt · shareTransaction0x3437…fc7a
Seller#8811 Bucks 0xf585…bb65Paid toverifiedAmount1 USDGtest by TollWhen (UTC)2026-11-12 19:14Settle time—Receiptreceipt · shareTransaction0x3e95…a148
Seller#25450 toll-stock-test 0x5388…a5bcPaid toverifiedAmount0.05 USDGtest by TollWhen (UTC)2026-11-11 21:31Settle time—Receiptreceipt · shareTransaction0x72d6…c889
Seller#25450 toll-stock-test 0x5388…a5bcPaid toverifiedAmount0.05 USDGtest by TollWhen (UTC)2026-11-11 21:31Settle time—Receiptreceipt · shareTransaction0x323c…6788
Seller0x7fbd…a37dPaid tono identityAmount0.01 USDGtest by TollWhen (UTC)2026-11-11 05:42Settle time—Receiptreceipt · shareTransaction0xe2e0…fcee
Seller0x7fbd…a37dPaid tono identityAmount0.01 USDGtest by TollWhen (UTC)2026-11-11 05:34Settle time—Receiptreceipt · shareTransaction0xadbb…067f
Seller0x7fbd…a37dPaid tono identityAmount0.005 USDGtest by TollWhen (UTC)2026-11-10 05:07Settle time—Receiptreceipt · shareTransaction0x04d6…b5f8
Seller#20030 Toll 0xdc36…7f40Paid toverifiedAmount0.01 USDGWhen (UTC)2026-11-08 01:13Settle time—Receiptreceipt · shareTransaction0x8ea8…f580
Seller#20030 Toll 0xdc36…7f40Paid toverifiedAmount0.05 USDGWhen (UTC)2026-11-08 00:37Settle time—Receiptreceipt · shareTransaction0x7128…4c4d
Seller0x0259…6e5cPaid tono identityAmount0.01 USDGtest by TollWhen (UTC)2026-10-31 18:44Settle time—Receiptreceipt · shareTransaction0xb337…b408
newest first · times in UTCEvery settlement and escrow hold

Why settle with Toll

13 of 13 on right now · each label opens how it works
Sell with Tollthe one line, its options, the facilitator URL

New here? Launch a paid agent: pick a template, mint its identity, and sell in about 5 minutes.

npm i @tollxyz/x402-seller, then one line in a Next.js, Hono, Bun or Workers handler. It answers 402 with your price, sends the payment here, and runs your handler once it is settled:

import { paywall } from "@tollxyz/x402-seller";

export const GET = paywall(
  { payTo: "0xYourAgentWallet", price: "0.05", agentId: 12345 },
  async (req) => Response.json({ ok: true }),
);

Options: appCode names your app in every settlement’s calldata (ERC-8021), bazaar describes the endpoint so it is listed in discovery once a payment settles.

appCode and bazaar
export const GET = paywall(
  {
    payTo: "0xYourAgentWallet", price: "0.05", agentId: 12345,
    appCode: "your_app",                 // ERC-8021 builder code: settlements name your app on chain
    bazaar: {                            // listed in discovery once a payment settles
      description: "tomorrow's forecast for a city",
      input: { city: "Dubai" },
      inputSchema: { type: "object", properties: { city: { type: "string" } }, required: ["city"] },
      output: { example: { forecast: "sunny" } },
    },
  },
  async (req) => Response.json({ forecast: "sunny" }),
);
Starter: a Next.js API with one paid route
npx degit t0ll-xyz/toll-plugins/templates/x402-starter my-api

Or point any x402 server at this facilitator. No account, no API key:

https://x402.t0ll.xyz

Your payment requirement names USDG and its signing domain explicitly (most x402 libraries have no default for chain 4663), and, to get the payee check, your ERC-8004 identity:

PaymentRequirements (x402 v2)
{
  "scheme": "exact",
  "network": "eip155:4663",
  "asset": "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168",
  "amount": "50000",
  "payTo": "0xYourWallet",
  "maxTimeoutSeconds": 300,
  "extra": {
    "name": "Global Dollar",
    "version": "1",
    "erc8004": {
      "registry": "eip155:4663:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432",
      "agentId": "<your agent id>"
    }
  }
}
Pay with Tollthe buyer line, and what is read before your agent signs

Any x402 client pays a seller that settles here: the payer signs, the seller sends it to this facilitator, and we send the transaction. Before an agent signs, check_tx reads the payment from the payer’s side: whether payTo is the seller’s registered agent wallet, the price against what the seller usually asks, and how long the signature lasts. What it reads.

import { wrapFetchWithPayment } from "x402-fetch";
import { guardX402Fetch } from "@tollxyz/guard";

// every 402 goes to Toll's check_tx before the client signs it; a BLOCK never reaches the payer
const pay = wrapFetchWithPayment(guardX402Fetch(fetch, { agentId: 12345 }), account);
const res = await pay("https://seller.example/api/forecast?city=Dubai");

Pay up to a maximum (upto): the payer signs a maximum, and the seller may charge any amount up to it. check_tx names that maximum in USDG; a guard spend cap (perCall, perEndpoint) counts the 402’s amount. Over MCP the tool is check_tx (Use Toll in your AI); in code, @tollxyz/guard.

Morethe register, the receipt lookup, live numbers, how it works, endpoints