Stats
LiveTop sponsor banners
Line = times each banner loaded. Bars = clicks. Aggregated per day (UTC).
RTC interstitial
Line = times the custom RTC interstitial was presented. Bars = clicks. Aggregated per day (UTC).
Broadcast a message
Compose one message per language. Users receive the text matching their in-app language (fallback: Telegram client language → English).
Audience
All filters below combine with AND. Start broad with a preset, then untick individual rows in the table to fine-tune.
| ID | Name / @username | Lang | Coins | Last seen | |
|---|---|---|---|---|---|
| Adjust the filters above to load users. | |||||
Scheduled broadcasts
| # | When (local) | Recipients | Status | |
|---|---|---|---|---|
| Loading… | ||||
Missions
Configure active windows, visibility, rewards, and automatic bot messages. Mission rewards bypass the daily coin cap.
Consolidated bot messages
One DM per trigger per day, covering every qualifying mission. Use the {missions} placeholder — it expands to a bulleted list (title + reward) of the missions that qualify. Rewards use a gold coin marker automatically.
App settings
Live-tunable. Changes take effect on the next user request.
Access & maintenance
Only this Telegram id can use the Mini App while maintenance mode is on. Ad watches for this user are auto-completed (no real ad is shown).
Comma-separated Telegram ids or usernames. Matching users always skip rewarded and interstitial ads, regardless of premium or super-admin status.
Comma-separated Telegram ids allowed to use the STAGING app + bot. The super-admin always has access. Ignored on production (only the staging instance enforces this gate).
When on, non-super-admin users see an "app is updating" screen. The super admin retains full access.
When on, users see a branded splash screen (shown for at least 2s) while the app loads. Default: on.
When on, the super admin sees the eruda debug console inside the Mini App. Everyone else is unaffected.
When off, the super admin never sees a real ad in normal mode — every ad watch is auto-completed. Independent from maintenance mode. Default: on.
When on, the interstitial fires for the super admin on every Nth tab change (same as regular users). Default: off.
When on, the super admin can buy the Iran bank gift-card items without meeting the minimum invited-friends requirement. Default: off.
When on, AdSense banner slots render between game cards on the Earn tab and at the top of every other tab. Default: off.
When on, the Card Memory match game shows below the slots (solo + live 2-player). Default: off.
When on, the mobile promo GIF renders after the ball game (Earn tab) and at the top of the Store tab. Default: off.
When on, the daroodrug.com promo banner renders right after the first custom banner (Earn tab and Store tab). The artwork is in Farsi but the banner shows for all app languages. Independent of the custom promo banner above. Default: off.
When on, the RTC sponsor banner joins the top slider (Earn + Store). Links to rtciran.com. Independent of the banners above. Default: off.
Which of the three RTC small banner images to display in the top slider. Preview them under static/img/rtc/. Default: RTC banner 1.
When on, a SECOND RTC sponsor slide joins the top slider. Slider order is RTC, Zeeg, RTC, Daroodrug, in-app promo. Links to rtciran.com. Independent of the first RTC banner. Default: off.
Which RTC image the SECOND RTC slide shows. Pick a different one than the first for variety. Default: RTC banner 2.
When on, users can swipe the top slider left/right to change the banner manually. Auto-rotation on the timer always runs regardless. When off, the slider behaves as before (auto-rotate only). Default: off.
When BOTH custom banners above are enabled they share ONE ad container and slide between each other every N seconds. Default: 8.
When on, the in-app promo ("Check the Prizes tab, other games…") rides in the top banner slider as the FIRST slide, instead of sitting after the first game card. Default: on.
Switches the whole app between the classic V1 UI and the V2 theme. V2 turns the games tab into a full-screen, edge-to-edge swipe carousel (every card — ball, banners, task ad, Word / Wheel / Slots — is a swipeable slide). Default: V1.
Stores the app's main color setup as a switchable preset. Classic preserves the current palette (#3447AA royal, #FBEAEB powder pink, #0A84FF electric blue). Neo uses a cleaner, higher-contrast gaming palette (#7C3AED violet, #E2E8F0 soft slate text, #F43F5E rose accent). Aqua Noir centers #34E0A1 turquoise over #000000 black. Sunstone pairs #FCDB32 bright sun with #141D38 Big Stone. Sulu Fir pairs #9FE870 Sulu with #163300 Deep Fir.
Swaps the visual of the tap-to-earn game between the original ball and Kimo — a small friendly alien from Coinera whose crest lights up when the tap-streak hits fire mode. All ball logic (fire, cooldown, bounces) is unchanged; only the artwork changes. Default: ball.
Ad service
Pick the active rewarded-ad provider and fill in its credentials. All fields live in the database — nothing here comes from the .env file. The active provider powers the cooldown-bypass rewarded ad; Yektanet additionally powers the Wallet-tab native banner.
Switch which network serves rewarded ads across the app. Default: Yektanet.
If set, the ad network's server-to-server postback must carry ?key=<secret> or it's rejected. Leave empty to accept unauthenticated postbacks. Applies to whichever provider is active.
Yektanet (Adivery)
Passed to Adivery.configure(APP_ID). From the Yektanet/Adivery publisher panel.
Used by Adivery.requestRewardedAd(id) for the cooldown-bypass rewarded ad.
Used by Adivery.requestNativeAd(id) for the banner at the top of the Wallet tab.
Used by Adivery.requestInterstitialAd(id). Shown on every 2nd tab change, 30 s hard floor, skipped for premium users. Empty = disabled.
When on, the Yektanet native-ad banner renders pinned at the top of the Wallet tab (only when Yektanet is the active provider and a native placement id is set). Default: on.
Monetag
The SDK exposes a global show_<zone_id>() once loaded. Used for the rewarded ad.
Adsgram
Passed to Adsgram.init({blockId}) for the rewarded ad.
Adsgram task block id for the card placed between Prize Wheel and Lucky Slots. Empty = hidden. Tasks give 5 coins and ignore the daily cap.
Adsgram interstitial shown on every 2nd tab change. Premium users skip it. Empty = disabled.
Global on/off for the Adsgram interstitial. When off, no interstitials fire even if a block id is set. Default: on.
Minimum delay between two interstitial ads (adsgram & adivery). Default 70. New users also get a 3-minute grace period after first opening the app, and the timer resets after any rewarded ad.
Where the interstitial comes from. "Custom RTC sponsor" shows our own full-screen RTC portrait for 15s with a skip button after 5s (same timing/frequency gate as Adsgram). Default: Adsgram.
Use the red-background RTC portrait for the custom interstitial. If both portraits are enabled, the interstitial alternates between them on each show. Default: on.
Use the dark-background RTC portrait for the custom interstitial. If both are enabled, shows alternate red/dark. Default: off.
Rewards
Default 0.10. e.g. 0.30 = 30% chance of a coin on each tap.
Chance the 3-reel slot machine lands a jackpot. Independent from the coin-per-tap probability. Default 0.30.
Chance the two-card lucky bonus dialog appears after a round of card memory, word, wheel or slots. Default 0.30.
Switches Lucky Slots between the draggable side lever and a green elevator-style push button. Default: lever.
When enabled, real game cards are shuffled once on every app load. When off, the fixed order stays as currently designed.
W is the +5 🪙 chance. Other prizes scale from it: +2 🪙 = 2W, +1 🪙 = 3W, +20 👆 = 4W, +10 👆 = 5W, +5 👆 = 6W. Empty wedges share the remainder. Default 0.0005 (0.05%).
Provider-specific: Monetag zone id for the in-app
banner, or Adsgram task block id (e.g.
task-1234). Leave empty to hide the banner / task-ad
card on the Home page.
Referrals
Configure the app name and link substituted into the sample share text on the Refer tab. The template itself is fixed and translated per user language.
Substituted for {app_name} in the share message.
Substituted for {app_link} in the share message.
VPN (3x-ui panel)
Powers the “1 day VPN config” store item. Defaults come from the reference request — override any field here without redeploying.
Up to (but not including) /panel/.... Include the random path segment the panel uses.
Sent as Authorization: Bearer <token> on every panel request.
The id of the inbound new clients get attached to.
Host that clients will connect to (rendered into the ss:// URL).
Port that clients will connect to.
Encryption method of the inbound.
Inbound-level password (sits before the client password in the ss:// URL).
IANA name of the timezone in which the config's 23:59:59 today expiry is measured. Set this to match how your panel / VPN client displays times.
Prefix for the config name users see (the ss://…#-<prefix>-<timestamp> fragment) and the panel client email/group. Default: configtabliqi.
Manual-delivery alerts
When on, the super admin gets a bot DM every time a gift-card / virtual-card / shared-account item is purchased and needs manual delivery. Default: on.
Store catalog
Undelivered items
Manual-delivery purchases waiting on admin. Click a row to fill the delivery details.
| ID | Buyer | Item | Cost | Purchased |
|---|
Delivered items
History of manual deliveries. Click a row to view the details or resend.
| ID | Buyer | Item | Kind | Delivered |
|---|
Auto-delivery pool
Manage instant-delivery pools. Discount items use one code per line. Bank gift cards use one card per line in the format card number|expiry|cvv2|internet payment key. Effective stock is min(item stock, pool size).
Available entries
| ID | Code | Status | Added |
|---|
Users
Purchases
| When | Item | User | Spent | Delivered |
|---|
Deleted users
Read-only audit log of self- and admin-initiated deletions.
| ID | Name / handle | Source | Coins | Taps | Txns | Items | Referrals | Deleted | Action |
|---|
Sample messages
Send any bot DM to a test Telegram ID to inspect its appearance. Samples are built from the same code as real messages.
Test recipient
The Telegram ID that receives sample messages. Saved server-side so it persists across devices. The user must have started the bot at least once.
Compose sample
Preview (as sent)
—
Admins
Create login accounts for teammates (e.g. marketers) and choose which pages each one can access. Only the root admin can see this page.
Add an admin
Existing admins
| Username | Pages | Status | Actions |
|---|
No admins yet.