╔══════════════════════════════════════════════════════════════════════╗
║  ⚠️  این نسخه یک تغییر «اجباری» در config.php دارد                    ║
╚══════════════════════════════════════════════════════════════════════╝

استعلام کارت→شبا از زیبال به «زحل» منتقل شده است. بدون توکن زحل هیچ کارتی
تبدیل نمی‌شود و همهٔ رکوردهای فقط-کارت با پیام
«توکن زحل (ZOHAL_TOKEN) در config تنظیم نشده» از فایل واریز خارج می‌شوند.


─────────────────────────────────────────────────────────────────────
۱) اجباری — این دو خط را به config.php اضافه کن
─────────────────────────────────────────────────────────────────────

جای خط قدیمی زیبال بگذار (آن خط دیگر استفاده نمی‌شود و می‌تواند بماند یا
حذف شود):

    const ZIBAL_MERCHANT = '';        ← دیگر استفاده نمی‌شود

این‌ها را اضافه کن:

    // توکن سرویس استعلام زحل (بخش توسعه‌دهندگان پنل zohal.io)
    const ZOHAL_TOKEN    = 'توکن-خودت-را-اینجا-بگذار';
    const ZOHAL_BASE_URL = 'https://service.zohal.io/api/v0';


⚠️ نکتهٔ مهم زحل: زحل فقط به درخواست‌هایی پاسخ می‌دهد که از IPهای اعلام‌شده
   در پنل بیایند. IP سرور را حتماً در پنل زحل ثبت کن، وگرنه همهٔ استعلام‌ها
   خطا می‌خورند (و در گزارش «کدهای حذف‌شده» می‌آیند).


─────────────────────────────────────────────────────────────────────
۲) اختیاری — تنظیمات ریز
─────────────────────────────────────────────────────────────────────

همهٔ این‌ها در کد مقدار پیش‌فرض دارند و اگر اضافه نکنی هم درست کار می‌کند:

    // کش کارت→شبا (رکوردهای کش قدیمی زیبال بار اول خودکار منتقل می‌شوند)
    const CARD_IBAN_CACHE_FILE        = CACHE_DIR . '/card_to_iban.json';
    const CARD_IBAN_CACHE_TTL_SECONDS = 7776000; // 90 روز

    // همزمانی و تلاش مجدد استعلام
    const ZOHAL_BATCH_CONCURRENCY = 8;
    const ZOHAL_RETRY_ATTEMPTS    = 3;
    const ZOHAL_RETRY_DELAY_MS    = 500;

پیش‌فرض کد اگر تعریفشان نکنی:
    CARD_IBAN_CACHE_FILE        = data/_cache/card_to_iban.json
    CARD_IBAN_CACHE_TTL_SECONDS = 7776000  (یا ZIBAL_CACHE_TTL_SECONDS اگر تعریف شده باشد)
    ZOHAL_BATCH_CONCURRENCY     = 8
    ZOHAL_RETRY_ATTEMPTS        = 3
    ZOHAL_RETRY_DELAY_MS        = 500

خط زیر باید در config.php بماند تا کش قدیمی پیدا و یک‌بار منتقل شود:

    const ZIBAL_CACHE_FILE = CACHE_DIR . '/zibal_card_to_iban.json';


─────────────────────────────────────────────────────────────────────
۳) موجودی کیف پول زحل
─────────────────────────────────────────────────────────────────────

دستور /wallet  (یا /balance) موجودی را به ریال و تومان نشان می‌دهد و یک
دکمهٔ «🔄 بروزرسانی» دارد. همان دکمه در پیام /start هم هست.
