Capia
It buys what you'd have missed.
Created on 2nd August 2026
•
Capia
It buys what you'd have missed.
The problem Capia solves
Things you want sell out or drop in price while you're asleep. You either sit refreshing a page or you miss it.
You tell Capia what you want and the most you'll pay — you never name a store. One passkey approval mints a Prava mandate: a spending cap Visa enforces, scoped to one shop. It watches price and stock, and buys when your condition fires.
It's useful today because it runs unattended and still can't overspend. Any agent can drive it over MCP, and none of its twelve tools can raise a limit or approve a mandate — so an agent that gets prompt-injected still can't move money.
Next is agent accreditation, so checkout completes end to end. Merchants refuse unaccredited agents right now; we report that decline to Prava and show it in the ledger instead of hiding it.
Challenges I ran into
Merchants won't let you finish. Shopify's UCP returns -32000 AuthenticationRequired on complete_checkout. I assumed I'd misconfigured something, so I checked 91 brands: 50 serve a live UCP manifest, none advertise payments. So I stopped trying to hide it — the decline is reported to Prava and shown in the ledger with the real code.
A two-character field. Prava's report_mandate_charge takes an ISO-8583 response code, max two characters. I was sending the whole error string. The API accepted it and dropped it, so charges sat at awaiting_result with nothing in the logs. Truncating fixed them all at once.
Discovery suggesting stores it had ruled out. It read store names from the model's prose, so "none of these sell protein snacks — not Death Wish Coffee, not Olipop" matched both and recommended them. Now the model prints a DOMAINS: line and I read only that line.
Tracks Applied (5)
Best Visa Intelligent Commerce Implementation
Visa
OpenAI
OpenAI
Agent Commerce Discovery & Trust
Senso

