tarunpoonia905/OfcDevShopBotPublic · Bot Template
AIDEV SHOP appears to be a Telegram automation bot. Commands include /confirm_delete_stock, /addstock_id, /extkey_menu, /partner_api, /apidelete, /buy_hack_cat, /admin_manage_products, /check_buy. Observed in code: messaging, keyboards, payments, libs, web, http, games.
Utilityutility
228 commands0 envUpdated 12d agoCreated Oct 18, 2026
commands/_check_buy.js
javascript · 258 lines
1/**#command2name: /check_buy3answer: 4keyboard: 5parse_mode: markdown6aliases: 7allow_only_group: false8need_reply: false9is_web: 010#command**/11 12/*#SIZE_V1*/13try {14 (function () {15 var z = Bot.getProperty("ui_btn_size");16 var mx = z === "large" ? 1 : (z === "medium" ? 2 : 0);17 if (!mx || Api.__sz) return;18 19 var NAV = /^[◀▶⬅➡«»‹›⏪⏩]|\d+\s*\/\s*\d+|prev|next|page/i;20 21 var T = function (m) {22 try {23 var o = typeof m === "string" ? JSON.parse(m) : m;24 if (!o || !o.inline_keyboard) return m;25 26 var out = [], cnt = 0;27 28 o.inline_keyboard.forEach(function (row) {29 var nav = row.some(function (b) {30 return NAV.test(String(b.text || "").trim());31 });32 33 if (row.length <= mx || nav) {34 out.push(row);35 cnt += row.length;36 return;37 }38 39 for (var i = 0; i < row.length; i += mx) {40 var c = row.slice(i, i + mx);41 out.push(c);42 cnt += c.length;43 }44 });45 46 if (cnt > 100 || out.length > 100) return m;47 48 o.inline_keyboard = out;49 return typeof m === "string" ? JSON.stringify(o) : o;50 } catch (e) {51 return m;52 }53 };54 55 [56 "sendMessage", "editMessageText", "editMessageCaption",57 "editMessageReplyMarkup", "sendPhoto", "sendVideo",58 "sendAnimation", "sendDocument"59 ].forEach(function (n) {60 var f = Api[n];61 if (typeof f !== "function") return;62 63 Api[n] = function (p) {64 try {65 if (p && p.reply_markup) p.reply_markup = T(p.reply_markup);66 } catch (e) {}67 return f.apply(Api, arguments);68 };69 });70 71 Api.__sz = true;72 })();73} catch (__szE) {}74 75/*#ANIM_V1*/76try {77 (function () {78 var M = {79 party: "5046509860389126442",80 fire: "5104841245755180586",81 heart: "5159385139981059251",82 like: "5107584321108051014"83 };84 85 var a = Bot.getProperty("ui_anim");86 if (!a || !M[a] || Api.__an) return;87 88 var E = M[a];89 var OK = /PURCHASE SUCCESSFUL|PAYMENT SUCCESSFUL|Payment verified|CONGRATULATIONS/i;90 91 var priv = function (p) {92 return p && p.chat_id && String(p.chat_id).charAt(0) !== "-";93 };94 95 ["sendMessage", "sendPhoto", "sendVideo", "sendAnimation"].forEach(function (n) {96 var f = Api[n];97 if (typeof f !== "function") return;98 99 Api[n] = function (p) {100 try {101 if (priv(p) && !p.message_effect_id &&102 OK.test(String(p.text || p.caption || ""))) {103 p.message_effect_id = E;104 }105 } catch (e) {}106 107 return f.apply(Api, arguments);108 };109 });110 111 Api.__an = true;112 })();113} catch (__anE) {}114 115/*#PREMIUM_UI_V1*/116try {117 (function () {118 if (Bot.getProperty("ui_premium") !== true || Api.__pm) return;119 120 var R = function (t, c) {121 var s = (String(t || "") + " " + String(c || "")).toLowerCase();122 123 if (/back|cancel|close|delete|remove|clear|reject|stop|ban|exit/.test(s))124 return "danger";125 126 if (/pay|buy|confirm|verify|paid|add|deposit|shop|claim|yes|receive|wallet|download|update/.test(s))127 return "success";128 129 return "primary";130 };131 132 var T = function (m) {133 try {134 var o = typeof m === "string" ? JSON.parse(m) : m;135 if (!o || !o.inline_keyboard) return m;136 137 o.inline_keyboard.forEach(function (row) {138 row.forEach(function (b) {139 if (b.copy_text || b.url || b.callback_data || b.web_app) {140 b.style = R(b.text, b.callback_data || b.url);141 142 if (!b.icon_custom_emoji_id && b.text &&143 !/^[\u2600-\u27BF\uD83C-\uD83E]/.test(String(b.text).trim()) &&144 !/^[✦✨💎]/.test(b.text)) {145 b.text = "✦ " + b.text;146 }147 }148 });149 });150 151 return typeof m === "string" ? JSON.stringify(o) : o;152 } catch (e) {153 return m;154 }155 };156 157 [158 "sendMessage", "editMessageText", "editMessageCaption",159 "editMessageReplyMarkup", "sendPhoto", "sendVideo",160 "sendAnimation", "sendDocument"161 ].forEach(function (n) {162 var f = Api[n];163 if (typeof f !== "function") return;164 165 Api[n] = function (p) {166 try {167 if (p && p.reply_markup) p.reply_markup = T(p.reply_markup);168 } catch (e) {}169 170 return f.apply(Api, arguments);171 };172 });173 174 Api.__pm = true;175 })();176} catch (__pmE) {}177 178/*#PAYMENT_VERIFY_NO_MESSAGE_EDIT*/179try {180 var orderId = User.getProperty("buy_pending_order_id");181 182 var merchantId =183 Bot.getProperty("paytm_merchant_id") ||184 "SDfRhW21109811758334";185 186 var merchantKey =187 Bot.getProperty("paytm_merchant_key") ||188 "SDfRhW21109811758334";189 190 if (!orderId) {191 Api.answerCallbackQuery({192 callback_query_id: String(request.id),193 text: "⚠️ No active order found!",194 show_alert: true195 });196 return;197 }198 199 var famVerifyKey =200 Bot.getProperty("fampay_merchant_key") ||201 Bot.getProperty("fampay_api_key") ||202 "";203 204 var isFamOrder =205 Bot.getProperty("pay_gw_" + orderId) === "famgateway" ||206 String(orderId).indexOf("fg_") === 0;207 208 if (!isFamOrder && (!merchantId || !merchantKey)) {209 Bot.sendMessage("❌ Paytm Merchant ID/Key is not configured.");210 return;211 }212 213 /*214 * IMPORTANT:215 * Existing payment message/caption ko edit nahi karna.216 * Verification request background mein continue hogi.217 */218 219 var verifyUrl;220 221 if (isFamOrder && famVerifyKey) {222 verifyUrl =223 "https://famgateway.in/api/checkout-status.php?api_key=" +224 encodeURIComponent(famVerifyKey) +225 "&order_id=" +226 encodeURIComponent(orderId);227 } else {228 verifyUrl =229 "https://paytm.anujbots.xyz/verify.php?orderid=" +230 encodeURIComponent(orderId) +231 "&merchantid=" +232 encodeURIComponent(merchantId) +233 "&merchantkey=" +234 encodeURIComponent(merchantKey);235 }236 237 HTTP.get({238 url: verifyUrl,239 headers: isFamOrder240 ? {241 "Authorization": "Bearer " + famVerifyKey,242 "X-Api-Key": famVerifyKey243 }244 : undefined,245 success: "/onBuyCheck",246 error: "/onBuyCheck"247 });248 249} catch (err) {250 /*251 * Error par bhi existing payment message ko edit nahi karna.252 */253 Bot.sendMessage(254 "⚠️ <b>Error:</b> " +255 (err && err.message ? err.message : String(err)),256 { parse_mode: "HTML" }257 );258}