Notifications

Every important event on your platform is fanned out to four channels — admin email, admin Telegram, user email and user Telegram — so the right person hears the right thing at the right time

How the System Works

WPCrypto keeps a full audit trail of every meaningful action on your platform — registrations, logins, trades, deposits, withdrawals, KYC submissions, security changes, system events. For each one the plugin asks four questions in parallel:

📡 The four channels

  • 📧 User email — the user always hears about things that affect their account directly
  • 🤖 User Telegram — the same message goes to the user's Telegram if they have connected their account to your bot
  • 🔔 Admin Telegram — every event is mirrored to your admin Telegram so you have a live operations feed
  • 🚨 Admin email — only high-priority events trigger an admin email (so your inbox is never flooded)

Every event is also written to the activity log inside the user profile so users can look back at what happened on their account, even if a particular channel was disabled.

Priority Levels

Each event has a built-in priority. This is what decides whether your admin inbox is involved or whether the event only goes to the live Telegram feed.

Priority Admin Telegram Admin Email Example events
Low ✅ Yes ❌ No Successful sync, audit-trail records, notification preferences
Medium ✅ Yes ❌ No Login, password change, KYC document upload, internal transfer
High ✅ Yes ✅ Yes New registration, failed login, security feature disabled, wallet pool empty, scheduled sync failed
Critical ✅ Yes ✅ Yes 2FA tampered with, MFA brute-force ceiling hit, balance rollback failure

What Users Are Notified About

The events your users hear about, grouped by category. In every case the user gets an email; the same message also goes to their Telegram if they have connected the bot.

🔐 Account & security

  • Welcome message after successful registration
  • Successful login from a new device or location
  • Failed login attempts on their account
  • Password reset requested and password reset completed
  • Password changed from the profile
  • Email address changed (with confirmation flow)
  • Two-factor authentication enabled / disabled
  • Telegram verification enabled / disabled
  • Security image / security word enabled / disabled
  • Active session revoked, or all other sessions signed out
  • MFA verification step failed or maximum MFA attempts reached

🆔 KYC

  • ID document uploaded and awaiting review
  • Address document uploaded and awaiting review
  • KYC email verification completed
  • (Admin actions on KYC documents are also surfaced to the user when their level changes)

💰 Wallet & deposits

  • A wallet has been assigned for a network (deposit address available)
  • A deposit has been credited to their balance (handled by the deposit module)

🔄 Internal transfers

  • Sent: "Your transfer of X COIN to USER was successful"
  • Received: "You received X COIN from USER"

💼 Staking

  • Staking position created (with lock period and APY summary)
  • Staking period completed (with the reward credited)
  • Early unstake performed (with the penalty applied)

🎁 Referrals

  • Referral withdrawal requested (waiting for admin approval)
  • Referral withdrawal approved (funds released)
  • Referral withdrawal rejected (with the reason)

💸 Withdrawals

  • Withdrawal request submitted and awaiting admin approval
  • Withdrawal approved and submitted to the network
  • Withdrawal completed on-chain (transaction hash included)
  • Withdrawal rejected (with the reason)

🔔 Price Alerts

  • A price alert the user set has been triggered (see Price Alerts for setup and behaviour)

📈 Trades

Trade events use a dedicated notification path with a richer payload — the user sees order summary, executed amount, commission, and the before/after balance for both coins.

  • Order completely filled
  • Order partially filled (with the remaining amount)
  • Order cancelled, rejected or expired

🛒 Checkout (Buy Crypto / ICO / Shop)

  • Crypto purchase order completed and credited
  • ICO token purchase completed and credited
  • Shop order placed and confirmation receipt

What the Admin Is Notified About

Your admin Telegram receives a live mirror of every event on the platform — useful as an operations feed. Your admin email is reserved for things that need action.

