mandategate
Live WooCommerce deployment · melidesign.co.uk

We attacked the checkout.
It held.

A live client store verifies every agent-driven checkout with cryptography, not a bot-score. We threw forged mandates, tampered checkouts, and spoofed issuers at the verifier that guards it — every one was turned away. Human customers never noticed.

verify.mandategate.com — the production verifier this store calls on every agent request
Valid agentsigned mandate,
matching cart
ALLOW · order proceeds
transport.signature_valid mandate.signature_valid checkout_hash_match cart_amount_match constraint_satisfied
Attackforged mandate
signature
DENY · turned away
mandate.signature_invalid
Attacktampered
checkout hash
DENY · turned away
mandate.checkout_hash_mismatch
Attackspoofed /
unknown issuer
DENY · turned away
mandate.signature_invalid
Attacklow mandate,
high cart
DENY · turned away
mandate.cart_amount_mismatch
Real cryptography, checked live. Every decision carries an auditable reason code — not a heuristic, a signature.

The reality merchants are walking into

AI agents are starting to check out on behalf of people. That is a new kind of traffic at the checkout: no browser, no session, and no obvious way to tell an authorized buyer's agent from anything pretending to be one.

The usual answers are both wrong. Block all automation, and you lose real agent sales. Trust it all, and you take the fraud. melidesign.co.uk runs a third path — it verifies.

The deployment

A production store, live, in block mode. Nothing about the rollout was hypothetical.

Store
melidesign.co.uk — production WooCommerce, Cloudflare-fronted, Store API live
Mode
standard + block — unauthorized agents are actually stopped
On-ramp
Installed in monitor mode first — logs, blocks nothing — then promoted once behavior was confirmed
Humans
Untouched. The gate only engages on the Web Bot Auth signature; shoppers never touch the agent path. Zero regression.

What a bot-allowlist can't do

Verification here isn't "is this a known agent." The store signs the checkout terms itself — cart, amount, currency, merchant — with its own key, server-side. The agent's mandate is bound to that signature.

A forged or swapped checkout is rejected even when it's internally self-consistent. That closes the low-mandate / high-cart gap an allowlist leaves wide open.

Verifiable intent. A non-repudiable audit trail. A reason code on every single decision.

In production, honestly

What this is — and isn't

The store carries both outcomes on its own live log: a valid agent allowed, an unauthorized one denied. Organic agent-commerce traffic is still early, so this isn't a fraud-blocked scoreboard. It's proof the store is ready, and the mechanism works end to end in production — the exact question a merchant asks before switching it on.

Is your store agent-ready?

Scan it in thirty seconds. See what an agent sees at your checkout — and what's missing.

mandategate independent infrastructure for agentic commerce