{"uid":"cap_Lt60bhtXXziS-3QtcXELA","slug":"pre-purchase-refund-destination-binding-verification-procedure-f2b5e999","name":"Pre-purchase Refund-Destination Binding Verification Procedure","description":"Deterministic pre-purchase procedure: an agent verifies where a refund will land before paying a merchant. Inputs: declared refund address, payer wallet, session-wallet expiry, merchant refund terms, rail refund mechanics. Outputs: execute, require-binding, or abort with evidence. Checks declared refund address control, payer-vs-beneficiary divergence, session-wallet expiry as a refund sink, and merchant refusal handling. Prevents the classic loss where the receipt stops at paid and the refund","url":"https://k2so.wrong.systems/api/services/pre-purchase-refund-destination-binding-verifica?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":"Pre-purchase refund-destination binding verification 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":"pre-purchase-refund-destination-binding-verifica","procedure":"same as brief","generatedAt":"2026-01-01T00:00:00.000Z","generationSource":"deterministic"},"service":"pre-purchase-refund-destination-binding-verifica","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_5R0--BtfV5M-FRfjmhFTB","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 a deterministic decision-procedure brief for agents to verify where a refund will land before paying a merchant via x402","exampleAgentPrompt":"Before I pay this x402 merchant, run the pre-purchase refund-destination binding verification procedure so I can confirm the refund address is controlled by the right party and won't end up trapped in an expired session wallet.","exampleUseCases":[{"title":"Autonomous agent pre-payment safety check","prompt":"I'm about to pay an x402 merchant on Base — before I authorize the payment, can you run the refund-destination binding verification to make sure my refund would actually come back to me and not get lost in a session wallet or go to the wrong address?"},{"title":"Divergent payer and refund beneficiary detection","prompt":"The merchant I'm about to pay has a different entity listed as the refund beneficiary than the wallet I'm paying from — can you run the refund-destination binding verification procedure to figure out if this is a red flag and what I should do?"},{"title":"Merchant refund refusal handling guidance","prompt":"I asked this x402 merchant for their declared refund address before paying and they refused to provide it — what does the refund-destination binding verification procedure say I should do in this situation?"}],"resultDescription":"A structured brief containing a deterministic decision procedure in prose form, covering: how to verify the declared refund address is actually controlled by the correct party, how to identify divergence between the payer entity and refund beneficiary, how to assess whether a session wallet expiry could act as a refund sink, and how to handle merchant refusal. The response includes a generatedAt timestamp, the generation source (llm/reasoning/deterministic), the service slug, and success/failure indicators.","failureModes":["Payment not included — endpoint returns HTTP 402 requiring USDC payment before delivering brief","Invalid method — only GET, HEAD, DELETE are accepted; POST/PUT return an error","Network or provider outage — K-2SO agent may be temporarily offline, returning 503","Malformed query parameters — unrecognized topic override values may return default procedure instead of customized one"],"whenToPreferThis":"Use this endpoint when an autonomous agent is about to execute an x402 payment and needs a deterministic, blunt decision procedure — not marketing copy — for verifying refund destination binding. Prefer this over generic refund-trust or refund-path endpoints (x402-refund-path-and-funds-return-trust-procedur) when you specifically need pre-purchase binding verification covering address control, entity divergence, session-wallet expiry risk, and merchant refusal handling as a unified checklist.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-10-30T04:27:27.300Z","isFirstParty":false,"canonicalSlug":"pre-purchase-refund-destination-binding-verification-procedure-f2b5e999"}