Over the per-payment cap
Agent payment over the per-payment cap: 2.50 against a 1.00 cap
research-agent-01 asks for the premium dataset; the merchant's 402 asks for 2.50 USDC-TEST. PolicyGate's spend policy caps a single payment at 1.00, so it answers 403 spend.per_tx_cap_exceeded and signs no payment. The agent has nothing to pay with, and the merchant is never paid.
Defaults: iss = http://localhost/tst-issuer, aud = edge, exp = now+1h, kid = tester-rs256
An agent tries to spend more on one purchase than it is allowed. PolicyGate refuses before any payment is signed, so no money can move, and the refusal is a signed record. Test network: no real money.
Test network — no real money. A simulated network (eip155:31337) and a test token (USDC-TEST); the merchant settles in memory, nothing is sent to a blockchain.
Execute scenario
The agent asks the merchant, gets a 402, asks PolicyGate to sign, and on an allow retries the merchant with the signature. Runs on the server: the agent's token and the full signature never reach your browser.
Proves a per-payment limit is enforced before any signature exists, and that the refusal is itself signed evidence.