Bitcoin Lightning wallet bot for Telegram, enabling instant peer-to-peer payments, zaps, and donations with zero-fee internal transfers using Breez Spark SDK.
- 🔐 Self-Custodial: Users have full control of their funds with mnemonic seed phrases
- ⚡ Lightning Fast: Instant payments using Bitcoin Lightning Network via Spark Breez SDK
- 💸 Zero-Fee Internal Transfers: Send sats between bot users with 0 fees using Spark
- 🌍 Lightning Address: Each user gets their own Lightning address ([email protected])
- 💬 Group Zaps: Tip users in Telegram groups with /zap command
- 🔗 Multi-Payment Support:
- Lightning invoices (BOLT11)
- Lightning addresses
- LNURL-Pay
- Bitcoin on-chain addresses
- 💰 Withdraw All: Empty your entire wallet with one command
- 📝 Invoice Memos: Add custom descriptions to invoices
- 🔄 Wallet Recovery: Restore wallet using 12-word mnemonic
- ⚙️ Customizable Lightning Address: Change your Lightning username anytime
- Telegram Bot Token (from @BotFather)
- Telegram API credentials (from my.telegram.org)
- breez API Key (from Breez SDK)
-
Clone the repository: git clone https://github.com/musa-42/Zap_lnbot.git cd Zap_lnbot
-
Install dependencies: pip install -r requirements.txt
-
Set up environment variables: cp .env.example .env
Edit .env and add your credentials: TELEGRAM_API_ID=your_api_id TELEGRAM_API_HASH=your_api_hash TELEGRAM_BOT_TOKEN=your_bot_token BREEZ_API_KEY=your_breez_api_key DONATE_USER_ID=your_telegram_user_id # Optional: for donations
- Run the bot: python main.py
- /start - Initialize your wallet and view balance
- /zap_balance - Quick balance check
- /zap - Zap someone by replying to their message
- /zap @username - Zap someone by mentioning their username
Examples: /zap 1000 /zap 5000 @alice
When you send /start, you’ll see the main menu with options:
- 📤 Send - Send Lightning or on-chain payments
- 📥 Receive - Create invoices and view your Lightning address
- 🔄 Refresh - Update your balance
- ⚙️ Settings - Manage your wallet
- 🔐 Backup Seeds - View your 12-word recovery phrase
- 🔄 Recovery Wallet - Restore from mnemonic
- ⚡ Change Lightning Address - Customize your address
- 💝 Donate - Support the bot developer
- Only mnemonic seeds are stored
- Local SQLite database - No external servers
- Self-custodial - Users maintain full control of their funds
- Telethon - Telegram MTProto API client
- Breez SDK Spark - Lightning Network payments
- KeyValue SQLite - Simple key-value database
- Python Mnemonic - BIP39 mnemonic generation
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit
This bot is provided as-is for educational and experimental purposes. Use at your own risk. Always test with small amounts first.
- Not financial advice
- No warranty provided
- Users are responsible for securing their recovery phrases
- Loss of recovery phrase means loss of funds
- Donate: [email protected]
Made with ⚡ and Bitcoin