Control site availability and user-facing messages
🔧
Site Maintenance Control
When enabled, all pages (index, earn, redeem, affiliates) will display a maintenance overlay. Users won't be able to interact with the site until you disable it.
Maintenance Mode
● Site is Live — users can access all pages normally
Overlay Message
Headline
Sub-message
Estimated Return (optional)
Settings
Show progress bar
Animated bar on overlay
Allow admin bypass
Admins can still access the site
Show Discord link
Link users to your Discord
Blur background
Blur site content behind overlay
Overlay Preview
How it will appear to users
🔧
We'll Be Right Back!
CoinChest is currently undergoing scheduled maintenance. Please check back soon!
CPX Research
Connect your CPX Research account to power real surveys & offers
CPX Research provides surveys and offers from real advertisers. Connect once here, and the same App ID + User ID will power your mobile app — users see the same offers and balance on both platforms.
CPX Research Integration
● Disabled — offerwall hidden from users
Connection
Your CPX credentials live on the server in .env and never reach the browser. The settings below only control how the offerwall is displayed.
App ID—
Secure Hash•••••• server-side
Coin Multiplier1
Managed in .env via CPX_APP_ID, CPX_SECURE_HASH and COIN_MULTIPLIER. Restart the server after changing them.
Sub-ID 1
Sub-ID 2
Survey payout — % the user receives
Share of each survey's value paid to the user. 100% = full amount; lower it to keep more margin. Applied on top of the coin multiplier, editable anytime — no restart needed.
Display Mode
Custom UI shows survey cards in your own design; IFrame shows CPX's hosted offerwall. Both works too.
A CPX survey paying 1500 displays as 1,500 🪙
Default Country (fallback) for users who haven't picked one yet
2-letter ISO code (GB, US, DE, …). Each user can override this on their Account page. Without this AND without a user choice, brand-new users typically see 0 matched surveys because CPX can't geo-target.
Show live API snapshot
Small bar above offers showing live offer counts & top payouts
Postback URL
Paste this into CPX Dashboard → Apps → Postback Settings. CPX calls it server-to-server when a user completes an offer.
Use your live domain (e.g. https://coinchest.gg) as the base of the postback URL. The CoinChest server handles the postback at /api/cpx/postback — see DEPLOY.md, Step 8.
Current User ID
The ext_user_id the browser is sending right now. Your mobile app must send the same value for the same human user.
Mobile App Setup
In your mobile app's WebView, load: https://offers.cpx-research.com/index.php?app_id=…
Pass the user's real account ID as ext_user_id. CPX treats web + mobile as the same user.
Manage Users
Click any user to view their details and manage their account
User
User ID
Region
Tier
Joined
Balance
Offers
Status
Adjust Balance
Editing: —
New Coin Balance
Adjust Affiliate Pot
Editing: —
New Pot Amount (coins)
Sets the unclaimed referral commission directly — handy for testing the withdrawal flow.
Commission Tier
Editing: —
Affiliate commission tier
Overrides the referrer's rate for testing the tiered commission flow. Choose Auto to clear the override and derive the rate from their live referral count.
Edit User
—
Username
Email
Date of birth
Region
💾
Save changes?
Apply these changes to the user?
🗑️
Delete user?
This permanently removes the account and all of its transactions and redemptions. This cannot be undone.
Roles & Permissions
Create staff roles, choose what each can do, and assign them to users. Roles show as a coloured tag in chat.
New role
Role name
Chat tag
Colour
Rank
Chat preview
[MOD]SomeUserhey there 👋
Permissions
Affiliate Program
Set the commission rate for each referral tier and how many coins a user needs in their pot before they can withdraw it.
Commission Tiers
A referrer earns the commission rate of the highest tier they qualify for, based on how many people use their code. Commission is funded by the platform and collects in the referrer's pot.
Withdrawals
The minimum number of coins a user must have in their affiliate pot before they can withdraw it to their balance.
Coins required in pot to withdraw
Commission still accrues below this — it just can't be withdrawn until the pot reaches this amount.
Redemptions
Review and approve user redemption requests. Denying a redemption automatically refunds the user's coins.
Support
Tickets submitted from the Support page. Reply to notify the user via their 🔔 bell — they read your response on the Support page. You can also resolve and reopen.
Redeemables
Create, edit, enable/disable and region-restrict the rewards users redeem coins for. Changes apply to the redeem page immediately.
🗂️ Categories
Sections shown on the redeem page. Assign each reward to a category in its editor. Rewards with no category appear under “Other”.
Add Category
Icon
Reward name
Categories — tick one or more sections this reward appears under (none = “Other”)
Logo image — optional; shown on the redeem page instead of the icon
🎁
PNG, JPEG or WebP. Resized automatically; transparent backgrounds are kept.
Region titles — how each region reads. Set prices & on/off per region inside each amount.
🇬🇧 GB
🇪🇺 EU
🇺🇸 USA
🌍 ROW
📄 Description — shown to users on the redeem page. Add instructions on how the reward works or how to use the code.
📝 Admin note — private; sourcing / supplier notes. Never shown to users.
Add Amount
Label
Base / default cost (coins)
Fallback price. Any region left blank below uses this.
Region names, pricing & availability — blank name/price = use the base label/cost · toggle off e.g. when out of stock
RegionNamePriceOn
Option image (optional)
🎁
Shown on this option's small card. Leave empty to use the brand's main image.
⚠ nodemailer isn’t installed on the server yet. Email is disabled until you run npm install nodemailer and restart.
Email sending
● Disabled — no emails are sent
Verification enforcement — how strictly a verified email is required
SMTP server
Host
Port
Username
Password — saved ✓
From name
From email
Templates
Placeholders: {{name}}{{link}}{{site}}{{email}}{{expiry}}. {{link}} renders as a button — always include it.
Verification — subject
Verification — body
Password reset — subject
Password reset — body
Redemption email placeholders: {{name}}{{site}}{{reward}}{{code}}{{coins}}. {{code}} renders as a highlighted code box — include it so the user gets their code.
Redemption approved — subject
Redemption approved — body
Chat Settings
Control how the on-site live chat behaves and moderate it.
General
Chat enabled
When off, the chat widget disappears for everyone on the site.
Staff-only mode
Read-only for users — only admins can post messages.
Allow links
Let users post clickable URLs in chat.
Profanity filter
Block messages containing a blocked word — the sender sees a short warning.
Custom blocked words
Always enforced — independent of the profanity filter toggle above. One word or phrase per line (or comma-separated). Matched anywhere in a message, case-insensitive.
Leave empty to allow everything (the base profanity filter still applies when its toggle is on).
Anti-spam limits
Slow mode — seconds between messages
Max message length (characters)
Minimum coins earned to chat — gate for brand-new accounts
Moderation
Clearing history hides every chat message from users. This can't be undone.
User Activity
Real-time feed of everything happening across your users — surveys completed, redemptions, signups. Search a username or click anyone to see just their activity.
🔧
We'll Be Right Back!
CoinChest is currently undergoing scheduled maintenance. We're working hard to bring you an even better experience. Please check back soon!