uniapp Investment and Wealth Management Subscription System Setup Guide: Daily Check-In + Internal Transfer + Three-Level Distribution + Leaderboard
uniapp Investment and Wealth Management Subscription System Setup Guide: Daily Check-In + Internal Transfer + Three-Level Distribution + Leaderboard
We deployed this uniapp investment subscription system for a client last month. The frontend is built with uniapp for cross-platform compatibility, while the backend uses fully open-source PHP. Both frontend and backend code can be modified directly. The client core requirements were: daily check-in rewards, fee-free internal transfers, automatic three-level distribution growth, and real-time leaderboards to stimulate competition. After all four modules were operational, user retention improved by nearly 40% compared to pure investment platforms.
The system UI received a complete redesign, offering a much cleaner interface than older investment management versions. The user flow is also shorter. After uniapp compilation, you get H5, Android APK, and iOS APP simultaneously, which is extremely convenient for teams looking to launch on multiple platforms quickly. Below is the full deployment process and troubleshooting record.

Core System Feature List
The investment subscription system includes a comprehensive set of functional modules. Here are the verified capabilities after actual deployment:
- Daily Check-In Module: Users open the APP or H5 daily to check in and receive points or trial funds. Continuous check-in streaks unlock higher reward multipliers. The backend can customize check-in reward rules and streak-break reset policies.
- Investment Subscription System: The backend can publish multiple investment products, each independently configurable with subscription cycle, expected yield, minimum investment amount, and total subscription quota. After user subscription, the system automatically generates electronic contract records.
- Internal Transfer Function: Users can transfer funds directly to each other within the platform, searching recipients by username or user ID. Transfer records are queryable in real time, and the backend can set single-transaction and daily cumulative transfer limits.
- Three-Level Distribution Commission: Direct referral, indirect referral, and third-level referral commission model. Commission percentages for each level are adjustable in the backend. The distribution relationship chain is displayed visually, with team headcount and performance at a glance.
- Real-Time Leaderboard: Daily, weekly, and monthly dimensions show user yield rankings, invitation count rankings, and team performance rankings. Top three positions receive extra reward badges to stimulate user activity.
- Automatic Yield Settlement: Based on Linux crontab scheduled tasks, matured products automatically settle principal and interest to user balance accounts without manual intervention.
- Deposit and Withdrawal Channels: Default USDT-TRC20 deposit support. Withdrawals support both USDT and fiat currency modes, with backend configuration for automatic disbursement or manual review.
- In-Platform Messaging: Check-in reminders, yield credits, transfer confirmations, and system announcements are all delivered via in-platform messages, supporting mark-as-read and batch deletion.

Pre-Deployment Environment Checklist
The uniapp backend is PHP-based and has specific runtime environment requirements:
- Server Configuration: Recommended 2-core 4GB RAM minimum. Upgrade to 4-core 8GB when simultaneous online users exceed 500.
- Operating System: CentOS 7.9+ or Ubuntu 20.04 LTS (both verified).
- Web Environment: Nginx 1.18+ / PHP 7.4 / MySQL 5.7 (PHP 8.1 requires syntax adjustments).
- Required PHP Extensions: fileinfo, bcmath, curl, gd, mbstring, openssl, redis, pdo_mysql, zip.
- Cache Service: Redis 6.0+ for session storage and user check-in status.
- Domain and SSL: Must bind a dedicated domain and configure HTTPS. Some uniapp API endpoints strictly require SSL.
- uniapp Compilation Environment: HBuilder X 3.0+ for packaging Android and iOS applications.
- Email Service: Registration verification codes require SMTP. SendGrid or Amazon SES are recommended.
Key Tip: When uniapp frontend requests backend APIs, you must configure the allowed domain list in manifest.json. Otherwise, both real-device debugging and production builds will report network request failures. Many beginner developers get stuck here for hours. The fix is simply adding your domain to the request allowed domain list in HBuilder X Source Code View.

