indrajitghosh20006/Igstore_01botPublic Β· Bot Template
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
commands/_manage_product.js
javascript Β· 103 lines
1/**#command2name: /manage_product3answer: 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/**#command52name: /manage_product53answer:54keyboard:55parse_mode: markdown56aliases:57allow_only_group: false58need_reply: true59case_insensitive: false60is_web: 061#command**/62try {63 var ownerId=String(Bot.getProperty("owner_id")||"7839151435"), uid=String(chat.chatid), co=Bot.getProperty("co_admin_"+uid);64 if(uid!==ownerId && !co) return;65 var raw = String(params || "").trim();66 var editParts = raw.split("|");67 if (editParts.length >= 3 && /^\d+$/.test(editParts[0].trim())) {68 var saveIdx = Number(editParts[0].trim());69 var saveProducts = Bot.getProperty("stored_products") || [];70 if (!saveProducts[saveIdx]) { Bot.sendMessage("β Product not found."); return; }71 var newName = editParts[1].trim();72 var newEmoji = editParts.slice(2).join("|").trim();73 if (!newName || !newEmoji) { Bot.sendMessage("β Name aur Premium Emoji ID dono required hain."); return; }74 saveProducts[saveIdx].name = newName;75 saveProducts[saveIdx].emoji = newEmoji;76 Bot.setProperty("stored_products", saveProducts, "json");77 Bot.sendMessage("β
<b>Product updated!</b>\n\nπ¦ " + newName + "\nπ Emoji ID: <code>" + newEmoji + "</code>", {parse_mode:"HTML"});78 return;79 }80 var idx=Number(raw||"-1"), products=Bot.getProperty("stored_products")||[];81 if(!products[idx]){Bot.sendMessage("β Product not found.",{parse_mode:"HTML"});return;}82 var p=products[idx], plans=Array.isArray(p.plans)?p.plans:[];83 var text="π¦ <b>"+String(p.name||"Product")+"</b>\n"+84 "π <b>Premium Emoji ID:</b> <code>"+String(p.emoji||"-")+"</code>\n\n";85 for(var i=0;i<plans.length;i++){86 var pl=plans[i]||{};87 text+=(i+1)+". <b>"+String(pl.durationDisplay||pl.name_on_website||pl.days||"Plan")+"</b> β’ PID <code>"+String(pl.pid||pl.product_id||"-")+"</code>\n"+88 "Normal: βΉ"+Number(pl.normal_price||0).toFixed(2)+" | Reseller: βΉ"+Number(pl.reseller_price||0).toFixed(2)+"\n\n";89 }90 if(!plans.length) text+="No plans yet.\n\n";91 var kb=[];92 for(var j=0;j<plans.length;j++){93 var label=String((plans[j]||{}).durationDisplay||(plans[j]||{}).name_on_website||(plans[j]||{}).days||("Plan "+(j+1)));94 kb.push([{text:"βοΈ "+label,callback_data:"/manage_edit_duration "+idx+" "+j,style:"primary"},{text:"π° Prices",callback_data:"/manage_edit_prices "+idx+" "+j,style:"success"}]);95 }96 kb.push([97 {text:"βοΈ Name + Emoji",callback_data:"/manage_product_edit "+idx,style:"primary"},98 {text:"β Add Plan",callback_data:"/manage_add_plan "+idx,style:"success"}99 ]);100 kb.push([{text:"β¬
οΈ All Products",callback_data:"/manage_products",style:"primary"}]);101 kb.splice(kb.length-1, 0, [{text:"π Change Name + Premium Emoji",callback_data:"/manage_product_edit "+idx,style:"success"}]);102 Bot.sendMessage(text,{parse_mode:"HTML",reply_markup:JSON.stringify({inline_keyboard:kb})});103} catch(e){Bot.sendMessage("β οΈ Manage Product Error: "+e.message,{parse_mode:"HTML"});}