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/_set_payment_binance_btn.js
javascript Β· 107 lines
1/**#command2name: /set_payment_binance_btn3answer: 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 53// =========================================================54// π‘ ADMIN PANEL BUTTON β "Set Payment (Binance Pay)"55// 4-step wizard: QR (photo or URL) -> Binance Pay ID -> USDT Address -> USD rate.56// _start.js MODULE 4b handles each reply.57// =========================================================58 59try {60 var adminId = Bot.getProperty("owner_id") || "7839151435";61 var currentChatId = String(chat.chatid);62 var isCoAdmin = Bot.getProperty("co_admin_" + currentChatId);63 64 if (currentChatId !== adminId && !isCoAdmin) {65 Bot.sendMessage("β You are not authorized to use this.");66 return;67 }68 69 var currentQr = Bot.getProperty("binance_qr_file_id") || Bot.getProperty("binance_qr_url");70 var currentBinanceId = Bot.getProperty("binance_pay_id") || "Not set";71 var currentUsdtAddr = Bot.getProperty("binance_usdt_address") || "Not set";72 var currentRate = Bot.getProperty("usd_rate") || "91 (default)";73 74 User.setProperty("set_payment_binance_step", "waiting_qr", "string");75 76 var promptText =77 "<blockquote><tg-emoji emoji-id='6312263493051489212'>π‘</tg-emoji> <b>Set Payment (Binance Pay)</b></blockquote>\n\n" +78 "<i>Step 1/4 β</i> Ab apna Binance Pay <b>QR Code</b> bhejein.\n" +79 "<i>Ya toh QR ki <b>photo</b> bhejein, ya QR image ka <b>direct URL link</b> paste kar dein.</i>\n\n" +80 "<b>Current QR:</b> " + (currentQr ? "β
Already set" : "β Not set") + "\n" +81 "<b>Current Binance Pay ID:</b> <code>" + currentBinanceId + "</code>\n" +82 "<b>Current USDT Address:</b> <code>" + currentUsdtAddr + "</code>\n" +83 "<b>Current USD Rate:</b> <code>βΉ" + currentRate + " = $1</code>";84 85 var queryId = request ? (request.id || (request.callback_query && request.callback_query.id)) : null;86 87 if (request && request.message && request.message.message_id) {88 try {89 Api.editMessageText({90 chat_id: String(chat.chatid),91 message_id: Number(request.message.message_id),92 text: promptText,93 parse_mode: "HTML",94 reply_markup: JSON.stringify({ inline_keyboard: [[{ text: "Cancel", callback_data: "/admin", style: "danger" }]] })95 });96 } catch (e) {97 Api.sendMessage({ chat_id: chat.chatid, text: promptText, parse_mode: "HTML" });98 }99 } else {100 Bot.sendMessage(promptText, { parse_mode: "HTML" });101 }102 103 if (queryId) { try { Api.answerCallbackQuery({ callback_query_id: String(queryId) }); } catch (e) {} }104 105} catch (err) {106 Bot.sendMessage("β οΈ Error: " + err.message);107}