Docs

Facilitator Check

The free pre-settle check for a facilitator's onBeforeSettle hook.

Facilitator pre-settle check (free)

For a facilitator's onBeforeSettle hook: POST https://api.402xagent.com/v1/facilitator/check with JSON {"paymentRequirements":{"scheme":"exact","network":"eip155:8453","amount":"1000","asset":"0x8335…2913","payTo":"0x…"},"url":"https://seller.example/api"} (the url may also come from resource or paymentRequirements.resource). We re-read the seller's live 402 terms for that resource with the same unpaid probe as the check (private, loopback and link-local addresses blocked on every redirect, 8 s timeout, 64 KB cap; never pays) and compare scheme, network (CAIP-2), amount, asset and payTo (EVM addresses case-insensitive).

Answer: {match, mismatches:[{field, expected, live}], live_terms_sha256, checked_at, recommendation}. recommendation is settle only when one live accepts entry matches every field; anything else is hold, including 400 (bad input or blocked url), 429 (60 per minute per caller IP, or 30 probes per minute per seller host across all callers; nothing is probed then), 502 (seller unreachable), 503 (busy, or our rate limiter is unavailable; we then probe nothing) and 504 (seller timed out). live_terms_sha256 = sha256 of network|asset|amount|payTo, the same formula as payment_terms_sha256. Free for now; it does not use the check's 5 free per day. Send only the requirements: a payment payload is ignored, never stored and never echoed, and nothing about the payer is logged.