All three xmr-pay modes, live on stagenet (test coins, no value). Drop in the widget, verify a payment 100% in your browser with no server, or watch the hands-off view-only mode. It's real — not a simulation.
Drop in the widget — build it live
One tag. Tweak it below and the real widget rebuilds — then copy the snippet. Zero dependencies, no third parties.
// copy-paste — self-hosted, no build step
// live widget · real stagenet subaddress
The widget NEVER touches your money and never scans — it just shows the QR/address and polls status. Funds go straight to your wallet. Self-hosted, no CDN.
Proof mode — verification with no server
The buyer pastes their payment proof. Verification runs 100% in YOUR browser (monero-ts WASM), against any node. Nobody hosts a verifier.
1
Pay this stagenet address
Any amount. Grab some sXMR from a stagenet faucet, send it here:
2
In your wallet, get the proof
Pick your wallet for the exact steps:
3
Paste and verify — in your browser
First verification downloads the WASM engine (~once, a few MB). After that it's instant. The crypto is the SAME the merchant's agent runs (double-spend gate, unlock_time, exact piconero math). Only the node is external — and that's Monero's sovereign stance.
View-key mode — automatic, hands-off
The merchant runs a view-only agent (it can see, never spend) that scans the chain and completes the order on its own — the buyer just pays.
1
The buyer pays a per-order subaddress
The widget shows the QR; nothing to paste.
2
The agent detects the payment on-chain
Mempool → confirmed, sums partial payments, and fires a signed webhook to the store. It physically needs a running process (someone has to watch once the buyer has closed the tab) — that's why this mode isn't "no server", and that's fine: it's what makes it automatic.
At the demo store: grab sXMR from a faucet, check out, and watch the order auto-complete (watching → detected → confirmed) with a signed receipt. It's the real agent scanning stagenet.