x402 Exact HBAR
x500-sdk— payOnce (402 → sign → retry)facilitator— verify + CryptoTransfer settleexample/server— Exact merchant scheme
Parametric insurance · Hedera testnet
Micro-insurance for AI agents that pay APIs with x402.
The problem
The answer
Parametric micro-insurance for agent API payments — premium in, refund out when calls fail.
What we do
Wrap every insured API call: pay the merchant, bill a premium, refund on failure — automatically.
How it works
One path. Hedera settles money. x500 settles risk.
x500-sdk — payOnce (402 → sign → retry)facilitator — verify + CryptoTransfer settleexample/server — Exact merchant scheme
X500Registry — endpoint + SLA + pay-toX500Pool — agent escrow premiumsX500Settler — settleBatch refunds
dashboard — HashPack registerEndpointsdk — ContractExecute depositEscrowindexer — mirror eth_call sync
Shipped
Insured fetch, escrow, payOnce on Hedera.
npmjs.com/package/x500-sdk →Register merchants, track calls, Hashscan settlements.
x500-dashboard.vercel.app →Live x402 weather API — paid Exact HBAR route.
github.com/…/example/server →CLI agent that pays + insures every weather call.
github.com/…/example/agent →
Merchant · 1 / 3
Go to x500-dashboard.vercel.app — see live endpoints, calls, and pool liquidity.
Merchant · 2 / 3
Open Merchants and click Register your API to begin onboarding.
Merchant · 3 / 3
Confirm slug, origin, price, and SLA — then publish on Hedera testnet.
Agent builder
Install the SDK, fund escrow once, then call merchants by origin URL — premiums and refunds settle automatically.
npm install x500-sdk
Requires Node.js 18+
import { createX500 } from "x500-sdk";
const x500 = createX500({
network: "testnet",
accountId: process.env.X500_AGENT_ACCOUNT_ID!,
privateKey: process.env.HEDERA_AGENT_PRIVATE_KEY!,
});
// 1. Fund insurance escrow once
await x500.setup({ escrowTinybars: 50_000_000n });
// 2. Call a registered merchant by origin URL
const res = await x500.fetchMerchant(
"https://your-merchant.example/paid/weather?city=Paris",
);
console.log(res.status, await res.text());
await x500.close();
When agents pay, risk shouldn’t be theirs alone.