You settle every payment. Know what it paid for.
A facilitator verifies and settles x402 payments but never sees the response the buyer paid for. 402Scope measures it independently, by buying, and puts the result where your payments are decided.
One call adds it to a standard x402 facilitator. Nothing in your payment path depends on us: if 402Scope is unreachable, payments go through.
What you get
Four things a facilitator cannot see on its own
Each one works alone. Together they turn your facilitator into the one buyers and agents prefer to pay through.
A verdict on the seller, at verify and settle
Before you verify or settle, the seller behind the payTo is checked against independent measurements. Flag it for your logs, or block it. Works for exact payments and for prepaid batch-settlement ledgers.
A Bazaar ranked by what actually works
Your discovery listing comes back with each seller’s measured score, trusted sellers first. Put it in front of your existing Bazaar with no change to it.
Alerts when a seller degrades
Watch the sellers in your network and get a callback when one crosses the fault bound you choose. Share what you settle, opt-in, and it gets measured too.
Refunds and escrow, settled in seconds
Offer buyers protection on Stellar: sellers can back their terms with a bond, or take payments through escrow, held until delivery is shown. A good delivery pays the seller in seconds; a broken promise refunds the buyer in seconds.
How it worksInstall
One call on your facilitator
For any facilitator built on the official @x402/core. Open source, Apache 2.0. No key needed to start.
npm install github:arturete58-sys/402scope-trust
import { scopeFacilitator } from '402scope-trust/facilitator';
const scope = scopeFacilitator(facilitator, {
trust: { chain }, // onchain attesters on Stellar, or { apiUrl }, or your own checker
mode: 'flag', // 'block' refuses sellers that are not trusted
share: { apiUrl, key }, // optional: get what you settle measured
refunds: { contract, rpcUrl, networkPassphrase, token }, // optional: label refund-backed sellers
});
const listing = await scope.rank(bazaarItems); // trusted and refund-backed sellers first
Facilitators written in another language call the same checks over HTTP. The open-source API also accepts a login with the facilitator’s Stellar account (SEP-10) instead of a shared key.
Optional protection
Refunded by a signature, not by a support ticket
Every paid response carries the seller’s signed receipt: what it delivered, how old the data was, and the maximum age it promised. When the receipt shows the seller broke its own terms, a contract on Stellar refunds the buyer. Nobody decides: the rule only reads what the seller signed.
Two ways, both optional, both on contracts with no admin. 402Scope holds no funds and decides no refund.
The seller backs its terms with a deposit
Payments stay ordinary exact payments, through any facilitator. If a response breaks the seller’s terms, the buyer is refunded from the bond at once. A bond of a few dollars covers thousands of calls and stays the seller’s.
The payment waits for the delivery
The buyer pays a contract instead of the seller. The data arrives at once; the money waits seconds. The buyer’s agent confirms a good response and the seller is paid in the next ledger; a broken promise is refunded just as fast. No receipt at all: refunded at the deadline.
| What happens | Result | When |
|---|---|---|
| The agent checks the response and confirms | Seller paid | ≈ 5 s |
| The seller’s receipt shows a breach of its terms | Buyer refunded | ≈ 5 s |
| A bonded seller posts its receipt | Seller paid | ≈ 5 s |
| No confirmation and no receipt | Buyer refunded | at the deadline |
Proven
Running on Stellar testnet, every day
An open workflow runs the whole flow with real testnet payments and publishes every transaction. Watch it on the live page.
| With | What was checked |
|---|---|
A standard @x402/core facilitator | Trust hooks blocked a payment to a seller that broke its own terms; the Bazaar listing came back ranked |
| OpenZeppelin’s hosted facilitator | Agent wallets and classic accounts paid through it, in testnet USDC |
Fermah Pay (prepaid, batch-settlement) | The seller role of its ledger contract read onchain, so receipts from its sellers count |
| The refund bond | A seller that served 20-minute-old data after promising under 60 seconds refunded the agent automatically |
| Escrow | The agent confirmed a good response and the seller was paid in seconds; a stale one was refunded in seconds |
Independence
Scores are not for sale
No seller and no facilitator pays for a measurement, a score or a change to one. What a facilitator can pay for is service around it: alert volume, API limits, reports on its network, support.
Talk to us: hello@402scope.org