Telegram Stars (звезды) — это внутренняя валюта Telegram для оплаты цифровых товаров и услуг.
- Пользователь выбирает товар/услугу
- Бот выставляет счет в звездах (XTR)
- Пользователь оплачивает через Telegram
- Бот автоматически отправляет товар/пароль
Курс: 1 звезда = 1.5 рубля (актуально на 2026 год)
Для изменения курса отредактируйте константу в файле:
handlers/payments/telegram_stars_payments.py
STARS_TO_RUB_RATE = 1.5 # Измените на актуальный курс| Товар | Цена (₽) | Примерно (⭐️) |
|---|---|---|
| TelegramMaster-PRO | 1600 | 1067 ⭐️ |
| TelegramMaster_Commentator | 1300 | 867 ⭐️ |
| Пароль TelegramMaster-PRO | 300 | 50 ⭐️ |
| Пароль TelegramMaster_Commentator | 300 | 50 ⭐️ |
| Настройка ПО | 800 | 533 ⭐️ |
| TelegramMaster_Search_GPT | 1000 | 667 ⭐️ |
handlers/payments/
├── telegram_stars_payments.py # Основной файл оплаты звездами
└── products_goods_services.py # Цены на товары
keyboards/
└── payments_keyboards.py # Клавиатуры с кнопками Stars
-
Добавьте цену в
products_goods_services.py:```python Новый_Товар = 500.00 ``` -
Добавьте обработчик в
telegram_stars_payments.py:```python @router.callback_query(F.data == "payment_stars_new_product") async def payment_stars_new_product_handler(callback_query: types.CallbackQuery): rub_price = Новый_Товар stars_amount = get_stars_amount(rub_price) await bot.send_invoice( chat_id=callback_query.message.chat.id, title="Новый Товар", description="Описание товара", payload=f"stars_new_{datetime.datetime.now().timestamp()}", provider_token="", currency="XTR", prices=[{"label": "Новый Товар", "amount": stars_amount}], start_parameter="stars_new", need_name=True, need_email=False, need_phone_number=False, need_shipping_address=False, ) ``` -
Добавьте кнопку в
payments_keyboards.py -
Добавьте обработку в
process_successful_payment():elif payload.startswith("stars_new_"): product_name = "Новый Товар" price = Новый_Товар password_file = "setting/password/Новый_Товар/password.txt"
Бот автоматически:
- ✅ Создает счет в звездах
- ✅ Обрабатывает успешную оплату
- ✅ Отправляет пароль пользователю
- ✅ Сохраняет информацию о платеже в БД
- ✅ Уведомляет администратора
Для тестирования используйте тестовые аккаунты Telegram. Telegram не поддерживает тестовый режим для звезд в тестовых ботах.
При изменении курса звезд:
- Обновите
STARS_TO_RUB_RATEвtelegram_stars_payments.py - Перезапустите бота
- Проверьте актуальность цен для пользователей