Add Monero (XMR) payment support
- Add MoneroPayment model for tracking XMR payments
- Add MoneroClient library for RPC communication with monero-wallet-rpc
- Add crypto payment views and routes for XMR checkout flow
- Add XMR watcher script as console entry point for payment confirmation
- Update cart/checkout views to support multiple payment methods
- Add payment method toggles in configuration (Stripe/Monero)
- Update checkout template to show Monero option when enabled
- Add crypto_checkout template for XMR payment flow
Summary by CodeRabbit
-
New Features
- Optional Monero (XMR) payments: full XMR checkout UI with live status, quotes/expiry, per-shop processor, user refund-address management, invoice payment status, and CLI tools for watching and sweeping funds.
- Payment toggles to enable/disable Stripe and Monero.
-
Bug Fixes
- Enforced CSRF on cart actions; checkout flow now respects configured payment toggles and prevents invalid payment processing.
-
Documentation
- Expanded crypto docs, troubleshooting, README and Makefile targets for Monero workflows.
-
Tests
- New unit and integration tests for crypto payments, refund addresses, and config env-var expansion.
Edited by CodeRabbit