راهنمای نصب ربات فروش محصول دیجیتال با کیف پول و دیتابیس
================================================================

این نسخه برای هاست بدون SSH ساخته شده و با PHP Webhook کار می‌کند.
اطلاعات داخل دیتابیس SQLite ذخیره می‌شود:

data/shop.sqlite

داخل دیتابیس ذخیره می‌شوند:
- کاربران
- کیف پول کاربران
- تراکنش‌های کیف پول
- درخواست‌های شارژ
- محصولات
- لایسنس‌های چندخطی و رمزنگاری‌شده
- سفارش‌ها
- وضعیت مراحل ربات

نکته:
این سورس برای فروش محصول دیجیتال قانونی مثل لایسنس، کد، فایل، آموزش یا گیفت‌کارت است.

--------------------------------------------------------
نیازمندی هاست
--------------------------------------------------------

- PHP 7.4 یا بالاتر
- SSL فعال
- افزونه‌های PHP:
  PDO
  pdo_sqlite
  openssl
  curl بهتر است فعال باشد، ولی اجباری نیست.

--------------------------------------------------------
نصب
--------------------------------------------------------

1) پوشه را داخل public_html آپلود کن.

مثال:

public_html/bot/

2) فایل config.sample.php را به config.php تغییر نام بده.

3) داخل config.php این موارد را پر کن:

BOT_TOKEN
ADMIN_IDS
SUPPORT_URL
PAYMENT_TEXT
INSTALL_KEY
ENCRYPTION_KEY

4) آدرس زیر را باز کن:

https://yourdomain.com/bot/set_webhook.php?key=INSTALL_KEY

اگر ok:true داد، ربات وصل شده.

5) داخل تلگرام به ربات بزن:

/start

--------------------------------------------------------
قابلیت‌های اصلی
--------------------------------------------------------

- پنل مدیریت داخل ربات
- ساخت محصول از داخل ربات
- افزودن لایسنس چندخطی از داخل ربات
- خرید با کیف پول و تحویل فوری
- پرداخت دستی و تایید ادمین
- شارژ کیف پول با رسید و تایید ادمین
- کنترل کاربر با آیدی عددی
- افزایش، کسر یا تنظیم دقیق موجودی کاربر
- مسدود / آزادسازی کاربر
- مشاهده سفارش‌های کاربر
- ذخیره همه اطلاعات داخل دیتابیس SQLite

--------------------------------------------------------
پنل مدیریت
--------------------------------------------------------

ادمین /start می‌زند و دکمه زیر را می‌بیند:

⚙️ پنل مدیریت

داخل پنل مدیریت:

➕ افزودن محصول
🔑 افزودن لایسنس چندخطی
👤 کنترل کاربر با آیدی عددی
📦 موجودی لایسنس‌ها
🧾 سفارش‌های در انتظار
💳 درخواست‌های شارژ
❌ لغو عملیات

--------------------------------------------------------
افزودن محصول
--------------------------------------------------------

از پنل مدیریت بزن:

➕ افزودن محصول

بعد این فرمت را بفرست:

code|عنوان محصول|قیمت

مثال:

license1|لایسنس یک ماهه|250000

--------------------------------------------------------
افزودن لایسنس چندخطی
--------------------------------------------------------

از پنل مدیریت بزن:

🔑 افزودن لایسنس چندخطی

بعد محصول را انتخاب کن.

هر لایسنس می‌تواند چند خط باشد.
برای جدا کردن چند لایسنس از هم، بینشان --- بگذار.

مثال:

Email: test@example.com
Password: 123456
Note: line 3
---
Code: ABC-111
Note: second license
---
License:
XXXX-YYYY-ZZZZ
Extra:
line 2

هر بخش بین --- یک لایسنس جدا حساب می‌شود.

--------------------------------------------------------
کیف پول
--------------------------------------------------------

کاربر از منوی اصلی می‌زند:

💰 کیف پول

بعد:

➕ شارژ کیف پول

مبلغ را وارد می‌کند، رسید می‌فرستد.
ادمین از پنل مدیریت درخواست شارژ را تایید می‌کند.
بعد موجودی کاربر اضافه می‌شود.

--------------------------------------------------------
خرید با کیف پول
--------------------------------------------------------

کاربر محصول را انتخاب می‌کند.
اگر موجودی کافی باشد، با دکمه:

💰 خرید با کیف پول

لایسنس فوری ارسال می‌شود و مبلغ از کیف پول کم می‌شود.

--------------------------------------------------------
کنترل کاربر با آیدی عددی
--------------------------------------------------------

ادمین از پنل مدیریت می‌زند:

👤 کنترل کاربر با آیدی عددی

بعد آیدی عددی کاربر را می‌فرستد.

امکانات:

➕ افزایش موجودی
➖ کسر موجودی
✏️ تنظیم موجودی دقیق
⛔ مسدود/آزادسازی
📦 سفارش‌های کاربر

--------------------------------------------------------
نکته مهم امنیتی
--------------------------------------------------------

فایل data/shop.sqlite دیتابیس ربات است.
پوشه data با .htaccess محافظت شده، ولی اگر هاست Nginx باشد باید دسترسی مستقیم به پوشه data را از پنل هاست ببندی.

ENCRYPTION_KEY را بعد از افزودن لایسنس تغییر نده.
اگر تغییرش بدهی، لایسنس‌های قبلی قابل خواندن نخواهند بود.

--------------------------------------------------------
اگر ربات جواب نداد
--------------------------------------------------------

1) SSL را بررسی کن.
2) config.php را درست پر کن.
3) مطمئن شو pdo_sqlite روی هاست فعال است.
4) دوباره set_webhook.php را باز کن.
5) آیدی عددی ادمین را درست وارد کن.
