Telegram Payments: как принимать оплату через бота

Flow Masters10 марта 2026 г.16 мин

Telegram Payments: как принимать оплату через бота

Telegram Payments — встроенный механизм приёма платежей прямо в мессенджере. Пользователь оплачивает товар или услугу, не покидая чат с ботом. Для бизнеса это означает сокращение воронки, повышение конверсии и отсутствие необходимости в отдельном сайте или лендинге.

Рассмотрим, как настроить приём платежей через Telegram-бота: от выбора платёжной системы до технической реализации.

Как работает Telegram Payments

Telegram выступает посредником между ботом и платёжными провайдерами. Схема выглядит так:

  1. Бот отправляет пользователю счёт (invoice) с описанием товара
  2. Пользователь нажимает «Оплатить» и выбирает способ оплаты
  3. Платёжный провайдер обрабатывает транзакцию
  4. Telegram отправляет боту уведомление об успешной оплате
  5. Бот выполняет действие: выдаёт доступ, отправляет файл, активирует подписку

Вся магия происходит внутри Telegram — пользователь не переходит на сторонние сайты.

Доступные платёжные провайдеры в России

ЮKassa

Крупнейший российский платёжный агрегатор с прямой интеграцией в Telegram.

Преимущества:

  • СБП, банковские карты, SberPay, T-Pay
  • Комиссия от 2,8% (зависит от оборота)
  • Быстрое подключение за 1-3 дня
  • Полный комплект документов для бухгалтерии

Ограничения:

  • Требуется ИП или ООО (самозанятые — через партнёров)
  • Модерация товаров и услуг

CloudPayments

Платёжный сервис с фокусом на рекуррентные платежи.

Преимущества:

  • Подписки и рекурренты
  • СБП, карты, Apple Pay, Google Pay
  • Комиссия от 2,5%
  • API для сложных сценариев

Ограничения:

  • Требуется юридическое лицо

Robokassa

Агрегатор с поддержкой большого количества методов оплаты.

Преимущества:

  • Более 50 способов оплаты
  • Работа с самозанятыми
  • Комиссия от 3%
  • Система быстрых платежей

Тестовый провайдер Telegram

Для разработки и тестирования Telegram предоставляет встроенный тестовый провайдер. Платежи проходят в песочнице, деньги не списываются.

Подключение платежей через BotFather

Шаг 1: Создание бота

Если бот ещё не создан:

  1. Найдите @BotFather в Telegram
  2. Отправьте команду /newbot
  3. Укажите имя и username бота
  4. Сохраните полученный токен

Шаг 2: Подключение платёжного провайдера

  1. Отправьте @BotFather команду /mybots

  2. Выберите нужного бота

  3. Нажмите Payments

  4. Выберите провайдера из списка:

    • Test — для разработки
    • YooKassa — для российских платежей
    • Smart Glocal — международные платежи
    • Bank 131 — банковский провайдер
  5. Следуйте инструкциям для подключения

Шаг 3: Получение токена провайдера

После регистрации в платёжной системе вы получите provider_token — он нужен для отправки счетов пользователям.

Техническая реализация

Отправка счёта (Python, aiogram)

from aiogram import Bot, types
from aiogram.types import LabeledPrice

bot = Bot(token="YOUR_BOT_TOKEN")

async def send_invoice_example(chat_id):
    prices = [LabeledPrice(label="Курс по автоматизации", amount=99000)]  # в копейках
    
    await bot.send_invoice(
        chat_id=chat_id,
        title="Курс по автоматизации бизнеса",
        description="Полный курс по внедрению ИИ и автоматизации процессов",
        provider_token="YOUR_PROVIDER_TOKEN",
        currency="RUB",
        prices=prices,
        payload="course_automation_2026",
        start_parameter="course_automation",
        need_email=True,
        need_name=True,
    )
```text

### Обработка успешной оплаты

```python
from aiogram import Dispatcher
from aiogram.types import SuccessfulPayment

dp = Dispatcher()

@dp.message_handler(content_types=SuccessfulPayment)
async def successful_payment(message):
    payment_info = message.successful_payment
    
    # Данные платежа
    order_id = payment_info.invoice_payload
    amount = payment_info.total_amount / 100  # конвертация из копеек
    currency = payment_info.currency
    
    # Выполняем действие после оплаты
    await give_access_to_course(message.from_user.id, order_id)
    
    await message.answer(
        f"Оплата прошла успешно!\n"
        f"Сумма: {amount} {currency}\n"
        f"Доступ к курсу открыт."
    )
```text

### Отправка счёта (Node.js, grammY)

```javascript
import { Bot } from "grammy";

const bot = new Bot("YOUR_BOT_TOKEN");

bot.command("buy", async (ctx) => {
  await ctx.replyWithInvoice({
    title: "Консультация по автоматизации",
    description: "Персональная консультация 60 минут",
    payload: "consultation_60min",
    provider_token: "YOUR_PROVIDER_TOKEN",
    currency: "RUB",
    prices: [{ label: "Консультация", amount: 500000 }], // в копейках
  });
});

bot.on("message:successful_payment", async (ctx) => {
  const payment = ctx.message.successful_payment;
  
  await ctx.reply(
    `Оплата получена! Сумма: ${payment.total_amount / 100} RUB\n` +
    `Ожидайте звонка в течение 30 минут.`
  );
  
  // Логика выдачи услуги
  await deliverService(ctx.from.id, payment.invoice_payload);
});

