Bicrypto 5.5.1
23 January 2025
ECOSYSTEM IMPROVEMENTSXMR INTEGRATIONDEPOSIT MONITORINGFRONTEND REFACTORINGWALLET DISPLAYTRADING IMPROVEMENTSP2P FIXES
Version 5.5.1
Release Date: January 23, 2025 Tags: ECOSYSTEM IMPROVEMENTS, XMR INTEGRATION, DEPOSIT MONITORING, FRONTEND REFACTORING, WALLET DISPLAY, TRADING IMPROVEMENTS, P2P FIXES
Added
XMR Service Features
- Confirmation Requirements: Set XMR to require 6 confirmations before crediting deposits
- Blockchain Explorer: Updated to use Blockchair instead of xmrchain.net for better UI
- Processing Expiry: Set transaction processing cache expiry to 30 minutes
- Pending Transaction States: Added support for broadcasting pending confirmation states to frontend
Environment Configuration
- XMR RPC URLs: Added support for custom daemon and wallet RPC URLs via environment variables
- Port Flexibility: System now supports any custom port configuration for XMR services
- Fallback Values: Default ports (18081 for daemon, 18083 for wallet) if not configured
Trading Features
- Balance Precision Display: Added market-based precision for balance display in trading panel
- Smart Formatting: Removes trailing zeros while keeping minimum 2 decimal places for readability
- Responsive Balance Layout: Balance display now stacks on small screens for better mobile experience
- Visual Improvements: Added font-medium styling and improved separator display
XMR Withdrawal Features
- Batch Transfer Support: XMR withdrawals now send funds to both user and admin in single transaction
- Admin Master Wallet Detection: Automatically finds admin master wallet for fee collection
- Fee Splitting Logic: Network fees paid automatically, admin profit sent separately
- Enhanced Logging: Added detailed logging for withdrawal process debugging
Changed
Documentation
- Monero Integration Guide: Added custom port configuration section
- Testing Examples: Included examples for testing with non-standard ports
- Troubleshooting: Added port mismatch troubleshooting guide with solutions
- .env.example: Added new XMR URL configuration examples
Frontend Components
- Import Organization: Centralized component imports in one place
- Type Definitions: Added type definitions for all extracted components
- Code Organization: Better separation of concerns between business logic and UI components
Fixed
XMR Ecosystem Integration
- API 500 Error: Fixed "No enabled tokens found for this currency" error for XMR ecosystem wallet endpoint
- Special Chain Handling: Added exemption for XMR, TON, SOL, TRON, BTC, LTC, DOGE, DASH from network environment variable requirements
- Token Filtering: Active token lookups now handle special chains that have no network setting
- Ecosystem Token Retrieval: Ecosystem token lookups no longer fail when a special chain has no network configured
XMR Deposit Monitoring
- Dynamic Confirmation Updates: Fixed XMR deposits not updating confirmation count dynamically in frontend
- Real-time Broadcasting: Added continuous WebSocket updates as confirmation count increases (0→1→2→...→6)
- Pending Transaction Detection: Now detects and broadcasts transactions immediately when they enter mempool (0 confirmations)
- Update Interval: Reduced monitoring interval from 60 to 30 seconds for more frequent confirmation updates
- Confirmation Tracking: Implemented proper tracking to only broadcast when confirmation count actually changes
- Max Retries: Increased max retries from 60 to 120 to maintain 60-minute monitoring window with faster intervals
XMR RPC Configuration
- Custom Port Support: Added environment variables for custom XMR RPC URLs to handle non-standard ports
- Environment Variables: Added
XMR_DAEMON_RPC_URLandXMR_WALLET_RPC_URLfor full URL configuration - Startup Logging: The configured RPC URLs are logged on service startup, so a wrong port is visible immediately
- Documentation Update: Updated Monero documentation with new configuration options and troubleshooting guide
Wallet Balance Display
- Decimal Precision: Fixed wallet balances showing 0 decimals instead of 8 decimals
- Wallet List Page: Added custom render function to show balance and inOrder amounts with 8 decimal places
- Single Wallet Page: Ensured all balance displays show 8 decimal precision
- ECO Wallet Balances: Fixed network-specific balance display to show 8 decimals
- Cryptocurrency Support: Essential for accurate display of small cryptocurrency amounts (especially XMR)
Trade Page Issues
- Console Log Cleanup: Removed unnecessary debug output from trading components
- Live Data Logs: Removed connection and message logs from the ticker feed
- Market Service Logs: Removed futures extension warning logs
- AI Investment Logs: Removed debug output from AI investment
- Production Ready: Cleaned up all debug logs that shouldn't be in production
Wallet Fetching Bug
- Ecosystem Wallet Detection: Fixed ecosystem markets incorrectly fetching SPOT wallets instead of ECO wallets
- Symbol Format Normalization: Fixed symbol format mismatch (BTC-USDT vs BTC/USDT) preventing proper market detection
- Market Type Detection: The trade page now tracks whether a market is an ecosystem one, so the correct wallet type is fetched
- URL Symbol Handling: Properly normalized symbols from URL format (hyphen) to market format (slash)
URL Locale Preservation
- Locale Lost on Navigation: Fixed locale being removed from URL when clicking on markets
- Locale-Aware Navigation: Market links now keep the active language
- Market Selection: Updated markets panel to maintain locale in URLs
- Trading Layout: Fixed URL updates to preserve locale when switching markets
Wallet Balance Caching
- Cache Prevention: Wallet balances are no longer cached in the browser, so they can never be stale
- Market Switching: Fixed wrong balance showing when switching between markets (e.g., BTC-WALLET showing BTC-USDT balance)
- Immediate Updates: Wallet data now clears immediately when switching markets
- Periodic Refresh: Added 30-second interval refresh for wallet balances on trade page
XMR Withdrawal Issues
- Batch Transfer Implementation: Fixed XMR withdrawals to use batch transfer for sending to user and admin
- Fee Calculation: Fixed double fee deduction and arithmetic errors in withdrawal process
- Admin Profit: Properly split withdrawal fee between admin profit and network fee
- Profit Recording: Fixed duplicate admin profit recording for XMR withdrawals
- Balance Verification: Added proper balance checks including all fees before withdrawal
P2P Offer Creation
- Amount Input Field: Fixed issue where users couldn't erase leading zero in amount field
- Input Behavior: Amount field now allows clearing and typing values like "100" without showing "0100"
- Empty Field Support: Input now properly handles empty string to allow users to clear the field completely