🚨 These hit your admin email

  • New user registration (so you can welcome them or review)
  • Registration with a referral code (commission impact)
  • Failed login attempts on any account
  • Two-factor authentication disabled by a user
  • Any other security feature turned off
  • Maximum MFA attempts exceeded (possible brute force)
  • Wallet pool empty — you must generate more wallets ASAP
  • Scheduled wallet sync failed
  • Balance rollback failure (data integrity risk)
  • Staking events (create, complete, early unstake)

🔔 These go to admin Telegram only (no email)

  • Successful logins, password changes, profile edits
  • KYC document uploads (review queue)
  • Wallet assignment to a user
  • Internal transfers between users
  • Referral withdrawal requests and approvals / rejections
  • Withdrawal request submissions and status changes
  • Admin earnings claim records
  • Successful sync runs, cron job changes
  • Telegram subscribe / unsubscribe events

Daily Digest

Once a day a cron job sends a single email to your admin address with a roll-up of everything that happened in the last 24 hours:

  • New registrations
  • Total trade volume and platform earnings
  • Pending withdrawal requests
  • KYC review queue size
  • Wallet pool levels per chain
  • Failed scheduled syncs

This is your morning catch-up — even if you ignored the live Telegram feed all day, the digest gives you the day-end picture.

Setting It Up

Admin channels

  1. Open WP Crypto → General Settings → Admin Telegram Settings.
  2. Create a Telegram bot via @BotFather, copy the bot token into Admin Telegram Bot Token.
  3. Set the admin Telegram chat id (or leave blank — the plugin will fall back to the first admin user's connected Telegram).
  4. Confirm the admin email under General Settings → Platform URLs. If blank, the platform uses WordPress's default admin email.

User Telegram channel

  1. Configure a single Telegram bot for all your users under General Settings → Telegram Integration.
  2. Users connect their own Telegram from Profile → Security → Connect Telegram. They follow a one-time verification flow with the bot.
  3. From that moment, the same message that goes to their email also goes to their Telegram.

Per-user preferences

Users can fine-tune what they receive from Profile → Notifications. The most common knobs:

  • Turn email notifications off for trade fills (heavy traders)
  • Turn Telegram off for promotional / platform-wide announcements
  • Keep all security and account events on (recommended default)

Operator Notes

⚠️ Things to know

  • Admin email is only for "needs action". Low and medium priority events go to Telegram only. If you want to be emailed about a quieter event, the daily digest will pick it up.
  • Telegram bot down ≠ data loss. If Telegram or your SMTP is temporarily unreachable, the activity is still written to the audit log; only the live notification is lost.
  • Spam protection. The same user can't repeat the same event-type more than three times in five minutes — protects you and the user from runaway loops.
  • SMTP matters. If your WordPress site can't send mail reliably, install a transactional plugin (e.g. SMTP / WP Mail) before turning on a busy platform. Otherwise, your users will not see password resets, KYC updates or trade confirmations.
  • Failed notification ≠ failed action. Trades, deposits and withdrawals complete on their own. The notification is purely informational.

Troubleshooting

"I'm not getting any admin Telegram messages."

Either the admin bot token is not saved in General Settings, or the chat id is wrong / blocked. Try sending /start to your bot from the chat and confirm the bot is not muted.

"Users aren't getting Telegram notifications."

Check that the user has actually connected Telegram from their profile (Security → Connect Telegram). Until they complete the one-time verification flow, the plugin has no way to message them.

"Emails aren't arriving."

This is almost always a WordPress / SMTP setup issue, not the notification module itself. Confirm WP can send mail (try a test from any other WP plugin) and consider installing a transactional SMTP plugin.

"My admin inbox is too quiet — I want everything by email."

By design, low and medium priority events go to Telegram only. Use the daily digest for the quieter ones, or watch the admin Telegram feed in real time.

"My admin inbox is too noisy."

That shouldn't happen with default priorities — only high and critical events email. If you're getting a lot, check whether something on your platform keeps triggering high-severity events (failed logins, sync failures, MFA brute-force attempts) and fix the root cause.