indrajitghosh20006/Igstore_01botPublic Β· Bot Template

ProfileTelegram

AIThe bot provides an admin interface for a digital store, allowing the owner or co‑admins to add balances, products, plans, and categories. It supports payment workflows via UPI and Binance Pay, automatically generating QR codes and handling manual approval of deposits. The code patches inline keyboards to use premium emoji icons and includes helper functions for user and bot properties. Overall, it serves as a commerce management tool for a Telegram-based storefront.

Commercestoreadminbalanceproductplancategory
170 commands0 envUpdated 7h agoCreated Oct 30, 2026
Back to folder

commands/_referral.js

javascript Β· 115 lines

Raw
1/**#command2name: /referral3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12// PREMIUM BUTTON ICONS13(function(){14  try {15    if (!JSON.__premiumPatched) {16      var __origStringify = JSON.stringify;17      JSON.stringify = function(value, replacer, space) {18        try {19          if (value && value.inline_keyboard && Array.isArray(value.inline_keyboard)) {20            var premiumIds = [21              "6143444134125379822",22              "6091379307907652768",23              "6147534454819661264",24              "6147817325660741985",25              "6235683689292897318",26              "6102856637343600044"27            ];28            var rows = value.inline_keyboard.map(function(row, ri) {29              if (!Array.isArray(row)) return row;30              return row.map(function(btn, bi) {31                if (!btn || typeof btn !== "object") return btn;32                var copy = {};33                for (var k in btn) copy[k] = btn[k];34                if (!copy.icon_custom_emoji_id) copy.icon_custom_emoji_id = premiumIds[(ri + bi) % premiumIds.length];35                return copy;36              });37            });38            var cloned = {};39            for (var key in value) cloned[key] = value[key];40            cloned.inline_keyboard = rows;41            return __origStringify.call(JSON, cloned, replacer, space);42          }43        } catch (e) {}44        return __origStringify.call(JSON, value, replacer, space);45      };46      JSON.__premiumPatched = true;47    }48  } catch (e) {}49})();50 51 52 53try {54  var uid = String(user.telegramid);55  // EXACT referral link requested by the owner. Keep this link unchanged.56  // NOTE: This is a static Telegram start link, so it does not identify which57  // individual member shared it. The bot still supports ref_<telegram_id>58  // deep-links internally for per-user attribution when such a payload is used.59  var referralLink = "https://t.me/Igstore_01bot?start=ref_" + uid + "";60 61  var count = Number(Bot.getProperty("referral_count_" + uid) || 0);62  var earned = Number(Bot.getProperty("referral_earned_" + uid) || 0).toFixed(2);63 64  var shareText = "🎁 Join 𝙄𝙂 π™Žπ™π™Šπ™π™€ and start now!";65  var shareUrl = "https://t.me/share/url?url=" + encodeURIComponent(referralLink) +66                 "&text=" + encodeURIComponent(shareText);67 68  // Premium custom emoji in the message body (not just button icons).69  // These IDs are already used by the bot's existing premium UI.70  var text =71    "<tg-emoji emoji-id='6102856637343600044'>πŸŽ‰</tg-emoji> <b>Refer &amp; Earn</b>\n\n" +72    "<tg-emoji emoji-id='6091571559233755994'>πŸ‘₯</tg-emoji> Invite your friends using your personal referral link.\n" +73    "<tg-emoji emoji-id='6267068789146260253'>πŸ’°</tg-emoji> <b>Reward:</b> β‚Ή2 after every 10 successful new referrals\n" +74    "<tg-emoji emoji-id='6208445114075847396'>βœ…</tg-emoji> Every 10 successful referrals par β‚Ή2 automatically credit hoga.\n" +75    "<tg-emoji emoji-id='5893163582194978381'>❌</tg-emoji> Self-referrals and duplicate rewards are blocked.\n\n" +76    "<tg-emoji emoji-id='6080214566191505147'>πŸ”—</tg-emoji> <b>Your Referral Link:</b>\n<code>" + referralLink + "</code>\n\n" +77    "<tg-emoji emoji-id='6091571559233755994'>πŸ‘₯</tg-emoji> <b>Total Referrals:</b> " + count + "\n" +78    "<tg-emoji emoji-id='5409048419211682843'>πŸ’΅</tg-emoji> <b>Total Earned:</b> β‚Ή" + earned;79 80  var keyboard = {81    inline_keyboard: [82      [{ text: "Share Referral", url: shareUrl, style: "success", icon_custom_emoji_id: "6093677128295914531" }],83      [{ text: "Back", callback_data: "/menu", style: "primary", icon_custom_emoji_id: "5893163582194978381" }]84    ]85  };86 87  if (request && request.callback_query && request.callback_query.id) {88    try { Api.answerCallbackQuery({ callback_query_id: request.callback_query.id }); } catch (e) {}89    try {90      Api.editMessageText({91        chat_id: chat.chatid,92        message_id: request.callback_query.message.message_id,93        text: text,94        parse_mode: "HTML",95        reply_markup: JSON.stringify(keyboard)96      });97    } catch (editErr) {98      Api.sendMessage({99        chat_id: chat.chatid,100        text: text,101        parse_mode: "HTML",102        reply_markup: JSON.stringify(keyboard)103      });104    }105  } else {106    Api.sendMessage({107      chat_id: chat.chatid,108      text: text,109      parse_mode: "HTML",110      reply_markup: JSON.stringify(keyboard)111    });112  }113} catch (err) {114  Bot.sendMessage("⚠️ Referral Error: " + err.message);115}