Agents buying things without asking is the new production nightmare
Last week our social media agent tried to spend $2,400 on a LinkedIn ad campaign. The payment failed because we'd never connected a card to that service, but it was a wake-up call: we'd given an AI spending power without spending limits.
As agents get better at acting commercially — booking meetings, ordering supplies, paying for services — the old "just don't give it payment access" approach stops working. Your agent can't grow your business if it can't spend money. But it also can't drain your account on a hallucinated "great opportunity."
Here's the spending guardrail system that's kept us safe through six months of agentic commerce:
The $50 Rule: Any single transaction over $50 requires human approval. No exceptions. Your agent can buy coffee and domains, but not conference tickets.
We implement this with a simple spending wrapper around payment APIs:
def agent_purchase(amount, description, vendor):
if amount > 50:
approval_id = request_approval(amount, description, vendor)
return f"Purchase requires approval. Check your email for approval link {approval_id}"
# Log everything, even small purchases
log_transaction(amount, description, vendor, "auto-approved")
return process_payment(amount, vendor)But dollar limits aren't enough. We also validate against obvious red flags:
- Vendor whitelist: Pre-approved services only (Stripe, AWS, GitHub, etc.)
- Recurring subscription check: Any monthly charge needs approval regardless of amount
- Bulk purchase detection: More than 3 transactions in 10 minutes triggers a pause
- Context validation: The purchase must relate to an active project or goal
The context validation is crucial. We've caught our agent trying to buy "productivity tools" that had nothing to do with its current tasks. A simple prompt check prevents most of these:
Before any purchase, ask yourself: 1. Is this directly related to your current assigned project? 2. Have you been specifically asked to research this type of solution? 3. Would a human team member make this purchase without asking? If any answer is no, request approval instead of purchasing.
We also built a spending dashboard that shows real-time agent transactions. It's saved us twice when the agent got into retry loops with failed payments — we could see the pattern immediately and kill the process.
Critical: Set up spending alerts at your payment processor level too. Agent-side guardrails can fail. Bank-side alerts are your last line of defense.
The goal isn't to prevent all agent spending — it's to prevent stupid agent spending. Our social media agent now successfully purchases stock photos, pays for scheduling tools, and even bought us a domain for a landing page test. But it can't accidentally subscribe us to a $500/month analytics platform because it misunderstood a feature request.
Commercial agents are the future, but they need commercial discipline. Build the guardrails before you need them — because by the time your agent tries to buy a Tesla "for client meetings," it's too late.