Reference

Technical summary
Consolidated links and entry points into the codebase for Umbra settlement, the gated resource API, and related documentation.

Links

What we ship (product)

  1. Human pay link /pay/<opaque-id>: Wallet Standard + Umbra SDK checkout.
  2. Agent resource GET /api/resources/<id>: HTTP 402 with x402-shaped JSON until settled, then 200 with a structured content payload (see Agents & APIs).
  3. No mock settlement: value move is the Umbra receiver-claimable UTXO path from public USDC, same in browser and headless script.

Where to verify Umbra (code)

src/components/pay-with-umbra.tsx
Browser: getUmbraClient, optional registration, getPublicBalanceToReceiverClaimableUtxoCreatorFunction + web ZK prover.
scripts/agent-pay.mjs
Headless parity: same pipeline, createSignerFromPrivateKeyBytes.
src/app/api/resources/[id]/route.ts
402 body sets extra.settlement: umbra-receiver-claimable-utxo so clients do not treat payTo as a raw public SPL instruction.