Zaps 101: Lightning Payments with Nostr Receipts
Zaps 101: Lightning payments with Nostr receipts
A zap is a Lightning payment that publishes a Nostr receipt (NIP-57). It is the foundation of payments on pleb.school.
The zap flow (high level)
- The user initiates a zap
- A zap request event (kind 9734) is created and signed
- The recipient’s LNURL server returns an invoice
- The user pays the invoice
- A zap receipt (kind 9735) is published to Nostr
Why zaps are powerful
- Instant settlement over Lightning
- Global, permissionless payments
- Public or private support
- Verifiable receipts on an open protocol
How pleb.school uses zaps
Appreciation zaps (tips)
Users can send a tip to any content. Tips can work without a session as long as a signer is available (NIP-07 or an anonymous keypair).
Purchase zaps (unlocking content)
Paid content unlocks when verified zap receipts meet the price. Purchases require an authenticated session so the access record can be stored.
Privacy mode
When privacy is enabled, the zap is signed with an anonymous key while still binding the purchase to the real account via a P tag. Users can stay private and still unlock content.
Zaps are simple for users and transparent for admins: the platform never touches funds, it only verifies receipts.
Write a comment