x402sandbox by realandworks.comStoreSalesDocs

Operating

Everything an operator does day-to-day happens in the admin UI at /admin (HTTP Basic auth, user admin, password from .env).

Products

+ Add product splits into two flows after the type choice. Folder of files: multi-select the starting files right in the form (optional — add more later), one price for everything inside, plus the text-excerpt preview option (folder-only: excerpts come from folder listings). Single file: one upload, its own URL. Both derive the sku, route, and content folder for you; both offer fixed or demand pricing and the Bazaar discovery toggle. remove takes a product off the store but leaves its files on disk (re-adding restores it).

Files (folder products)

Each folder's files page is the merchandising surface: header tiles (price, file count, total size, product revenue) and per file — its public URL, size, paid-sales count, a free admin-only content view, edit (in-browser content editing for text files, atomic saves), rename (any type; the public URL changes with the name), and delete. Multi-select uploads are all-or-nothing: one bad filename rejects the batch. Every mutation is audit-logged.

Pricing choices

Fixed, or demand pricing with a floor and ceiling (10% moves on a 15-minute window by default — tune step/windowMinutes in products.json).

Stats

The dashboard tiles show revenue, sales, and the 402→200 conversion funnel: paid hits are served purchases, unpaid hits are buyers who saw the price and walked. A low ratio means the price or the pitch is wrong. The requests table shows every hit with its outcome; sales export as CSV for bookkeeping.

Settings

/admin/settings (the ⚙ gear): network mode, two separate receive-address channels (a testnet slot and a mainnet slot — the active network decides which one earns; flipping can never route revenue to the other channel's wallet), CDP keys (never echoed back), facilitator. Changes are validated exactly like startup and written atomically to .env. Until the server restarts, an amber Restart pending banner stays on the page — with a Restart server now button that gracefully hands off to a fresh process (response flushes, listener closes, respawn re-reads .env, old process exits). See Networks.

Files on disk (the escape hatch)

Everything the UI does maps to plain files you can also edit directly: products.json (hot-reloads on save), content/<sku>/ folders, .env. The UI is a convenience, not a lock-in.