indrajitghosh20006/Testseller_01botPublic · Bot Template

ProfileTelegram

AIThis bot provides an admin‑controlled system for managing user balances, products, and reseller roles. It includes commands to add balances (via manual input, Binance Pay, or UPI), approve and credit payments, and set up product listings with categories and pricing. Admins can also add resellers, view reseller info, and manage stock entries. The bot uses built‑in TeleBotHost APIs such as Bot, Api, HTTP, and Libs for database operations and message handling.

Commerceadminbalanceproductresellerpaymentsbinance
138 commands0 envUpdated 17h agoCreated Sep 27, 2026
Back to folder

commands/_menu.js

javascript · 88 lines

Raw
1/**#command2name: /menu3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12try {13  var userId = user.telegramid;14 15  // ✅ VERIFICATION CHECK16  var isVerified = (Bot.getProperty("verified_" + userId) === true) || (User.getProperty("verified_" + userId) === true);17 18  if (!isVerified) {19    Api.sendMessage({20      chat_id: chat.chatid,21      text: "<blockquote><b>🔰 Pehle account verify karein.</b>\nUse /start</blockquote>",22      parse_mode: "HTML"23    });24    return;25  }26 27  // 📊 REAL BALANCE FETCH — ✅ FIXED: ab same wallet store se read hoga jo purchase flows use karte hain28  // (Libs.ResourcesLib "balance" resource + admin bonus balance), taaki balance sab jagah same dikhe.29  var userBal = (function() {30    var resBal = 0;31    try { resBal = Number(Libs.ResourcesLib.userRes("balance").value()) || 0; } catch (e) {}32    return resBal.toFixed(2);33  })();34 35  var welcomeMessage =36    "<tg-emoji emoji-id=\"6266967801580231067\">💎</tg-emoji> <tg-emoji emoji-id=\"5866053971960929280\">🏪</tg-emoji> <b>— ‼️ 𝑩𝑨𝑫𝑺𝑯𝑨 メ 𝑺𝑯𝑶𝑷 🛍️ —</b> <tg-emoji emoji-id=\"5866053971960929280\">🏪</tg-emoji> <tg-emoji emoji-id=\"6266967801580231067\">💎</tg-emoji>\n\n" +37    "<tg-emoji emoji-id=\"6080228009439141516\">💧</tg-emoji> <b>Genuine, limited-stock books. Instant delivery.</b>\n\n" +38    "<tg-emoji emoji-id='5231200819986047254'>💰</tg-emoji> <b>Balance:</b> ₹" + userBal + "\n\n" +39    "<i>Tap any button below to begin:</i> <tg-emoji emoji-id='6057415823222379852'>👇</tg-emoji>";40 41  var multiColorKeyboard = [42    [{ text: "Shop Now", callback_data: "/buy_hack", style: "primary", icon_custom_emoji_id: "5866053971960929280" }],43    [44      { text: "Profile", callback_data: "/profile", style: "primary", icon_custom_emoji_id: "5260399854500191689" },45      { text: "Add Balance", callback_data: "/addfund", style: "success", icon_custom_emoji_id: "6147815702163102310" }46    ],47    [48      { text: "My Keys", callback_data: "/mykey", style: "primary", icon_custom_emoji_id: "6113743082358841933" },49      { text: "How to use", callback_data: "/how", style: "danger", icon_custom_emoji_id: "6080214566191505147" }50    ],51    [52      { text: "Download Files", callback_data: "/download_updates", style: "primary", icon_custom_emoji_id: "5208790878931415568" },53      { text: "Lucky Spin", callback_data: "/dailygift", style: "success", icon_custom_emoji_id: "6194922667242429131" }54    ],55    [56      { text: "Refer & Earn", callback_data: "/refer", style: "success", icon_custom_emoji_id: "5823654080584618403" },57      { text: "Support", callback_data: "/support", style: "danger", icon_custom_emoji_id: "5436113877181941026" }58    ],59    [{ text: "Payment Proofs", url: (Bot.getProperty("payment_proof_link") || "https://t.me/DevModz_Proof"), style: "success", icon_custom_emoji_id: "5330237710655306682" }]60  ];61 62  if (Bot.getProperty("reseller_system_enabled") && !Bot.getProperty("is_reseller_" + userId)) {63    multiColorKeyboard.push([64      { text: "Reseller Upgrade", callback_data: "/reseller_upgrade", style: "success", icon_custom_emoji_id: "6102856637343600044" }65    ]);66  }67 68  if (request && request.callback_query && request.callback_query.id) {69    try { Api.answerCallbackQuery({ callback_query_id: request.callback_query.id }); } catch(qErr){}70    Api.editMessageText({71      chat_id: chat.chatid,72      message_id: request.callback_query.message.message_id,73      text: welcomeMessage,74      parse_mode: "HTML",75      reply_markup: JSON.stringify({ inline_keyboard: multiColorKeyboard })76    });77  } else {78    Api.sendMessage({79      chat_id: chat.chatid,80      text: welcomeMessage,81      parse_mode: "HTML",82      reply_markup: JSON.stringify({ inline_keyboard: multiColorKeyboard })83    });84  }85 86} catch (globalException) {87  Bot.sendMessage("🛑 <b>Menu Debug Error:</b> <code>" + globalException.message + "</code>", { parse_mode: "HTML" });88}