Solana Pay is a URL standard, not a payment processor. You show a solana: link or QR, the buyer's wallet builds the transfer, and the money lands directly in your wallet. There's no processor fee, no chargebacks and no monthly bill. Here's how to set it up properly.
solana:<YOUR_WALLET>?amount=7&spl-token=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v&reference=<RANDOM_PUBKEY>&label=My%20Shop
Leave out spl-token to charge in SOL. The reference is a random public key generated for each order. Wallets attach it to the transaction, so you can find that payment on-chain later.
Call getSignaturesForAddress(reference), then getTransaction for each signature. Check that the transaction succeeded, that your wallet's balance went up by at least the price, and, for USDC, that the mint is the real USDC mint.
Browser-only checks can be faked. A Cloudflare Worker on the free tier can do the verification and gate the download without a database: each download request re-checks the chain.
confirmed for small digital goods and finalized for anything valuable.The Solana Pay Drop-In Checkout Kit packages all of this: a single-file checkout, a verifying Worker, a balance script and a full guide, for 7 USDC. The checkout on that page runs on the kit itself.
More guides: How to Accept USDC Payments on Your Website (2026 Guide) · Solana Pay on WordPress · Solana Pay Shopify Alternative · Solana Pay QR Code · Accept Solana payments