# AisleRun > AisleRun is a shopper test an AI agent can order. The agent pays for one browser run through PayBox (an x402 payment in USDC on Base), and AisleRun opens an authorized product page in Chromium on a 390 x 844 phone and a 1440 x 900 desktop, adds the item to the cart, opens checkout without submitting anything, and returns a pass, fail or inconclusive verdict per viewport with the recording, screenshots, a Playwright trace and the first step that broke. Every page below is plain Markdown. The same docs are on the web at https://aislerun.vercel.app/docs and all in one file at https://aislerun.vercel.app/llms-full.txt. The API is at https://aislerun.158-220-85-120.sslip.io; an agent pays for a run by calling PayBox's use_service tool on https://aislerun.158-220-85-120.sslip.io/v1/inspections. ## Start here - [What is AisleRun](https://aislerun.vercel.app/docs/introduction.md): A shopper test an AI agent can order: one paid browser run that shops a product page on a phone and a desktop and stops at checkout. - [Order your first run](https://aislerun.vercel.app/docs/quickstart.md): Get a quote, pay for the run through PayBox, and read the result, with the exact requests an agent sends. - [How a run works](https://aislerun.vercel.app/docs/how-it-works.md): What happens between the quote and the report: the payment gate, the worker, the browser journey and where evidence is kept. ## Using AisleRun - [Quotes](https://aislerun.vercel.app/docs/quotes.md): Ask what a run costs and what it covers before anything is charged, and how a quote binds the paid request to it. - [Paying with PayBox](https://aislerun.vercel.app/docs/paying-with-paybox.md): How PayBox pays the x402 request, what the agent gets back, and what happens when a payment fails or is retried. - [Reading results](https://aislerun.vercel.app/docs/reading-results.md): Poll the run, read its event stream, and open the report with recordings, screenshots and traces. - [Verdicts and blockers](https://aislerun.vercel.app/docs/verdicts.md): What pass, fail and inconclusive mean, every blocker code, and why a service error never counts against the store. - [Retests and comparisons](https://aislerun.vercel.app/docs/retests.md): Pay for a second run after a fix and compare the two side by side, recording against recording. ## Safety and trust - [Authorized stores](https://aislerun.vercel.app/docs/authorized-stores.md): Which stores AisleRun will test, why a public URL isn't permission, and how the browser is fenced off from everything else. - [Payments, retries and refunds](https://aislerun.vercel.app/docs/payments-and-refunds.md): The price, when money moves, how a retried request avoids a second charge, and what happens to a payment if a run fails. - [Privacy and evidence](https://aislerun.vercel.app/docs/privacy-and-evidence.md): Who can read a report, how long evidence links last, what is published, and what AisleRun never collects. - [Limitations](https://aislerun.vercel.app/docs/limitations.md): What a run can't tell you, and the things AisleRun doesn't do yet. ## Reference - [API](https://aislerun.vercel.app/docs/api.md): Base URL, every endpoint, request and response shapes, read tokens and the error codes. - [The test store](https://aislerun.vercel.app/docs/test-store.md): AisleRun's own labelled fixture store, its four versions and the seeded defect. - [Live proof](https://aislerun.vercel.app/docs/proof.md): Every paid run so far, with its settlement on Base and what the browser found. - [FAQ](https://aislerun.vercel.app/docs/faq.md): Direct answers to the questions people ask about AisleRun, PayBox and the results. - [Glossary](https://aislerun.vercel.app/docs/glossary.md): Plain-word definitions of the terms in the app and these docs. ## Optional - [All docs in one file](https://aislerun.vercel.app/llms-full.txt): every page above, concatenated - [Published runs](https://aislerun.vercel.app/demo): the paid runs with recordings and settlements - [Service metadata](https://aislerun.158-220-85-120.sslip.io/v1/meta): live price, network and authorized stores as JSON