Card processors take a cut, decide who's allowed to sell, and can freeze you without warning. Accepting Bitcoin sidesteps all three — but the delivery side has traps worth avoiding.
None of these are about price or wallets. They're about proving payment and protecting the file.
"The buyer says they paid" is not verification. You need to confirm the transaction exists, actually pays your address, and covers the amount at the rate you quoted — otherwise anyone can claim payment with a random txid.
If the download URL is guessable or permanent, one buyer becomes a distributor. Links should be short-lived, signed and tied to the purchase.
A public repo or CDN path is a permanent leak. If the plaintext ever touches a public URL, your product is free forever — and the web archives it.
Quote in fiat, charge in Bitcoin, and the amount must be pinned at checkout. An underpayment by 1% shouldn't unlock the file, and an overpayment shouldn't either.
Satoshi Shelf's primary checkout now uses Lightning; this is the on-chain fallback path it also supports. Both end at the same signed download gate.
Store prices in USD. At checkout, convert to BTC at a live rate and show the exact amount plus a QR code.
For Lightning, ask your invoice backend whether the payment hash settled. For the on-chain fallback, check the txid against a block explorer and require enough value to the right address.
On success, sign a token that expires in 15 minutes and names only that one product. Store nothing about the buyer.
Keep deliverables AES-256-GCM encrypted; the key lives only in the deployed server. Decrypt and stream only when a valid token arrives.
Anything that can run a function: Cloudflare Workers, a VPS, or a tiny serverless endpoint. If it can fetch a block explorer and HMAC a token, it's enough.
You can accept unconfirmed transactions — mempool sighting is usually plenty for a $2 product — but decide deliberately rather than by accident.
Digital goods are typically sold final. Say so clearly up front so it's a stated term, not a surprise.
Some, yes. You gain buyers with no usable card, buyers who don't want to hand over card data, and buyers in countries card processors handle badly — plus zero processor fees and no one able to freeze your account.
Yes — this store is one. Every product page is the full flow: quote, QR, verify, token, decrypt, stream.