Dogecoin payment support
Implements full Dogecoin integration alongside existing Monero support:
• Core Infrastructure:
- Add Dogecoin RPC client with mock support for testing
- Multi-coin crypto watcher with DOGE-specific monitoring
- Koinu atomic unit handling (1 DOGE = 10^8 koinu)
- Configurable confirmation requirements and fee buffers
• Payment Processing:
- DOGE address-based payment tracking via RPC
- Auto-sweep functionality to cold wallets
- Rate locking and quote expiry management
- Support for refund addresses and overpayment handling
• User Interface:
- Shop settings form for Dogecoin processor configuration
- Cart checkout integration with DOGE payment option
- Template updates for Dogecoin payment display
• Database & Models:
- Extend CryptoPayment model for DOGE coin type
- Shop-level Dogecoin configuration storage
- Multi-coin payment routing and processing
• Testing:
- 11 comprehensive unit tests for DOGE functionality
- 3 integration tests for end-to-end payment workflows
- Mock RPC client for reliable test execution
- Full test coverage for edge cases and error handling
• Documentation:
- Complete DOGECOIN_SETUP.md with installation guide
- RPC configuration and wallet setup instructions
- Security considerations and best practices
Total: 1,269 lines added across 14 files Test Coverage: 14 new tests, all passing
Summary by CodeRabbit
-
New Features
- Full Dogecoin (DOGE) support: checkout start, live status endpoint, DOGE quote/status UI, pending crypto quotes, invoice "View Live Quote & Payment Status" CTA, per-coin handling and auto-sweep, refund-address checks, and shop-level DOGE processor exposure.
-
Style/UX
- Confirmation display tweaks with safe defaults; pending-quote block and DOGE payment option added to checkout.
-
Chores
- Makefile targets to install, configure, run, and monitor a Dogecoin node.
-
Documentation
- New comprehensive DOGE setup and integration guide.
-
Tests
- New and expanded DOGE unit and integration tests.
Edited by CodeRabbit