{"service":"wever-conditional-payments","version":"1.0.0","primitive":"conditional","network":"eip155:8453","chain_id":8453,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","escrow":null,"escrow_code_hash":null,"keeper":{"role":"Submits lock, release, refund and cancel transactions and pays their gas. It cannot choose a destination: every escrow function pays only the fixed payee or the fixed payer.","cadence":"Acts immediately after fund, attest and cancel when free, and on a one-minute schedule otherwise. A stuck transaction is replaced with the same nonce at higher fees, so only one attempt can land.","permissionless":"Release and refund are open to anyone on chain, so locked funds never depend on Wever."},"execution_available":false,"new_payments_paused":false,"pause":"When new_payments_paused is true, conditional-create and conditional-fund return 503 conditional_new_payments_paused before any fee and no new funds are locked. Status, attest, cancel and automatic release and refund of existing payments continue.","readiness_basis":"Configuration only on this public contract. Every lock, release, refund and cancel verifies the live Base chain ID and the exact escrow runtime bytecode first.","execution_note":"Create and status are available. Locking funds awaits deployment and verification of the escrow contract. Do not send USDC to any address directly.","max_payment_atomic":"300000000","conditions":["time","oracle"],"min_window_seconds":3600,"max_duration_seconds":7776000,"funding_window_seconds":900,"funding_deadline_seconds":86400,"schemas":{"conditional-create":{"type":"object","additionalProperties":false,"properties":{"payer":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}(?![\\s\\S])"},"payee":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}(?![\\s\\S])"},"amount_usdc":{"type":"string","pattern":"^(0|[1-9][0-9]{0,8})(\\.[0-9]{1,6})?(?![\\s\\S])"},"condition":{"oneOf":[{"type":"object","additionalProperties":false,"properties":{"type":{"const":"time"},"release_at":{"type":"string","pattern":"^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]Z(?![\\s\\S])"}},"required":["type","release_at"]},{"type":"object","additionalProperties":false,"properties":{"type":{"const":"oracle"},"oracle":{"type":"string","pattern":"^0x[0-9a-fA-F]{40}(?![\\s\\S])"}},"required":["type","oracle"]}]},"expires_at":{"type":"string","pattern":"^20[0-9]{2}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]Z(?![\\s\\S])"},"idempotency_key":{"type":"string","pattern":"^[A-Za-z0-9._:-]{1,128}(?![\\s\\S])"},"usage":{"enum":["synthetic","operational","unspecified"]}},"required":["payee","amount_usdc","condition","expires_at","idempotency_key"]},"conditional-fund":{"type":"object","additionalProperties":false,"properties":{"payment_id":{"type":"string","pattern":"^cp_[a-f0-9]{64}(?![\\s\\S])"},"idempotency_key":{"type":"string","pattern":"^[A-Za-z0-9._:-]{1,128}(?![\\s\\S])"},"valid_after":{"type":"integer","minimum":0,"maximum":4102444800},"valid_before":{"type":"integer","minimum":0,"maximum":4102444800},"signature":{"type":"string","pattern":"^0x[0-9a-fA-F]{130}(?![\\s\\S])"}},"required":["payment_id","idempotency_key","valid_after","valid_before","signature"]},"conditional-status":{"type":"object","additionalProperties":false,"properties":{"payment_id":{"type":"string","pattern":"^cp_[a-f0-9]{64}(?![\\s\\S])"}},"required":["payment_id"]},"conditional-cancel":{"type":"object","additionalProperties":false,"properties":{"payment_id":{"type":"string","pattern":"^cp_[a-f0-9]{64}(?![\\s\\S])"},"idempotency_key":{"type":"string","pattern":"^[A-Za-z0-9._:-]{1,128}(?![\\s\\S])"},"signature":{"type":"string","pattern":"^0x[0-9a-fA-F]{130}(?![\\s\\S])"}},"required":["payment_id","idempotency_key"]},"conditional-attest":{"type":"object","additionalProperties":false,"properties":{"payment_id":{"type":"string","pattern":"^cp_[a-f0-9]{64}(?![\\s\\S])"},"idempotency_key":{"type":"string","pattern":"^[A-Za-z0-9._:-]{1,128}(?![\\s\\S])"},"signature":{"type":"string","pattern":"^0x[0-9a-fA-F]{130}(?![\\s\\S])"}},"required":["payment_id","idempotency_key","signature"]}},"pricing":{"pricesAtomic":{"/api/conditional-create":"100000","/api/conditional-fund":"100000","/api/conditional-status":"100000","/api/conditional-cancel":"100000","/api/conditional-attest":"100000"},"freeTier":{"calls":10,"windowDays":30,"scope":"all_paid_endpoints","walletProofMaxAgeSeconds":300},"network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","scheme":"exact","x402Version":2,"principal_is_api_fee":false,"note":"0.10 USDC per paid API call, with the existing shared 10 signed-wallet free calls per rolling 30 days. API fees are separate from the payment amount. Wever pays the keeper gas for lock, release, refund and cancel."},"wallet_proof":{"header":"X-Wever-Wallet-Proof","every_call":true,"body_and_api_path_bound":true},"machine_endpoint":"https://weverlabs.com/mcp-conditional","human_page":"https://weverlabs.com/conditional-payments/","lifecycle":"conditional-create records immutable terms and moves nothing. The payer signs the returned USDC ReceiveWithAuthorization and calls conditional-fund; the keeper locks the full amount in the escrow. A payment is live only once locked. An unfunded payment lapses after the funding deadline without moving money.","conditions_detail":{"time":"Releases at release_at. expires_at must be at least min_window_seconds after release_at.","oracle":"Releases when the named oracle wallet signs the ConditionMet typed data for this payment and submits it with conditional-attest at least two minutes before expires_at, so the release can land on chain in time. The oracle cannot be the payee; it may be the payer."},"escrow_rules":"Release pays the whole amount to the payee or nothing. Expiry unmet refunds the whole amount to the payer. Cancel: payer only, before release; a date condition closes cancellation at its release time; after locking it needs the payer CancelPayment signature. Wever refuses cancel once an oracle attestation is accepted, but the escrow lets the payer cancel directly until the release lands. All outcomes are one-way and enforced by the contract. A funded payment stays bound to the escrow it was funded against.","idempotency":"Every mutating call takes an idempotency_key. The same key and request return the original result and never act twice. The escrow also refuses a second release, refund or cancel of the same payment.","status":"The payer, payee and oracle can read a payment. released, refunded and cancelled require finalized Base state; releasing, refunding and cancelling mean a transaction is pending or not yet final.","capacity":{"retained_payments":512,"storage_bytes":4194304,"history_eviction":"Only final records that never moved money, an hour after settling.","max_open_unfunded_per_payer":16},"evidence":{"real_money_acceptance":false,"local_evm_tests":true,"external_audit":false},"composition":"Records share the split vocabulary (payer_wallet, amount_atomic, recipients, usage, idempotency_key) so later invoicing can reference conditional payment and split IDs."}