NIP-60: Cashu Wallet
NIP-60 defines how Cashu-based ecash wallets operate within Nostr. Wallet information is stored on relays, enabling portable wallets that work across different applications without requiring separate accounts.
How It Works
NIP-60 uses three types of events stored on relays:
Wallet Event (kind 17375): A replaceable event containing encrypted wallet configuration, including mint URLs and a private key for receiving payments. This key is separate from the user’s Nostr identity key.
Token Events (kind 7375): Store encrypted unspent Cashu proofs. When proofs are spent, the client deletes the old event and creates a new one with any remaining proofs.
Spending History (kind 7376): Optional transaction records showing fund movements, with encrypted content and references to created/destroyed token events.
Key Features
- Ease of use - New users can receive ecash immediately without external account setup
- Interoperability - Wallet data follows users across different Nostr applications
- Privacy - All wallet data is encrypted to the user’s keys
- Proof management - Tracks which token events were spent to prevent double-spending
Workflow
- Client fetches wallet configuration from relays
- Token events are loaded and decrypted to get available funds
- Spending creates new token events and deletes old ones
- Optional history events record transactions for user reference
Primary sources:
Mentioned in:
See also: