A modern, real-time Bitcoin payment processing system built with Next.js, Express, and WebSocket.
- 🔒 Secure Bitcoin payment processing
- ⚡ Real-time payment status updates
- 📱 Responsive QR code generation
- 💱 Automatic USD to BTC conversion
- 🔄 WebSocket connection status indicator
- 📊 Transaction monitoring and notifications
🔑 Generate Bitcoin addresses from your xpub 📱 Modern UI with QR codes and real-time updates 🔒 Watch-only wallet (no private keys on server) 💱 Automatic USD to BTC conversion ⚡ WebSocket-based payment monitoring 🌐 Self-hosted solution for Bitcoin donations
- Next.js 19 with App Router and turbopack
- TypeScript
- Tailwind CSS
- shadcn/ui components
- WebSocket client
- QR code generation
- Express.js
- TypeScript
- WebSocket server
- Bitcoin address generation
- Blockstream API integration
- Event-driven architecture
- Node.js 18+
- npm or yarn
- Bitcoin extended public key (xpub/zpub)
- Backend (.env)
- Frontend (.env)
- Start the backend server
- Start the frontend development server
The application will be available at http://localhost:3000
- User enters USD amount
- System generates unique Bitcoin address
- WebSocket connection established for real-time updates
- Backend monitors address for incoming transactions
- Frontend updates payment status in real-time
- Success notification on confirmed payment
- Address generation using HD wallets
- Watch-only wallet (no private keys on server)
- Real-time transaction monitoring
- Secure WebSocket communication
Generate new payment address
Check payment status
subscribe
- Subscribe to a specific addressunsubscribe
- Unsubscribe from a specific address
status
- Payment status updateerror
- Error message
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.