-- migrate_v5.sql
-- ارتقا به نسخه‌ی ۲.۵: درگاه پرداخت آنلاین TonPays (شارژ خودکار کیف پول).
-- قبل از اجرا حتما از دیتابیس بکاپ بگیرید.

ALTER TABLE bot_users ADD COLUMN tonpays_disabled TINYINT(1) NOT NULL DEFAULT 0 AFTER is_blocked;

CREATE TABLE IF NOT EXISTS tonpays_invoices (
    id INT AUTO_INCREMENT PRIMARY KEY,
    bot_user_id INT NOT NULL,
    invoice_id VARCHAR(64) NULL,           -- شناسه‌ی فاکتور برگردانده‌شده توسط TonPays
    order_id VARCHAR(30) NULL,             -- شناسه‌ای که خود ما هنگام ساخت فاکتور فرستاده‌ایم
    request_amount BIGINT NOT NULL,        -- مبلغ درخواستی کاربر (تومان)
    final_amount BIGINT NULL,              -- مبلغ نهایی طبق TonPays (ممکن است کمی متفاوت باشد)
    status VARCHAR(20) NOT NULL DEFAULT 'creating', -- creating/pending/completed/rejected/expired/failed
    paid TINYINT(1) NOT NULL DEFAULT 0,
    credited TINYINT(1) NOT NULL DEFAULT 0, -- آیا کیف پول بابت این فاکتور شارژ شده (برای جلوگیری از شارژ دوبله)
    bonus_amount BIGINT NOT NULL DEFAULT 0,
    invoice_url VARCHAR(500) NULL,
    payment_url VARCHAR(500) NULL,
    card_number VARCHAR(50) NULL,          -- فقط اگر TonPays برای این کلید API فعال کرده باشد
    card_name VARCHAR(150) NULL,
    created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
    credited_at DATETIME NULL,
    UNIQUE KEY uniq_invoice_id (invoice_id),
    FOREIGN KEY (bot_user_id) REFERENCES bot_users(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

INSERT INTO settings (`key`, `value`) VALUES ('tonpays_enabled', '0')
    ON DUPLICATE KEY UPDATE `key`=`key`;
