side) || !isset($data->status)) exit; $side = $data->side; $status = $data->status; $receiver = $data->data->receiver ?? null; $txid = $data->id ?? null; $amountIn = $data->amount ?? null; if ($side !== "receive" || $status !== "confirm") exit; $queryFindTransaction = " SELECT * FROM `transactions` WHERE `wallet` = ? LIMIT 1 "; $stmtFindTransaction = $pdo->prepare($queryFindTransaction); $stmtFindTransaction->execute([$receiver]); $trx = $stmtFindTransaction->fetch(PDO::FETCH_OBJ); if (!$trx) exit; if ($trx->status !== 'pending') { $statusFa = $trx->status === 'done' ? 'تأیید شده' : ($trx->status === 'rejected' ? 'رد شده' : $trx->status); $msg = "❌ *تراکنش نامعتبر* این واریزی مربوط به یک تراکنش قدیمی است. 🔎 *جزئیات تراکنش قبلی:* شماره سفارش: `{$trx->order_id}` مقدار ثبت‌شده: `{$trx->amount_usdt}` USDT وضعیت تراکنش: `{$statusFa}` 📥 *واریزی که اکنون انجام شده:* مقدار: `{$amountIn}` USDT چون این تراکنش قبلاً پردازش شده، امکان تأیید دوباره آن وجود ندارد. لطفاً برای بررسی موضوع به پشتیبانی پیام دهید."; sendMessage($trx->telegram_id, $msg); exit; } if ((float) $trx->amount_usdt !== (float) $amountIn) { $queryReject = " UPDATE `transactions` SET `status` = 'rejected' WHERE `id` = ? "; $stmtReject = $pdo->prepare($queryReject); $stmtReject->execute([$trx->id]); $msg = "❌ *واریز شما تأیید نشد* علت رد شدن: مبلغ واریزی با مبلغ ثبت شده در سفارش مطابقت ندارد. 🔎 *جزئیات تراکنش ثبت‌شده:* شماره سفارش: `{$trx->order_id}` مبلغ ثبت‌شده: `{$trx->amount_usdt}` USDT وضعیت جدید: `رد شده` 📥 *اطلاعات واریزی شما:* مبلغ ارسال‌شده: `{$amountIn}` USDT به دلیل این اختلاف، سیستم نتوانست تراکنش را تأیید کند. لطفاً برای بررسی و رفع مشکل، به پشتیبانی پیام بده."; sendMessage($trx->telegram_id, $msg); exit; } $amountUsdt = $trx->amount_usdt; $amountIrt = $trx->amount_irt; $queryDone = " UPDATE `transactions` SET `status` = 'done' WHERE `id` = ? "; $stmtDone = $pdo->prepare($queryDone); $stmtDone->execute([$trx->id]); $queryUpdateBalance = " UPDATE `accounts` SET `balance` = `balance` + ? WHERE `username` = ? "; $stmtUpdateBalance = $pdo->prepare($queryUpdateBalance); $stmtUpdateBalance->execute([$amountIrt, $trx->username]); $userMsg = "✅ *واریز با موفقیت تأیید شد* 💰 مقدار: `{$amountUsdt}` USDT 💵 واریزی: `" . number_format($amountIrt) . "` تومان 🔐 TXID: `{$txid}` موجودی کیف پول شما با موفقیت افزایش یافت."; sendMessage($trx->telegram_id, $userMsg); die;