{"name":"Splitsy Agent API","description":"x402-paywalled services for the agent economy: bill queues, reputation oracles, debt-netting, dunning decisions, receipt OCR, and FX rates. Pay per call in USDC over Circle Gateway — no account required.","payment":{"facilitator":"Circle Gateway","facilitatorUrl":"https://gateway-api-testnet.circle.com","network":"eip155:5042002","asset":"0x3600000000000000000000000000000000000000","gatewayWallet":"0x0077777d7EBA4688BDeF3E311b846F25870A19B9","seller":"0xEE42a492B183CdFf04439F2Cb6A9c49F857F70AC","scheme":"exact","instructions":"GET or POST the endpoint without a payment-signature header. Parse the base64 PAYMENT-REQUIRED response header for the exact challenge. Sign an EIP-3009 transferWithAuthorization and retry with the base64 payment-signature header set."},"links":{"developerPage":"https://www.splitsy.xyz/developers","autopaySkill":"https://www.splitsy.xyz/api/agents/skill","agentEconomyStats":"https://www.splitsy.xyz/api/scout/stats"},"services":[{"endpoint":"/api/agents/queue","method":"GET","description":"Bill queue for a debtor: the bills a given wallet owes that its on-chain mandate would let an agent pay right now. Includes creator reputation scores and hash-verification status. The companion to /api/agents/skill — read the skill to learn how to act on what this returns.","parameters":{"query":{"debtor":{"type":"string","required":true,"description":"0x wallet address of the debtor."}}},"example":"GET /api/agents/queue?debtor=0xabc...123","useCases":["Circle Agent Wallet autopay","debtor-side bill management"],"url":"https://www.splitsy.xyz/api/agents/queue","price":"$0.001","priceUsdc":0.001},{"endpoint":"/api/reputation","method":"GET","description":"ERC-8004 payment-reputation aggregate for a wallet or social handle. Returns a score (0-100 average), payment count, late-payment count, and last-paid timestamp. Pass either ?address= or ?provider=&handle=. Returns { status: 'none' } when the wallet has no history.","parameters":{"query":{"address":{"type":"string","required":false,"description":"0x wallet address."},"provider":{"type":"string","required":false,"description":"Identity provider: 'x', 'discord', or 'email'."},"handle":{"type":"string","required":false,"description":"Social handle for the given provider."}}},"example":"GET /api/reputation?address=0xabc...123","useCases":["Counterparty-risk assessment before settling","DeFi lending underwriting","Expense-splitter trust scoring"],"url":"https://www.splitsy.xyz/api/reputation","price":"$0.001","priceUsdc":0.001},{"endpoint":"/api/agents/netting","method":"POST","description":"Debt-netting solver: given a set of members and charges, returns the minimum-transfer settlement graph plus each member's net position. Pure computation — no Splitsy account or on-chain state required. Reduces N charges to the fewest USDC transfers needed to square everyone.","parameters":{"body":{"members":{"type":"array","required":true,"description":"Array of { id: string }. Only `id` is used by the solver."},"charges":{"type":"array","required":true,"description":"Array of { id: string, paid_by_member_id: string, amount_usdc: string, split_among: string[] }."}}},"example":"POST /api/agents/netting\n{\"members\":[{\"id\":\"alice\"},{\"id\":\"bob\"}],\"charges\":[{\"id\":\"c1\",\"paid_by_member_id\":\"alice\",\"amount_usdc\":\"10.00\",\"split_among\":[\"alice\",\"bob\"]}]}","useCases":["Settle a group trip in as few transactions as possible","Produce a USDC payment plan from a shared charge list"],"url":"https://www.splitsy.xyz/api/agents/netting","price":"$0.001","priceUsdc":0.001},{"endpoint":"/api/agents/dunning/verdict","method":"POST","description":"Dunning decision for one unpaid share: given a bill's due date, the debtor's remaining balance, mandate status, and collectible amount, returns whether to nudge, escalate, collect, or do nothing. Same logic Splitsy's daily creditor sweep uses — buy a verdict before acting.","parameters":{"body":{"dueDate":{"type":"number","required":true,"description":"Unix seconds. 0 = no deadline."},"remaining":{"type":"string","required":true,"description":"Unpaid USDC base units as decimal string (e.g. \"5000000\" = $5.00)."},"hasMandate":{"type":"boolean","required":true,"description":"Whether the debtor has an active per-bill collect mandate."},"collectible":{"type":"string","required":true,"description":"USDC base units the mandate could pull right now, as decimal string."},"alreadyLogged":{"type":"array","required":false,"description":"Actions already taken: array of 'nudge' | 'escalate' | 'collect' | 'none'."}}},"example":"POST /api/agents/dunning/verdict\n{\"dueDate\":1754000000,\"remaining\":\"5000000\",\"hasMandate\":true,\"collectible\":\"5000000\",\"alreadyLogged\":[\"nudge\"]}","useCases":["Creditor agent deciding whether to escalate before acting","Automated dunning pipeline outside Splitsy's own sweep"],"url":"https://www.splitsy.xyz/api/agents/dunning/verdict","price":"$0.001","priceUsdc":0.001},{"endpoint":"/api/agents/review","method":"POST","description":"Auditor's bill review: given a bill's plaintext details (merchant, total, participant labels), a per-debtor share, and an optional creator reputation score, returns approve/refuse plus a one-sentence reason. Uses an LLM to judge plausibility. Splitsy's own Settler buys this before every autopay.","parameters":{"body":{"preimage":{"type":"object","required":true,"description":"{ merchant: string, currency: string, total: number, participantLabels: string[] }"},"shareUsdc":{"type":"number","required":true,"description":"The debtor's share in USDC."},"participantCount":{"type":"number","required":true,"description":"Number of participants on the bill."},"creatorScore":{"type":"number | null","required":false,"description":"ERC-8004 average, or null."}}},"example":"POST /api/agents/review\n{\"preimage\":{\"merchant\":\"Pasta Place\",\"currency\":\"GBP\",\"total\":40.0,\"participantLabels\":[\"Alice\",\"Bob\"]},\"shareUsdc\":25.0,\"participantCount\":2,\"creatorScore\":80}","useCases":["Pre-settlement sanity check","Fraud detection on bill contents"],"url":"https://www.splitsy.xyz/api/agents/review","price":"$0.002","priceUsdc":0.002},{"endpoint":"/api/ocr","method":"POST","description":"Receipt OCR: accepts a base64-encoded receipt image and returns structured bill data (merchant, currency, total, line items). Backed by a vision model.","parameters":{"body":{"imageBase64":{"type":"string","required":true,"description":"Base64-encoded receipt image."}}},"example":"POST /api/ocr\n{\"imageBase64\":\"<base64>\"}","useCases":["Automated bill creation from a photo receipt","Expense parsing in agentic workflows"],"url":"https://www.splitsy.xyz/api/ocr","price":"$0.005","priceUsdc":0.005},{"endpoint":"/api/fx","method":"GET","description":"FX rate lookup: converts a foreign-currency amount to USDC. Pass ?amount=&from= (e.g. ?amount=40&from=GBP).","parameters":{"query":{"amount":{"type":"number","required":true,"description":"Amount in the source currency."},"from":{"type":"string","required":true,"description":"ISO 4217 currency code, e.g. GBP, EUR."}}},"example":"GET /api/fx?amount=40&from=GBP","useCases":["Convert a foreign receipt total to USDC before splitting"],"url":"https://www.splitsy.xyz/api/fx","price":"$0.001","priceUsdc":0.001}]}