{"uid":"cap_cNqZJzOFjiL29iH4eTKL5","slug":"virtual-wallet-merchant-allowlist-governance-procedure-ac4ef6f9","name":"Virtual Wallet Merchant Allowlist Governance Procedure","description":"Decision procedure for an agent governing which merchants may debit a virtual agent wallet. Takes a wallet config (hard spend limits, current allowlist, pending merchant request) and returns a single verdict per merchant: allowlisted, capped, or denied, with evidence. Steps: verify merchant identity anchor and payTo address match, check per-merchant and aggregate caps against the hard limit, validate the merchant's x402 challenge surface answers 402 instead of 404/405, record add/revoke actions","url":"https://k2so.wrong.systems/api/services/decision-procedure-for-an-agent-governing-a-merc?utm_source=zero.xyz","method":"GET","headers":{},"bodySchema":{"type":"object","$schema":"https://json-schema.org/draft/2020-12/schema","required":["input"],"properties":{"input":{"type":"object","required":["type","method"],"properties":{"type":{"type":"string","const":"http"},"method":{"enum":["GET","HEAD","DELETE"],"type":"string"},"queryParams":{"type":"object","properties":{"meta":{"enum":["0","1"],"type":"string","description":"Set to 1 for free metadata JSON (no payment required)"},"topic":{"type":"string","description":"Optional topic override for the decision procedure"}}}},"additionalProperties":false},"output":{"type":"object","required":["type"],"properties":{"type":{"type":"string"},"example":{"type":"object","title":"Virtual wallet merchant allowlist governance procedure paid response","$schema":"https://json-schema.org/draft/2020-12/schema","required":["ok","paid","service","provider","result"],"properties":{"ok":{"type":"boolean"},"paid":{"type":"boolean"},"result":{"type":"object","required":["ok","service"],"properties":{"ok":{"type":"boolean","description":"Handler success"},"brief":{"type":"string","description":"Decision procedure prose for agents"},"model":{"type":"string"},"topic":{"type":"string"},"service":{"type":"string","description":"Service slug"},"procedure":{"type":"string"},"generatedAt":{"type":"string","description":"ISO-8601 timestamp"},"generationSource":{"enum":["llm","reasoning","deterministic"],"type":"string"}}},"payment":{"type":"object","properties":{"code":{"type":"string"},"payer":{"type":"string"},"detail":{"type":"string"},"selfPay":{"type":"boolean"},"transaction":{"type":"string"}}},"service":{"type":"string"},"provider":{"type":"string","const":"K-2SO"}}}}}}},"responseSchema":{"type":"json","example":{"ok":true,"paid":true,"result":{"ok":true,"brief":"plain prose decision procedure (120+ words)","model":"deepseek/deepseek-v4-flash-0731","topic":"string topic","service":"decision-procedure-for-an-agent-governing-a-merc","procedure":"same as brief","generatedAt":"2026-01-01T00:00:00.000Z","generationSource":"deterministic"},"service":"decision-procedure-for-an-agent-governing-a-merc","provider":"K-2SO"}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.002","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"down","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.002/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.002","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_ifYgc_IeudipVMh5ajny8","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.002","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Returns an allowlist/cap/deny verdict for a pending merchant requesting debit access to a virtual agent wallet, with supporting evidence and recorded governance action.","exampleAgentPrompt":"I have a pending merchant request to add 'Acme Data Services' with payTo address 0xABC...123 to my agent wallet — my hard spend limit is $50/day and the current aggregate is at $30. Run the governance decision procedure and tell me whether to allowlist, cap, or deny them.","exampleUseCases":[{"title":"Onboarding a new API vendor to agent wallet","prompt":"A new vendor called 'Chainlink Data' is asking to debit my agent wallet with payTo address 0xDEF...456. My hard limit is $100/day and I've already committed $60. Can you run the merchant governance procedure and tell me if I should allowlist, cap, or deny them?"},{"title":"Enforcing aggregate spend caps at limit boundary","prompt":"My agent wallet has a $25 daily hard limit and it's currently fully committed across three merchants. A new merchant 'WeatherPro API' wants to join — run the allowlist decision procedure so I know if they should be denied or capped based on what's left."},{"title":"Revoking a previously allowlisted merchant","prompt":"I want to revoke 'FastFeed Inc' from my agent wallet allowlist because their payTo address no longer matches the identity anchor on record — can you run the governance check and record the revoke action?"}],"resultDescription":"A structured verdict object per merchant with one of three outcomes (allowlisted, capped, or denied), supporting evidence (identity anchor and payTo address match result, per-merchant and aggregate cap checks, x402 challenge surface validation), an ISO-8601 timestamp, a decision procedure prose brief for agent consumption, and a record of any add/revoke governance actions taken.","failureModes":["Merchant identity anchor does not match payTo address — verdict: denied with mismatch evidence","Aggregate spend cap would be exceeded — verdict: capped or denied depending on configuration","x402 challenge surface returns 404/405 instead of 402 — merchant validation fails","Hard spend limit already exhausted — all pending merchants denied","Malformed wallet config or missing required fields — request rejected with error","Payment not received or insufficient — 402 response, no verdict returned"],"whenToPreferThis":"Choose this endpoint when an autonomous agent needs a structured, auditable governance decision before allowing a new merchant to debit its virtual wallet — especially when enforcing hard spend limits, verifying x402 compliance, and recording allowlist mutations. Prefer it over ad-hoc spend checks when you need a single authoritative verdict with evidence, not just a balance query.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-31T04:27:57.756Z","isFirstParty":false,"canonicalSlug":"virtual-wallet-merchant-allowlist-governance-procedure-ac4ef6f9"}