Insurance for a failed settlement

Opt-in cover for enrolled x402 resource providers.

Enroll a resource

From enroll to payout

  1. Enroll the resource

    Register the https resource you sell and the wallet that should receive a payout. One call: POST /facilitator/insurance/enroll.

  2. Premiums go into the pool

    On each successful settle of that resource, the facilitator records 0.1 percent of the settled amount (10 bps) and adds it to the shared pool.

  3. Claim a settle failure

    If the facilitator records a settle failure, file it within 72 hours. A verified claim pays USDC on Base from the pool, up to the cap, to the enrolled wallet.

Terms the facilitator enforces

Premium 0.1 percent of each settled amount (PREMIUM_BPS 10). Recorded against the enrolled resource as settled micro-USDC divided by 1000, rounded down. Not a flat fee. A 1 USD settlement accrues 0.001 USD.
Claim window 72 hours after the facilitator records the failure (CLAIM_WINDOW_SECONDS). A timestamp more than five minutes in the future is refused.
Cap Up to 25 USD (CLAIM_CAP_MICRO), and never more than the pool balance or the failed amount.
Payout USDC on Base, from the facilitator settler, to the enrolled payout wallet. Buyers pay the treasury. Claims do not.
Settler floor 1 USD stays in the settler (SETTLER_FLOOR_MICRO). A payout that would break that floor stays pending until the settler can pay it.
What qualifies A settle failure the facilitator already recorded for that resource. The payout wallet must match the enrollment. House demo failures are not payable on the public claim route.

Worked example

For a $10 settle the premium is 1 cent. A verified failure pays up to the cap from the pool.

Pool right now

Loaded from GET /facilitator/insurance/pool. The names are the fields that endpoint returns.

stats unavailable

File a claim

POST /facilitator/insurance/claim with the resource, the nonce of the recorded settle failure, and the enrolled payout wallet. The nonce is the failure proof the facilitator already stored. There is no separate receipt document to attach.

curl -s -X POST https://x402-agent-pay.com/facilitator/insurance/claim -H "Content-Type: application/json" -d '{"resource":"https://example.com/paid","nonce":"FAILURE_NONCE","payee_wallet":"0xYOUR_WALLET"}'

API preview

This form posts to /facilitator/insurance/enroll. The same call is what an agent makes programmatically. The facilitator reads payee_wallet. A body that only sends wallet is rejected, so this preview sends both keys with the same address.

The response from the facilitator appears below, success or error. Contact can be empty. The resource must be an https URL.