bot.start();
```text

## Сценарии использования

### Продажа цифровых товаров

- Электронные книги и гайды
- Видеоуроки и курсы
- Шаблоны и пресеты
- Лицензии на ПО

После оплаты бот отправляет файл или ссылку на скачивание.

### Подписки и рекуррентные платежи

Настройте ежемесячную подписку через CloudPayments или ЮKassa. Бот автоматически продлевает доступ при успешном списании.

### Услуги и консультации

Приём оплаты за консультации, разборы, персональные сессии. После оплаты бот предлагает выбрать время слота.

### Физические товары

Интеграция с CRM и системами доставки. После оплаты бот запрашивает адрес доставки и передаёт заказ в обработку.

### Донаты и пожертвования

Для блогеров и авторов контента — приём донатов через бота с минимальной комиссией.

## Особенности работы с СБП

Система быстрых платежей (СБП) — самый популярный способ оплаты в России. Комиссия 0,40,7%, мгновенное зачисление.

Для подключения СБП:
1. Зарегистрируйтесь в ЮKassa или CloudPayments
2. В настройках включите СБП как метод оплаты
3. При отправке счёта укажите `need_phone_number=True`
4. Пользователь выберет СБП и оплатит по QR-коду

## Безопасность и Compliance

### Проверка подписи

Telegram подписывает все уведомления о платежах. Всегда проверяйте подпись на сервере:

```python
import hmac
import hashlib

def verify_telegram_payment(data: dict, bot_token: str) -> bool:
    check_string = "\n".join(f"{k}={v}" for k, v in sorted(data.items()))
    secret_key = hashlib.sha256(bot_token.encode()).digest()
    signature = hmac.new(secret_key, check_string.encode(), hashlib.sha256).hexdigest()
    return signature == data.get("hash")
```text

### Защита от повторной обработки

Используйте уникальный payload для каждого заказа и сохраняйте статус в базе данных. При повторном уведомлении проверяйте, не был ли заказ уже обработан.

### Персональные данные

Соблюдайте ФЗ-152: не храните данные карт, получайте согласие на обработку персональных данных. Платёжные провайдеры берут хранение данных на себя.

## Типичные ошибки

### Ошибка 1: Неправильная валюта

Указывайте валюту в формате ISO 4217: RUB, USD, EUR. Сумма всегда в минимальных единицах (копейках для RUB).

### Ошибка 2: Истёкший токен провайдера

Токены провайдеров могут истекать или отзывать. Обрабатывайте ошибки и информируйте пользователя.

### Ошибка 3: Отсутствие обработки неуспешных платежей

Всегда обрабатывайте сценарий, когда платёж не прошёл. Предложите пользователю альтернативные способы оплаты.

### Ошибка 4: Слишком сложная форма

Минимизируйте обязательные поля. Каждый дополнительный запрос снижает конверсию.

## Сравнение провайдеров

| Провайдер | Комиссия | СБП | Карты | Срок подключения |
|-----------|----------|-----|-------|------------------|
| ЮKassa | от 2,8% | ✅ | ✅ | 1-3 дня |
| CloudPayments | от 2,5% | ✅ | ✅ | 1-3 дня |
| Robokassa | от 3% | ✅ | ✅ | 1-5 дней |
| Smart Glocal | от 2,9% | ❌ | ✅ | 1-2 дня |

## Чек-лист запуска

**Подготовка:**
- [ ] Зарегистрирован бот через @BotFather
- [ ] Выбран платёжный провайдер
- [ ] Пройдена верификация в провайдере
- [ ] Получен токен провайдера

**Разработка:**
- [ ] Реализована отправка счетов
- [ ] Обработаны успешные платежи
- [ ] Обработаны ошибки оплаты
- [ ] Добавлена проверка подписи

**Тестирование:**
- [ ] Протестированы платежи в тестовом режиме
- [ ] Проверены все сценарии ошибок
- [ ] Протестирован на разных устройствах

**Запуск:**
- [ ] Переключены токены на боевые
- [ ] Настроено логирование платежей
- [ ] Подготовлена поддержка пользователей

## Примеры успешных кейсов

### Кейс 1: Продажа курса через бот

Онлайн-школа запустила продажу курса через Telegram-бота. Пользователь проходит тест, получает рекомендацию курса, оплачивает в два клика. Конверсия выросла на 35% по сравнению с оплатой через сайт.

### Кейс 2: Подписка на закрытый канал

Автор блога создал бота для продажи доступа к закрытому каналу. После оплаты бот автоматически выдаёт инвайт-ссылку. Обработка 500+ подписок в день без участия автора.

### Кейс 3: Консалтинговые услуги

Консультант принимает оплату за сессии через бота. Клиент выбирает услугу, оплачивает, получает календарь для записи. Сокращение времени от заявки до оплаты с 2 дней до 10 минут.

## Заключение

Telegram Payments — это не просто способ приёма денег, а инструмент сокращения пути клиента от интереса до покупки. Меньше переходов, меньше фрикций, выше конверсия.

Для старта достаточно:
1. Создать бота
2. Подключить ЮKassa или CloudPayments
3. Настроить отправку счетов
4. Обработать успешные платежи

Начните с тестового провайдера, отработайте сценарии, затем переключайтесь на боевые платежи.

---

**Нужна помощь?** Оставьте заявку на [flow-masters.ru](https://flow-masters.ru) — поможем настроить приём платежей в вашем Telegram-боте. Подписывайтесь на наш [Telegram-канал @flowmasters_ru](https://t.me/flowmasters_ru) — кейсы, статьи и новости об автоматизации.

💡 Нужна помощь с автоматизацией?

Обсудим ваш проект — консультация бесплатная

Обсудить проект
Все статьи

Начните экономить уже сегодня

Выберите удобный способ связи — ответим за 30 минут

Расчёт стоимости

Начните с самого популярного тарифа

Бесплатная консультация
Прототип за 3 дня
Гарантия результата