{"pack":"Untch Consumer Pack","thesis":"Any agent can propose a real-world action. Untch decides whether it is authorised, funds it for the exact approved amount, pays the merchant on the merchant's own rail, verifies delivery, and produces one cross-rail receipt.","services":{"shop":["/consumer/shop/search","/consumer/shop/quote","/consumer/shop/purchase","/consumer/shop/order/:intentId"],"domains":["/consumer/domains/check","/consumer/domains/quote","/consumer/domains/register","/consumer/domains/renew","/consumer/domains/status/:intentId"],"travel":["/consumer/travel/search","/consumer/travel/compare","/consumer/travel/quote","/consumer/travel/book","/consumer/travel/booking/:intentId"],"gifts":["/consumer/gifts/quote","/consumer/gifts/order","/consumer/gifts/status/:intentId"],"status":["/consumer/intent/:intentId","/consumer/intent/:intentId/payment","/consumer/intent/:intentId/delivery","/consumer/intent/:intentId/receipt","/consumer/intent/:intentId/events"],"publicReceipt":["/consumer/receipt/:intentId"],"auth":["/consumer/auth/nonce","/consumer/auth/verify"],"notify":["/consumer/notify/confirmation","/consumer/notify/receipt","/consumer/notify/exception"],"mail":["/consumer/mail/send","/consumer/mail/inbox/buy","/consumer/mail/inbox/status","/consumer/mail/inbox/topup","/consumer/mail/inbox/cancel","/consumer/mail/inbox/messages","/consumer/mail/subdomain/buy","/consumer/mail/subdomain/status","/consumer/mail/subdomain/send","/consumer/mail/execute"]},"auth":{"scheme":"SIWE → Bearer","obtain":["/consumer/auth/nonce","/consumer/auth/verify"],"required":true,"scopedRoutes":["/consumer/intent/:intentId","/consumer/intent/:intentId/payment","/consumer/intent/:intentId/delivery","/consumer/intent/:intentId/receipt","/consumer/intent/:intentId/events","/consumer/shop/order/:intentId","/consumer/domains/status/:intentId","/consumer/travel/booking/:intentId","/consumer/gifts/status/:intentId"],"publicRoutes":["/consumer/receipt/:intentId","/consumer/catalog","/consumer/auth/nonce","/consumer/auth/verify"],"note":"A scoped read is tenant-scoped to the POLICY OWNER. Prove control of the owner wallet by signing a SIWE message that names this domain, a nonce from /consumer/auth/nonce, an X Layer chainId, and `untch:policy:<policyId>` in Resources. `?policyId=` alone is namespacing, not authorisation: a policy id is public on-chain data."},"funding":{"route":"/consumer/fund/:intentId","model":"The fixed route price is Untch's orchestration fee. The variable purchase value is funded separately, per intent, at the exact authorised amount, via x402 dynamic pricing.","chain":"eip155:196","token":"USDT0"},"providers":[{"providerId":"purch","displayName":"Purch","maturity":"verified","protocol":"x402","chains":["solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"enabled":true,"provenance":"2026-07-27: /x402/search, /x402/shop, /x402/vault/search and /x402/vault/download all returned 402s offering exactly ONE option, on solana:5eykt4Us… in USDC (mint EPjFWd…Dt1v, payTo 8LiXrHC6…6HT2, sponsoring feePayer BENrLoUb…R9SP). NO Base option appears in any Purch challenge, and its OpenAPI states 'All endpoints are payable via the x402 protocol (USDC on Solana).' EXPERIMENTAL: this build cannot construct a Solana x402 payload it can vouch for, so every Purch call — including search — ends at PROTOCOL_NOT_EXECUTABLE. Promotion needs the Solana rail finished AND a funded Solana treasury.\n2026-07-29: real Solana mainnet settlement. Untch's dedicated Solana treasury settled 0.010000 USDC to Purch, transaction SgxsTgwVZnmKfj3mkQyGMaAicBR7xmqhi11t9XUYXFdJw1cE42etbTkTRA9DDuJfo373GRNbwL4VxQpfB8kc3pQ confirmed at slot 436008614 with err null, and Purch returned five real Shopify products. For a paid search the returned product set is the delivered output, so payment and delivery are both observed. This evidence covers shop.search ONLY and is not evidence for shop.quote, shop.purchase, shop.track, any Vault capability or any Gift purchase capability.","capabilities":[{"capability":"shop.purchase","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"POST /x402/buy, dynamic total, Solana only — unpayable in this build."},{"capability":"shop.quote","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"Unpaid 402 probe of /x402/buy (pricingMode 'quote' — total includes tax and shipping)."},{"capability":"shop.search","maturity":"verified","state":"LIVE","accessBlocker":null,"notes":"GET /x402/search, $0.01, Solana only — unpayable in this build.\n2026-07-29: real Solana mainnet settlement. Untch's dedicated Solana treasury settled 0.010000 USDC to Purch, transaction SgxsTgwVZnmKfj3mkQyGMaAicBR7xmqhi11t9XUYXFdJw1cE42etbTkTRA9DDuJfo373GRNbwL4VxQpfB8kc3pQ confirmed at slot 436008614 with err null, and Purch returned five real Shopify products. For a paid search the returned product set is the delivered output, so payment and delivery are both observed. This evidence covers shop.search ONLY and is not evidence for shop.quote, shop.purchase, shop.track, any Vault capability or any Gift purchase capability."},{"capability":"shop.track","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"GET /x402/track, $0.52 per call, Solana only."}]},{"providerId":"stabledomains","displayName":"stabledomains","maturity":"verified","protocol":"x402","chains":["eip155:8453"],"enabled":true,"provenance":"PROMOTED 2026-07-27 on evidence. Real settled payment from Untch treasury 0x0e79371813e88F31c2B60C80bad391a952039095 to StableDomains payTo 0xABcb091D90419E1c8AD4818f1B33FC4645501892: 0.050000 USDC on Base (eip155:8453), tx 0xe7ce102f7a704e9c3113fc7fcc8626db8a9cdc330e614d023c231e88fce21e86, block 49196541, status success, re-read independently from a Base RPC receipt. Delivery verified against PUBLIC RDAP rather than the merchant's own assertion: RDAP agreed the checked domain was available. Intent ci_50a37ce77505690e8b45df13. SCOPE: domains.check ONLY. No other capability of this provider has settled.","capabilities":[{"capability":"domains.check","maturity":"verified","state":"LIVE","accessBlocker":null,"notes":"live smoke"},{"capability":"domains.dns","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"SIWX-gated (402 with an empty accepts[] plus a sign-in-with-x extension). The SIWX leg has never been exercised against the live service, so the EIP-4361 rendering this build produces is unproven."},{"capability":"domains.quote","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"check + an unpaid 402 probe of /api/register for the exact atomic price."},{"capability":"domains.register","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/register, dynamic price. PREREQUISITE: a verified ICANN registrant profile, created and email-verified over SIWX. execute() refuses without it rather than spending first."},{"capability":"domains.renew","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/domain/renew, 1-10 years, dynamic price."}]},{"providerId":"stableemail","displayName":"StableEmail","maturity":"verified","protocol":"x402","chains":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"enabled":true,"provenance":"PROMOTED 2026-07-29 on evidence. Real settled payment from the Untch Base treasury 0x0e79371813e88F31c2B60C80bad391a952039095 to the StableEmail payTo 0xDb5AA553FeEB2c3E3D03e8360b36fb0f7e480671: 0.020000 USDC, tx 0x9c4570ca2369a296eaaa3d705bfd933059755c8a8ade4946def61d22072f625f, Base block 49273744, status success, re-read independently from the chain. Executed by the DEPLOYED untch-asp worker (intent ci_8225f9800c3434582a235fcf), externally funded on X Layer by 0xC8f00BD8c0497c03dFA9aCF71b061512065923d4 (tx 0x212ca57d6a07aa6630edd9a16fe02c90dcd03b4f3656e6dea1c5d97e65015bcd). Receipt 0x66edaae26d56df5e18b458be830b0e9464dfe8303abd5562647c8e1215a9774f. Ledger balanced; the user-obligation account nets to zero. Promotion is scoped to mail.send ONLY — every other capability keeps its own maturity, and min(provider, capability) still governs. 2026-07-27: POST /api/send returned a 402 offering Base USDC (payTo 0xdb5a…0671) and Solana USDC at a fixed $0.02, matching its OpenAPI x-payment-info. Full OpenAPI (25 paths) and .well-known/x402 fetched. SANDBOX: no settlement from an Untch treasury wallet has occurred.","capabilities":[{"capability":"mail.inbox.buy","maturity":"verified","state":"LIVE","accessBlocker":null,"notes":"LIVE. POST /api/inbox/buy, $1.00 (1000000 atomic USDC) for 30 days. Settled for real on 2026-07-29 (tx 0x437ddc66044f9f5251630bbb4f017cac48bade6e8fdf17b9efa4ef0f6f752b6f, Base block 49274815) and INDEPENDENTLY VERIFIED: untch-mail@stableemail.dev exists, the provider returned a 30-day expiry, and StableEmail subsequently admitted the Untch Base treasury as the inbox OWNER on the paid messages endpoint. Bought without forwardTo, so retainMessages is on and the mailbox is readable by Untch. Intent ci_424a422419a428d824ddbac3, receipt 0xe259df23…12fe."},{"capability":"mail.inbox.cancel","maturity":"experimental","state":"PARTNER_ACCESS_REQUIRED","accessBlocker":"IDENTITY_REQUIRED","notes":"POST /api/inbox/cancel, free, SIWX-gated, owner-only. Sends a pro-rata USDC refund on-chain to the caller's wallet. Same prerequisite as mail.inbox.status."},{"capability":"mail.inbox.messages","maturity":"verified","state":"LIVE","accessBlocker":null,"notes":"LIVE. POST /api/inbox/messages, $0.001 (1000 atomic USDC), authorised by PAYER-as-owner. Settled twice for real on 2026-07-29 against untch-mail@stableemail.dev and returned a valid empty message list both times. This is the tool that makes mail.send delivery verifiable: an inbox Untch owns can be read back, where the open internet cannot. Returns hashes only."},{"capability":"mail.inbox.status","maturity":"experimental","state":"PARTNER_ACCESS_REQUIRED","accessBlocker":"IDENTITY_REQUIRED","notes":"GET /api/inbox/status, free but SIWX-gated, and the provider admits only the INBOX OWNER. Untch owns no inbox and no CONSUMER_SIWX_PRIVATE_KEY is configured, so this cannot succeed today. Unblocked by mail.inbox.buy, not by more code."},{"capability":"mail.inbox.topup","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/inbox/topup $1.00 / …/quarter $2.50 / …/year $8.00. Anyone may top up any inbox — no SIWX — so this is payable without owning the inbox."},{"capability":"mail.send","maturity":"verified","state":"LIVE","accessBlocker":null,"notes":"LIVE. POST /api/send, $0.02 (20000 atomic USDC) on Base. Settled for real on 2026-07-29 (tx 0x9c4570ca…f625f) and DELIVERED: the message arrived in the operator-controlled inbox, and the subject that arrived hashes to 0xef8bcf67616e5a0db688986e5b098d14fbb4774a84d5f3c5b39258fe64ecc2af — the exact subjectHash the intent bound before payment. Untch still cannot self-verify a send (the shared relay exposes no per-message status endpoint), so delivery evidence remains providerAttested with untchVerified=false/NONE; mail.inbox.buy is what turns that hand-off into a round trip."},{"capability":"mail.subdomain.buy","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/subdomain/buy, $5.00 (5000000 atomic USDC). DNS verification takes ~5 minutes, so the purchase completes IN_PROGRESS and only reaches FULFILLED once DNS and SES both verify."},{"capability":"mail.subdomain.send","maturity":"experimental","state":"PARTNER_ACCESS_REQUIRED","accessBlocker":"IDENTITY_REQUIRED","notes":"POST /api/subdomain/send, $0.005 (5000 atomic USDC). The PAYING wallet must be the subdomain owner or an authorised signer, so paying is necessary and not sufficient."},{"capability":"mail.subdomain.status","maturity":"experimental","state":"PARTNER_ACCESS_REQUIRED","accessBlocker":"IDENTITY_REQUIRED","notes":"GET /api/subdomain/status, free, SIWX-gated, owner-or-signer only. Prerequisite is mail.subdomain.buy."},{"capability":"notify.confirmation","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/send, $0.02."},{"capability":"notify.exception","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/send, $0.02."},{"capability":"notify.receipt","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"POST /api/send, $0.02."}]},{"providerId":"stableemail-inbox","displayName":"stableemail-inbox","maturity":"sandbox","protocol":"x402","chains":["eip155:8453"],"enabled":true,"provenance":"live smoke bootstrap","capabilities":[{"capability":"mail.inbox.buy","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"introduced by the live smoke driver; not promoted by it"}]},{"providerId":"stablemerch","displayName":"StableMerch","maturity":"experimental","protocol":"siwx","chains":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"enabled":true,"provenance":"2026-07-27: GET /api/catalog and POST /api/drafts both returned a 402 with an EMPTY accepts[] plus a sign-in-with-x extension (eip155:8453/eip191 or solana/ed25519) — i.e. SIWX authentication, NOT payment. Its OpenAPI declares securitySchemes.siwx as a SIGN-IN-WITH-X header and marks /api/drafts security:[{siwx:[]}]. Only /api/drafts/{id}/commit carries x-payment-info (dynamic $0.01-$50.00, x402 + MPP). EXPERIMENTAL: four of the five steps need a wallet identity, CONSUMER_SIWX_PRIVATE_KEY is unset here, and the EIP-4361 rendering this build produces has never been accepted by StableMerch's verifier.","capabilities":[{"capability":"gifts.order","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"POST /api/drafts/{id}/commit, dynamic $0.01-$50.00."},{"capability":"gifts.quote","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"SIWX draft → prepare-order → unpaid 402 probe of commit."},{"capability":"gifts.track","maturity":"experimental","state":"SANDBOX","accessBlocker":null,"notes":"GET /api/drafts/{id}, SIWX-gated."}]},{"providerId":"stabletravel","displayName":"StableTravel","maturity":"sandbox","protocol":"x402","chains":["eip155:8453","solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp"],"enabled":true,"provenance":"2026-07-27: OpenAPI fetched — 45 paths, zero booking paths. Its own x-guidance states the API 'does not issue tickets, hold reservations, or take payment for travel' and that there are 'no hotel, activity, or ground-transfer endpoints'. This CONTRADICTS deep-research-report (4).md, which described 74 endpoints with end-to-end booking and cancellation. Registered as a flight DATA provider only: it declares no travel.quote or travel.book capability, so the registry cannot route a booking to it.","capabilities":[{"capability":"travel.compare","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"GET /api/google-flights/booking, $0.02. Airline and OTA booking links for one itinerary."},{"capability":"travel.search","maturity":"sandbox","state":"BETA","accessBlocker":null,"notes":"GET /api/google-flights/search, $0.02. Live cash fares with price_insights."}]}],"execution":{"settlementRailsAvailable":["eip155:8453"],"sandboxExecutionAllowed":false,"providersExecutableToday":["purch","stabledomains","stableemail"],"note":"3 provider(s) are verified and executable."}}