Common Issues and Troubleshooting
2.1 Check-In Feature Not Working, Button Unresponsive
This issue usually has two causes: first, Redis is not properly configured, since check-in status depends on Redis caching; second, the timestamp from uniapp frontend is not synchronized with the backend server time, causing check-in validation to fail. The solution is to use NTP to synchronize server time and use the server_time returned by the backend rather than local time for validation in uniapp.
2.2 Recipient Not Receiving Funds After Internal Transfer
The transfer operation consists of two steps: deducting the sender balance and adding to the recipient balance. If the second step fails, the sender gets deducted but the recipient receives nothing. This happens because MySQL transactions are not properly wrapping both operations. Check whether the backend transfer interface uses beginTransaction with commit/rollback to ensure atomicity.
2.3 Three-Level Distribution Hierarchy Display Anomaly, Incorrect Subordinate Count
Distribution hierarchy data is stored in the user_relation table, which easily causes query timeouts with large data volumes. The solution is to add a composite index on parent_id and level fields. Additionally, use paginated loading in the backend distribution tree view instead of loading the entire tree at once. If levels exceed three, also verify that max_level in the backend configuration is set correctly.
2.4 Leaderboard Data Not Updating, Still Showing Yesterday Rankings
Leaderboard data is usually generated by scheduled tasks creating cache files or Redis keys. If the leaderboard does not update, first check whether the crontab includes a leaderboard refresh script, then verify that Redis keys have the correct TTL. I recommend refreshing leaderboards every hour to avoid real-time queries placing excessive load on the database.
2.5 Images Not Loading After uniapp Packaging
uniapp handles relative image paths fine in H5 mode, but after packaging into an APP, absolute network URLs are required. I recommend configuring a unified image CDN domain in the backend with frontend dynamic retrieval via API. Also, enable network permissions in manifest.json under App Module Configuration.

Extension Modules and Customization
The base version is already quite functional. During actual operations, the following extensions can be implemented based on business needs:
- Multi-Currency Wallet: Add BTC, ETH, and other mainstream cryptocurrencies on top of USDT, with automatic exchange rate conversion.
- Automatic Reinvestment: After product maturity, automatically transfer principal and yield into new investment products to improve capital utilization.
- Invitation Poster Generation: Users share exclusive invitation posters to social media, with QR codes and invitation codes embedded. Scanning automatically binds the referrer relationship.
- Customer Service Ticket System: Users can submit tickets for transfer or yield issues, with backend customer service processing by priority.
- Data Export Reports: The backend supports exporting user check-in records, distribution performance, and fund flows to Excel for finance reconciliation.
- APP Push Notifications: Integrate JPush or Firebase Cloud Messaging so yield credits and check-in reminders pop directly to the phone notification bar.

Frequently Asked Questions
Q1: Is this system source code completely open-source?
Yes, both the uniapp frontend code and PHP backend code are fully open-source with no encrypted files. The frontend can be directly imported and compiled with HBuilder X, and the backend business logic can be modified arbitrarily, making it very suitable for secondary development.
Q2: Can multiple language versions be deployed simultaneously?
Yes. The uniapp frontend supports multi-language switching by simply adding new language JSON files in the lang directory. Backend interface prompt text can also be dynamically switched via language parameters. Chinese and English bilingual packs are integrated by default.
Q3: Can three-level distribution commission percentages be freely adjusted?
Yes. The Distribution Configuration page in the backend allows separate percentage settings for level one, two, and three commissions. You can also set minimum amounts to trigger commission payouts. All adjustments take effect in real time without requiring service restart.
Q4: Can check-in rewards be configured with tiered rules?
Supported. The backend check-in configuration allows setting different reward multipliers for consecutive check-in streaks of 1 day, 3 days, 7 days, 15 days, and 30 days. You can also configure whether streak breaks reset to zero or preserve partial progress.
Q5: How many concurrent users can a single server support?
A 2-core 4GB configuration can comfortably handle 300 to 500 simultaneous online users. Beyond 800 users, upgrade to 4-core 8GB and enable Nginx caching plus Redis persistence. The bottleneck is usually database queries, which can be optimized by adding indexes to frequently queried tables.
Important Notice: This article provides technical reference for system deployment only. Investment and wealth management businesses involve financial regulatory compliance. Please ensure you comply with target market regulations and complete necessary licensing or filings before launching operations. Do not use this for any illegal purposes.

Keywords: #uniappInvestment #WealthManagementPlatform #ThreeLevelDistribution #FinancialCheckIn #uniappFinancialSourceCode
-
Alipay QR Code Scan
-
WeChat Scan Pay