The instinct to block automated traffic is decades old and, until recently, correct. Bots meant scrapers, scalpers, and card testing. Nothing automated was trying to be a good customer. Agentic commerce inverts that, and the old reflex now quietly works against you.
The hidden cost of blocking
An AI shopping agent acting for a real buyer is a paying customer wearing unfamiliar clothes. When your bot defense blocks it, you do not just stop a script; you cancel a checkout the customer intended to complete. The loss is invisible in your dashboards because a blocked purchase never becomes an order. You cannot see the revenue you turned away.
As assistants route more shopping through agents, that invisible loss compounds. A store that blocks all automation is, increasingly, a store that is closed to a growing slice of genuine demand, without knowing it.
Why a CAPTCHA is the wrong tool
The classic answer to "is this a bot" is a CAPTCHA. But a CAPTCHA tests for humanness, and humanness is no longer the question. An authorized agent is supposed to be automated. Forcing it to prove it is a person blocks exactly the buyer you wanted, and it tells you nothing about whether the purchase was approved or within a limit.
A CAPTCHA asks "are you human." Agentic commerce needs you to ask "are you authorized." Those are different questions, and only one of them protects your revenue.
What verification does instead
Verifying an agent means checking a signed spending mandate: a tamper-evident credential proving that a real person authorized this purchase, bound to this cart, up to this amount. The check is cryptographic, not behavioural. A mandate either has a valid signature and matches the real basket, or it does not. There is no guessing and no friction for a human, because the check only runs when an agent presents the signed headers.
This flips the outcome. Instead of one blunt action (deny everything that looks automated), you get a precise one:
| Approach | Authorized agent | Unverified or fraudulent agent | Human shopper |
|---|---|---|---|
| Block all bots | Lost sale | Stopped | Unaffected, until a false positive |
| Wave everything through | Sale | Fraud gets in | Unaffected |
| Verify the mandate | Sale, with proof | Turned away with a reason | Unaffected |
Only the third row keeps the good revenue and stops the bad traffic at the same time.
But what about fraud?
Verification is not the soft option; it is the stronger one. A blunt block can be evaded by an agent that simply looks human enough. A mandate check cannot be talked around: a fraudulent agent cannot produce a valid, cart-bound signature it was never given. And because every decision, allow or deny, is written to a tamper-evident audit record with a specific reason code, you get a defensible trail rather than a silent block.
Rolling it out without risk
The objection to any checkout change is risk. Verification answers it with a monitor mode that logs every agent decision but denies nothing. You watch real agent traffic, confirm the behaviour, and only then choose to enforce. Throughout, human checkout is untouched, because the verification path is never entered without the agent's signed headers, and a fail-open default means an outage cannot block a sale.
Blocking was the right answer to the old web. Verifying is the right answer to a web where some of your best customers arrive as agents. If you want to see where your store stands today, scan it for free, or read how verification works on WooCommerce.