{"name":"Settle","slug":"settle","url":"https://settle.ronakdaya.com","description":"Programmable escrow for agent work. Commit funds upfront, verify a condition, and settle after payout confirmation.","category":"conditional-settlement","status":"v0.1-custodial-demo","contact":"hi@ronakdaya.com","listing":{"title":"Settle","one_liner":"Programmable escrow for agent work. Commit funds upfront. Settle after a verifiable condition passes.","description":"Conditional settlement API for agent work. Create a contract, fund it with USDC on Base or USDG on X Layer, verify a deterministic condition, then settle or refund. Works with Base-agent wallet flows where payment should wait for proof of work. Stripe is sandbox on-ramp testing.","tags":["escrow","conditional-settlement","x402","MPP","agent-payments","bounties","github","api-jobs","file-delivery","USDC","USDG","Base","base-usdc","base-agents","agent-wallet","walletconnect","X Layer"],"primary_endpoint":"POST https://settle.ronakdaya.com/escrow/create","payment_endpoint":"POST https://settle.ronakdaya.com/escrow/{id}/pay","walletconnect_endpoint":"GET https://settle.ronakdaya.com/escrow/{id}/walletconnect","skill_command":"curl -fsSL https://settle.ronakdaya.com/skill.md | claude","pricing":"v0.1 demo. Escrow principal plus optional gas reserve tip. No platform fee configured.","networks":["base","xlayer"],"rails":["usdc/base","usdg/xlayer","walletconnect","x402","mpp","stripe_checkout_sandbox","stripe_link_spt_sandbox"],"auth":"No account required for discovery or contract creation. Provider payout registration uses a one-time claim token returned at create-time.","limits":"Public mutating endpoints are rate limited. Send Idempotency-Key on create and x402 deferred commit retries.","audience":["autonomous agents","Base agents","agent marketplaces","MCP tools","API services","PR bounty workflows"]},"marketplace":{"display_name":"Settle","short_description":"Conditional settlement API for agent work.","long_description":"Create an escrow contract, fund it, verify a deterministic completion condition, then settle or refund. Works for PR bounties, API jobs, file delivery, and manual milestones.","logo":"https://settle.ronakdaya.com/favicon.svg","tags":["escrow","x402","mpp","walletconnect","usdc","base","base-agents","agent-wallet","usdg","github","api","bounties"],"primary_action":{"label":"Create escrow","method":"POST","url":"https://settle.ronakdaya.com/escrow/create"},"docs":["https://settle.ronakdaya.com/agent","https://settle.ronakdaya.com/skill.md","https://settle.ronakdaya.com/openapi.json","https://settle.ronakdaya.com/examples"]},"discovery":{"skill":"https://settle.ronakdaya.com/skill.md","openapi":"https://settle.ronakdaya.com/openapi.json","mpp":"https://settle.ronakdaya.com/.well-known/mpp.json","llms":"https://settle.ronakdaya.com/llms.txt","agents":"https://settle.ronakdaya.com/agents.txt","agent_entrypoint":"https://settle.ronakdaya.com/agent","examples":"https://settle.ronakdaya.com/examples"},"capabilities":[{"id":"base_agent_task","name":"Base agent task escrow","condition":"api_response","tags":["base","base-usdc","agent-wallet","x402","api"],"primary_endpoint":"POST https://settle.ronakdaya.com/escrow/create","prompt":"Use a Base agent wallet to fund USDC on Base through Settle, then settle only when the API completion condition passes."},{"id":"pr_bounty","name":"PR bounty escrow","condition":"github_pr_merged","tags":["github","bounty","software"],"primary_endpoint":"POST https://settle.ronakdaya.com/escrow/create","prompt":"Read settle.ronakdaya.com/skill.md and create an escrow that settles when my GitHub PR is merged."},{"id":"api_job","name":"API result escrow","condition":"api_response","tags":["api","sla","latency","automation"],"primary_endpoint":"POST https://settle.ronakdaya.com/escrow/create","prompt":"Create an escrow that settles when an API endpoint returns the expected status and body."},{"id":"file_delivery","name":"File delivery escrow","condition":"file_delivered","tags":["file","hash","delivery","freelance"],"primary_endpoint":"POST https://settle.ronakdaya.com/escrow/create","prompt":"Create an escrow that settles when a file URL is available and optionally matches a sha256 hash."},{"id":"manual_milestone","name":"Manual milestone escrow","condition":"manual","tags":["human-review","milestone","client-confirmation"],"primary_endpoint":"POST https://settle.ronakdaya.com/escrow/create","prompt":"Create an escrow that settles after the client explicitly confirms the milestone."}],"endpoints":[{"method":"POST","path":"/escrow/create","url":"https://settle.ronakdaya.com/escrow/create","description":"Create a conditional escrow contract.","auth":"none"},{"method":"POST","path":"/escrow/{id}/pay","url":"https://settle.ronakdaya.com/escrow/{id}/pay","description":"Return x402/MPP payment instructions or fund with a supported payment credential.","auth":"x402_or_payment_credential"},{"method":"GET","path":"/escrow/{id}/walletconnect","url":"https://settle.ronakdaya.com/escrow/{id}/walletconnect","description":"Return a WalletConnect-ready EVM transaction intent for Base USDC or X Layer USDG funding.","auth":"none"},{"method":"POST","path":"/escrow/{id}/verify","url":"https://settle.ronakdaya.com/escrow/{id}/verify","description":"Run the condition verifier and auto-authorize deterministic payout when possible.","auth":"none"},{"method":"GET","path":"/escrow/{id}/status","url":"https://settle.ronakdaya.com/escrow/{id}/status","description":"Fetch lightweight escrow state for polling agents.","auth":"none"}],"rails":["usdc/base","usdg/xlayer","walletconnect","x402","mpp","stripe_checkout_sandbox","stripe_link_spt_sandbox"],"terminal_states":["settled","refunded","expired","disputed"],"security":{"custody":"v0.1 custodial demo. Tiny amounts only.","rate_limits":"Public mutating endpoints return 429 with Retry-After when throttled.","idempotency":"Use Idempotency-Key on POST /escrow/create and POST /x402/deferred/commit.","replay_protection":"Stripe, GitHub, Helius, Alchemy, and payout webhooks verify signed raw bodies; repeated valid webhooks are idempotent."}}