Если коротко: для Telegram-бота Lava чаще удобнее, когда нужна API-модель счета с hookUrl на каждый заказ, быстрый внешний checkout и простая связка заказа с вебхуком. Robokassa чаще сильнее, когда бизнесу важны привычный российский эквайринг, широкий набор способов оплаты, кабинет с фискальными сценариями и классический ResultURL. В Strelo оба маршрута можно встроить в Telegram-воронку, но выбирать провайдера нужно не по названию, а по тому, как заказ создается, как подтверждается оплата и что должно сработать после платежа.

Практический выбор такой: Lava - если нужна invoice API-модель с hookUrl и быстрым созданием счета. Robokassa - если нужен классический российский эквайринг, ResultURL, InvId и привычный платежный кабинет. В Telegram-боте решает не логотип провайдера, а надежная цепочка pending, signed webhook, completed, выдача доступа и CRM.

Главная ошибка в запросе "Robokassa или Lava для Telegram бота" - сравнивать только комиссии. В боте важнее цепочка: пользователь нажал кнопку, заказ получил внешний ID, провайдер вернул подписанное событие, контакт стал покупателем, доступ выдан один раз, а источник трафика сохранился в аналитике. Если эта цепочка ломается, разница в комиссии уже не спасает конверсию.

Эта статья дополняет общий разбор оплаты в Telegram-боте. Там речь про архитектуру платежа в целом. Здесь фокус уже на выборе между двумя конкретными провайдерами для бота, который продает через внешнюю платежную ссылку и должен продолжать сценарий после подтверждения.

Вердикт

Robokassa или Lava для Telegram-бота

Сравнивайте провайдеров по тому, как они создают заказ, подтверждают оплату и возвращают событие в бота.

КритерийВыбирайте LavaВыбирайте RobokassaРиск, если пропустить
Создание платежаAPI создает invoice и возвращает URLСсылка строится по классическому протоколуСсылка без заказа не даст нормальный учет
ПодтверждениеHMAC hook по JSON-телуResultURL с SignatureValue и OK плюс InvIdНельзя выдавать доступ по клику
Операционная рольБыстрый invoice в сценарииПривычный эквайринг и кабинетБез CRM контакт потеряется
Где сильнее в StreloНода заказа и вебхук после оплатыНода заказа плюс платежный гейт проверкиРучная выдача доступа съедает эффект бота
Для Telegram-first продаж сравнение выигрывает тот провайдер, который проще встроить в вашу post-payment ветку без ручной сверки.

Быстрый вердикт: когда выбрать Lava, а когда Robokassa

Lava стоит брать первой, если вы хотите создавать счет через API, передавать hookUrl из сценария, получать invoice URL и держать заказ как часть Telegram-цепочки. Это хорошо ложится на модель "нода создала заказ, сообщение отправило ссылку, вебхук завершил оплату".

Robokassa стоит брать первой, если у бизнеса уже есть магазин Robokassa, нужна классическая платежная ссылка, привычные способы оплаты для российской аудитории и обработка ResultURL по схеме с InvId. В Strelo это выглядит не как внешний костыль, а как отдельная нода заказа и платежный гейт с проверкой статуса.

контакт
,
оффер
,
заказ
,
payment_url
,
signed webhook
,
completed
,
доступ
,
аналитика
Провайдер оплаты закрывает только часть пути. Продажная ценность появляется, когда событие оплаты возвращается в Telegram-цепочку.

Для маленького цифрового продукта разница часто упирается в скорость запуска. Для онлайн-школы, B2B-услуги или магазина с повторными продажами выбор провайдера влияет на поддержку: кто увидит статус заказа, как быстро выдается доступ, можно ли безопасно обработать повторный вебхук и где менеджер увидит историю контакта.

Что технически отличается в оплате бота

У Lava и Robokassa разные точки контроля. Lava создает invoice через серверный запрос к Business API. Robokassa в классическом протоколе строит ссылку на оплату локально: магазин формирует параметры, считает SignatureValue и отправляет пользователя на auth.robokassa.ru.

Техника

Главное техническое отличие

Lava и Robokassa решают одну бизнес-задачу, но строят платеж по-разному.

КритерийLavaRobokassa
СозданиеСерверный запрос к invoice APIЛокальная сборка URL оплаты
ИдентификаторorderId мерчанта и invoiceId провайдераЧисловой InvId в ссылке и ResultURL
ВебхукhookUrl можно передать при создании счетаResultURL задается в настройках магазина
Ответ обработчикаJSON-ответ сервера, 200 при успехеPlain text OK плюс InvId

В Telegram-боте это меняет логику сценария. У Lava вы просите провайдера создать счет и передаете адрес вебхука сразу при создании. У Robokassa вы должны заранее настроить ResultURL в кабинете магазина, а в ссылке передать InvId и Shp-параметры, чтобы потом связать вебхук с контактом и заказом.

В Strelo оба варианта сводятся к понятной операционной модели: сначала заказ получает статус pending, потом внешнее событие меняет статус на completed. Пользователь не должен получать доступ по факту клика. Доступ выдается только после подписанного подтверждения.

Превью цепочки
Пример платежной цепочки в Strelo: заказ, ссылка, подтверждение, доступ и аналитика.

Как работает Lava в Telegram-воронке

Lava подходит для сценария, где бот должен создать invoice на конкретный заказ, сохранить ссылку в переменную и дождаться вебхука. По документации Lava для создания счета обязательны сумма, orderId, shopId и подпись, а hookUrl указывает, куда отправлять hook.

Lava

Как создается invoice в боте

  1. Бот знает продукт и сумму

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

  2. Сервер создает счет

    Strelo отправляет shopId, orderId, сумму, подпись и hookUrl в Lava Business API.

  3. Пользователь получает URL

    invoice URL сохраняется в payment_url и уходит кнопкой в Telegram.

  4. Webhook подтверждает оплату

    Подписанное событие переводит pending-заказ в completed и запускает post-payment действия.

В практической воронке это выглядит так: пользователь выбрал тариф, нода Lava создала счет, сообщение отправило payment_url, провайдер прислал webhook, Strelo нашла pending-заказ и запустила ветку после оплаты. Для Telegram это удобно, потому что все события остаются привязаны к контакту.

Слабое место Lava - вы должны аккуратно хранить shopId, secret key и additional key, проверить подпись вебхука и не путать тестовый контур с боевым. Если вебхук не проходит проверку, покупка не должна становиться completed.

Когда Lava

Сценарии, где Lava обычно проще

Быстрый invoice

Нужна платежная ссылка на конкретный заказ без тяжелой настройки checkout-слоя.

hookUrl на заказ

Сценарий сам указывает адрес, куда провайдер вернет событие оплаты.

Ссылка со сроком жизни

Для ограниченных офферов удобно контролировать expire на уровне счета.

Простая воронка

Один продукт, один checkout, webhook и выдача доступа без сложной кассы.

API-first логика

Команда готова работать с подписью JSON-запросов и webhook-полями.

Кошелек и СБП

На момент проверки публичная страница Lava показывала кошелек, карты и СБП среди популярных способов.

Как работает Robokassa в Telegram-воронке

Robokassa в классическом протоколе не требует исходящего API-запроса для создания платежной ссылки. Сервер формирует набор параметров, считает SignatureValue по Паролю #1, добавляет InvId и Shp-поля, после оплаты Robokassa шлет ResultURL, а обработчик проверяет подпись по Паролю #2.

Robokassa

Как работает классическая ссылка

  1. Создать InvId

    Заказ получает числовой ID, который участвует в ссылке и вернется в ResultURL.

  2. Подписать ссылку

    Сервер считает SignatureValue по MerchantLogin, OutSum, InvId, Паролю #1 и Shp-полям.

  3. Отправить checkout

    Пользователь переходит на страницу оплаты Robokassa и выбирает способ оплаты.

  4. Принять ResultURL

    Обработчик проверяет подпись по Паролю #2 и отвечает OK плюс InvId.

Для Telegram-бота это удобно, когда нужен стабильный числовой InvId и магазин уже настроен в Robokassa. В Strelo нода Robokassa: Заказ создает pending-покупку, кладет payment_url в переменную и сохраняет integration_id, чтобы следующая нода Оплата Robokassa могла проверить статус через OpState.

Слабое место Robokassa - дисциплина настроек. ResultURL задается на уровне магазина, ответ обработчика должен быть OK плюс InvId, а SignatureValue приходит в form-urlencoded теле. Если перепутать Пароль #1 и Пароль #2, ссылка может открываться, но вебхук не подтвердит оплату.

Когда Robokassa

Сценарии, где Robokassa чаще выглядит сильнее

Уже есть магазин

Бизнес не хочет менять платежный кабинет, учет и привычную операционную схему.

Широкие способы оплаты

На публичной странице Robokassa заявлены карты, СБП, pay-методы, BNPL и другие способы.

Фискальные процессы

Для части бизнесов важны облачные чеки, документы и привычная работа с кабинетом.

InvId как ключ

Числовой ID удобно хранить как external_order_id и сверять с ResultURL.

Строгий ResultURL

Платеж подтверждается только после SignatureValue и корректного OK-ответа.

Гейт проверки в чате

Пользователь может нажать Проверить платеж, а сценарий сверит состояние заказа.

Таблица выбора для бизнеса

Для Telegram-продаж провайдер нужно выбирать по модели бизнеса. У курса за 990 руб., консультации за 15000 руб. и магазина с повторными заказами разные риски: где-то важна скорость клика, где-то чек и документы, где-то надежный возврат в сценарий после платежа.

Модель бизнеса

Как выбрать провайдера под продукт

Один платежный сценарий не подходит всем нишам.

КритерийСценарийЧаще подходитПочему
Недорогой цифровой продуктФайл, чеклист, мини-курсLava или RobokassaРешает скорость запуска и UX checkout
Онлайн-школаКурс, тарифы, доступRobokassa при зрелом юрконтуре, Lava при API-first запускеНужны статусы, доступ и поддержка
Консультация или услугаВысокий чек и вопросы до оплатыRobokassa часто привычнееКабинет, документы и ручная поддержка важнее скорости
Быстрый MVPПроверка спросаLavaМеньше операционных слоев на старте

Если вы продаете один цифровой продукт внутри прогрева, Lava часто проще как invoice API. Если у вас уже работает Robokassa, есть привычный кабинет, подключены способы оплаты и настроена фискализация, менять только ради Telegram-бота необязательно. Лучше встроить текущий магазин в нормальную воронку.

Способы оплаты

Что видно в публичных источниках на 2026-07-03

Тарифы и способы оплаты меняются, поэтому в проде сверяйте кабинет провайдера перед запуском.

КритерийПровайдерПублично заявленоКак использовать в статье и боте
LavaLavaLAVA кошелек 0.5%, карты от 3%, СБП от 1%Указывать с датой проверки, не обещать вечный тариф
RobokassaRobokassa15+ методов, карты, СБП, pay-методы, оплата частями и кредитные продуктыСверять тариф по типу бизнеса и обороту

Комиссии и способы оплаты нельзя фиксировать как вечную истину. На момент проверки 2026-07-03 публичная страница Lava показывала LAVA кошелек 0.5%, банковские карты от 3% и СБП от 1%. У Robokassa публичная страница для юрлиц показывала 15+ методов приема оплат, включая карты, СБП и pay-методы, а тарифы зависят от типа бизнеса и оборота.

Все цифры по публичным страницам провайдеров проверены 2026-07-03. Перед запуском платежей сверяйте тарифы, доступные методы, тестовый режим и договорные условия в личном кабинете провайдера.

Что важнее комиссии

Комиссия видна сразу, а стоимость сбоев видна позже. Если бот не понимает, что человек оплатил, оператор вручную ищет платеж, пользователь пишет в поддержку, доступ выдается с задержкой, а реклама не получает нормальную атрибуцию. Поэтому платежный контур нужно оценивать как часть продаж, а не как отдельный checkout.

Не только комиссия

Четыре метрики выбора провайдера

Время до первого платежаоценка
1-2 дня

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

Дубли вебхуковцель
0 дублей выдачи

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

Ручная поддержкапосле UX
меньше

Четкое сообщение у кнопки оплаты снижает вопросы после списания.

Completed rateпо сегментам
сравнить

Провайдер выбирают по завершенным оплатам, а не по кликам по кнопке.

Смотрите не только на то, сколько берет провайдер. Проверьте, сколько действий нужно до первого боевого платежа, где хранится внешний ID заказа, как проверить подпись, как обработать дубль вебхука и как отмена платежа влияет на доступ. Эти вопросы быстрее выявляют слабое место интеграции.

Проверка гипотезы

Какие этапы сравнивать после запуска

Примерная карта контроля. После запуска замените значения своими данными из CRM и платежей.

Увидели оффер100%

Дошли до платежного сообщения

Нажали оплату68%

UX кнопки и доверие к офферу

Открыли checkout54%

Мобильный браузер и скорость страницы

Оплатили32%

Completed по signed webhook

Получили доступ31%

Post-payment ветка без ручной паузы

Сравнивайте Lava и Robokassa на одинаковом оффере или честно разделяйте сегменты.

Вебхуки: место, где чаще всего ошибаются

Вебхук - это не уведомление для красоты. Это событие, на основании которого бот меняет статус заказа и запускает ветку после оплаты. Если вебхук неподписан, плохо проверен или неидемпотентен, Telegram-воронка начинает выдавать доступ не тем людям или повторно.

Подписи

Что именно проверять

Почти все опасные ошибки в платежах начинаются с неверной модели подписи.

КритерийLavaRobokassaКонтроль в боте
Исходящий платежHMAC SHA256 по JSON-запросуHASH строки MerchantLogin:OutSum:InvId:Password1Секреты не попадают в клиентский код
Входящее подтверждениеSignature или Authorization с HMACSignatureValue в теле ResultURLПодпись до любых side effect
Пользовательские поляcustomFields можно использовать для contactIdShp_contact участвует в подписиНельзя доверять неподписанному payload
Webhook

Как провайдер возвращает оплату

Для сценария в Telegram это главный контракт интеграции.

КритерийПараметрLavaRobokassa
Где задается URLТочка доставкиhookUrl можно передать при создании счетаResultURL настраивается в кабинете магазина
ФорматТело событияJSONForm-urlencoded параметры
Успешный ответЧто вернуть200 без ошибкиOK плюс InvId
Не объединяйте Lava и Robokassa в одну абстрактную проверку. У них разные поля, разные подписи, разные ответы обработчика и разные ошибки запуска. Общей может быть только бизнес-модель pending plus completed.

У Lava подпись считается HMAC SHA256 по подготовленной JSON-строке, а дополнительный ключ используется для проверки подписей в hooks. У Robokassa ResultURL требует сверки SignatureValue и ответа OK плюс InvId. Это две разные дисциплины, их нельзя описывать одной фразой "есть вебхук".

pendingpayment_url sentsigned webhookcompletedaccess issuedrefund or failed
Платежная модель должна иметь состояния. Без них поддержка и аналитика работают вслепую.

Что меняется именно для Telegram-бота

Сайт может показать страницу успеха и ждать, что пользователь сам вернется в кабинет. В Telegram так делать нельзя. Пользователь ожидает ответ в чате: оплата прошла, вот доступ, вот инструкция, вот поддержка. Поэтому провайдер должен возвращать событие в сценарий, а не только показывать SuccessURL.

Telegram

Почему бот отличается от сайта

В Telegram пользователь ждет продолжение в чате, а не только страницу успеха.

КритерийКонтурЧто важноЧто делает Strelo
ЧатПользователь не должен искать, что дальшеСообщение после completedОтправляет доступ и инструкцию
CRMПокупка должна попасть в контактcontact_id или pending-заказСвязывает заказ с карточкой
ВоронкаДожим нужно остановитьТеги и сегменты после оплатыПереводит в ветку покупателя
АтрибуцияНужно видеть источник денегUTM, стартовый параметр, заказХранит события и сегменты

Если человек оплатил и закрыл платежную страницу, бот все равно должен продолжить цепочку. Это задача webhook plus CRM, а не текста кнопки. Именно поэтому в воронке бота платежный шаг лучше проектировать рядом с сегментами, рассылками и поддержкой.

Не обещайте подписки и регулярные списания только потому, что провайдер где-то поддерживает рекурренты. В этой статье речь про одноразовые заказы и оплату внутри Telegram-воронки Strelo.
Платежный шаг в Strelo связан с воронкой, сегментами и повторными касаниями, а не живет отдельной ссылкой.
Платежный шаг в Strelo связан с воронкой, сегментами и повторными касаниями, а не живет отдельной ссылкой.

Как выглядит рабочий сценарий в Strelo

В Strelo выбор провайдера не отрывается от конструктора. Сначала вы подключаете магазин, потом в сценарии создаете заказ, затем отправляете ссылку на оплату и описываете, что произойдет после completed. Это убирает ручной стык между ботом, CRM и платежами.

Strelo связывает сценарии, контакты, AI-ответы, продажи и аналитику в одном рабочем кабинете.
Strelo связывает сценарии, контакты, AI-ответы, продажи и аналитику в одном рабочем кабинете.

Для Robokassa есть отдельный платежный гейт: сообщение с кнопкой оплаты и кнопкой проверки. Если человек нажал Проверить платеж, Strelo смотрит статус. Если вебхук пришел раньше, подтверждение уже есть в contact_purchases, и сценарий может идти по ветке paid.

Оплата Robokassa

Как работает платежный гейт в чате

  1. Сообщение с кнопками

    Пользователь видит текст оффера, кнопку Оплатить и кнопку Проверить платеж.

  2. Оплата по ссылке

    Кнопка ведет на checkout Robokassa, ссылка привязана к InvId заказа.

  3. Проверка вручную

    Если пользователь нажал Проверить платеж, Strelo смотрит contact_purchases и OpState.

  4. Авто-резюм по вебхуку

    Если ResultURL пришел раньше, сценарий продолжает ветку paid без лишнего клика.

Для Lava сценарий проще в части UX: нода создает invoice, сообщение отправляет ссылку, вебхук закрывает заказ. Но в обоих случаях одно правило остается неизменным: pending - не покупка, completed - покупка, failed или refunded не запускают ветку выдачи доступа.

UX

Что писать рядом с кнопкой оплаты

Провайдер не исправит плохой оффер и неясную сумму.

КритерийЭлементЗачемПример формулировки
Название продуктаПользователь узнает покупкуСнижает страх списанияДоступ к мини-курсу на 30 дней
СуммаБез сюрприза в checkoutПовышает довериеИтого: 2990 руб.
Что будет после оплатыПользователь ждет продолжениеСнижает поддержкуБот пришлет ссылку на доступ автоматически
Куда писатьДля спорных кейсовУбирает тревогуЕсли оплата прошла, но доступа нет, нажмите Поддержка

Фискализация, чеки и юридические тексты

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

Юрконтур

Где смотреть чеки и документы

Что заранее подготовить
  • Оферта или условия покупки до перехода в checkout.
  • Понятное название товара или услуги в платежном сообщении.
  • Контакт поддержки для вопросов после оплаты.
  • Сценарий возврата и ручной сверки спорного платежа.
Что нельзя решать в последний момент
  • Выдавать доступ до подписанного подтверждения.
  • Смешивать тестовый и боевой режим в одном сценарии.
  • Считать, что провайдер сам исправит неверный статус в CRM.
  • Обещать фискализацию без проверки личного кабинета и договора.
Юридический слой должен быть готов до боевого трафика, иначе поддержку завалят вопросы после первых списаний.

Robokassa чаще воспринимается бизнесом как привычный платежный кабинет с эквайрингом, кассовыми решениями и разными способами оплаты. Lava чаще воспринимается как быстрый платежный API и кошелек для сценариев, где нужна ссылка на invoice. Но окончательный выбор зависит от вашего юрконтура и требований к чекам.

Безопасность

Минимум платежной безопасности

Секреты на сервере

Пароли и ключи не должны попадать в клиентский код, шаблоны сообщений или URL, где их видит пользователь.

Подпись до записи

Сначала проверка Signature или HMAC, только потом запись покупки и запуск ветки.

Идемпотентность

Один external_order_id не должен создавать две покупки и два доступа.

Контакт из доверенного источника

Лучше искать pending-заказ, чем доверять произвольному contactId из payload.

Тест неверной подписи

Имитируйте webhook с испорченной подписью и убедитесь, что статус не меняется.

Логи без секретов

Ошибки платежа можно логировать, секретные ключи и пароли - нет.

Типовые сбои после запуска

Платежный сценарий редко ломается на красивом экране. Он ломается на краях: неправильный пароль подписи, смена тестового режима, повтор вебхука, потерянный contactId, пользователь оплатил с задержкой, оператор выдал доступ вручную и система не увидела статус.

Сбои

Пять мест, где платежный бот чаще всего ломается

Перепутаны пароли

У Robokassa Пароль #1 нужен для исходящей ссылки, Пароль #2 для ResultURL. Роли нельзя менять местами.

Тестовый режим остался в бою

Проверьте флаг is_test или аналог в runtime, а не только в локальном .env.

Контакт не найден

Провайдер подтвердил оплату, но CRM не смогла связать ее с человеком.

Webhook пришел дважды

Провайдеры могут повторять доставку. Без идемпотентности доступ отправится снова.

Оплата пришла позже

Пользователь закрыл checkout, а событие пришло через минуту. Сценарий должен уметь ждать.

Поддержка

Сигналы, что платежная цепочка требует правки

Доступа нетпосле оплаты
часто

Проверьте post-payment ветку и matched contact.

Ручная сверкапо InvId
растет

Значит, бот не показывает оператору все поля заказа.

Повторные событияwebhook
есть

Проверьте OK-ответ Robokassa и идемпотентность.

Нет атрибуциив продажах
0 UTM

Покупки есть, но рекламный источник потерян.

Разделите поддержку на состояния. Если оплата не подтверждена, оператору нужен внешний ID, сумма, контакт и провайдер. Если доступ не выдан, нужен статус completed и журнал post-payment действий. Если пришел возврат, сценарий не должен повторно благодарить за покупку.

создан заказждет оплатуоплачендоступ выданспорвозврат
Такие состояния помогают оператору отвечать по делу, а не вручную искать платеж по переписке.

QA перед боевым запуском

Перед запуском проверьте не только успешный платеж. Успешный платеж обычно проходит первым. Проблемы всплывают на дубле вебхука, на неверной подписи, на оплате через несколько минут, на отмене и на ручной проверке статуса.

QA

Тесты перед запуском платежей

Проверяйте не только happy path.

КритерийТестЧто должно случитьсяЕсли не так
Успешная оплатаБоевой или тестовый платежstatus completed, доступ один разИскать ошибку webhook
Неверная подписьИспортить Signature400 или отказ без side effectУязвимость оплаты
Повтор вебхукаОтправить событие повторноНет второго доступаНет идемпотентности
ОтменаНе завершать checkoutНе запускать ветку paidРиск ложной продажи
Ручная проверкаНажать Проверить платежpending остается pending, paid идет в paidПользователь застрянет
Запуск

Порядок подключения без хаоса

  1. Выберите сценарий оплаты

    Один товар, тариф, заявка или несколько продуктов. Не начинайте с провайдера.

  2. Подключите магазин

    Добавьте секреты, тестовый режим и webhook URL в нужный контур.

  3. Соберите ветку заказа

    Создание заказа, сообщение с payment_url, ожидание подтверждения, post-payment действия.

  4. Прогоните QA

    Успех, неверная подпись, дубль webhook, отмена, поздняя оплата.

  5. Сравните метрики

    Смотрите completed rate, поддержку, ручные сверки и источник продаж.

Если у вас нет времени на полный тест, минимум такой: создать заказ, открыть ссылку, оплатить, дождаться webhook, проверить, что contact_purchases стал completed, убедиться, что доступ выдан один раз, повторно отправить тот же webhook в тестовом контуре и проверить отсутствие дубля.

Атрибуция нужна, чтобы понимать, какой источник привел не к клику, а к оплаченной покупке.
Атрибуция нужна, чтобы понимать, какой источник привел не к клику, а к оплаченной покупке.

Что делать после оплаты

Покупка в Telegram-боте должна запускать не только сообщение Спасибо. Нужны выдача доступа, обновление сегмента, остановка дожима, отметка источника, поддержка и следующая коммерческая ветка. Иначе вы получите оплату, но потеряете CRM-ценность контакта.

После completed

Что должно сработать после оплаты

  1. Подтвердить оплату

    Короткое сообщение в чат снижает тревогу после ухода на внешний checkout.

  2. Выдать доступ

    Ссылка, файл, группа, кабинет или инструкция должны прийти автоматически.

  3. Обновить сегменты

    Покупатель выходит из дожима и попадает в клиентскую ветку.

  4. Открыть поддержку

    Если пользователь не получил доступ, оператор видит заказ, сумму и статус.

  5. Записать аналитику

    Источник, продукт, сумма и completed rate нужны для оценки рекламы.

Сообщение оплаты

Пять деталей, которые повышают доверие

Что покупают

Название продукта совпадает с оффером в рекламе или прогреве.

Сколько платят

Сумма и валюта видны до перехода в checkout.

Когда придет доступ

Пользователь знает, что бот ответит автоматически после оплаты.

Где условия

Ссылка на оферту, условия доступа или возвраты рядом с платежом.

Куда писать

Поддержка доступна, если платеж прошел, а доступ не пришел.

Эта часть сильнее влияет на выручку, чем кажется. Если покупатель сразу получил доступ и понятную инструкцию, он меньше пишет в поддержку. Если его убрали из прогрева, он не получает неловкие сообщения "успейте купить" после оплаты. Если источник сохранился, вы видите, какая реклама привела деньги.

Можно ли потом сменить провайдера

Да, но смена провайдера не должна менять смысл заказов. Сохраняйте внешний ID, payment_url, source, status, сумму, валюту, contact_id и время события. Тогда вы сможете сравнить Lava и Robokassa не по ощущениям, а по конверсии, поддержке и проценту завершенных оплат.

Миграция

Как не сломать учет при смене провайдера

Провайдера можно менять, если данные заказа остаются стабильными.

КритерийДанныеЗачем сохранятьРиск потери
external_order_idID заказаСвязка webhook и pending-заказаОплата не найдет контакт
sourcelava или robokassaРазделение аналитикиНельзя сравнить провайдеры
payment_urlСсылка checkoutПовторная отправка и поддержкаПользователь просит ссылку заново
statuspending, completed, failedПравильная ветка сценарияДоступ уходит не туда

Не запускайте оба провайдера хаотично в одной ветке. Лучше сделать A/B по сегментам или продуктам: например, дешевый цифровой продукт через Lava, дорогой курс через Robokassa, потом сравнить открытия checkout, completed rate, обращения в поддержку и долю ручных проверок.

Итог по провайдерам

Короткая карта выбора

Lava

Берите, если нужен invoice API, hookUrl, быстрый платежный URL и простая интеграция в сценарий с webhook.

Robokassa

Берите, если важны привычный российский эквайринг, ResultURL, InvId, широкий контур методов оплаты и кабинет.

Strelo

Не заменяет провайдера, а связывает оплату с Telegram-воронкой, CRM, сегментами и post-payment действиями.

Главный риск

Считать платеж завершенным после клика по кнопке. Завершает только подписанное подтверждение.

Где здесь Strelo

Strelo не заменяет платежного провайдера. Strelo закрывает слой между провайдером и продажами в Telegram: визуальная воронка, CRM-контакт, заказ, signed webhook, post-payment ветка, сегменты, рассылки и аналитика. Поэтому вопрос звучит не "какой провайдер лучше", а "какой провайдер точнее ложится в вашу Telegram-воронку".

Strelo

Почему провайдер нужен вместе с воронкой

Что закрывает Strelo
  • Создание заказа как шаг сценария, а не отдельная ручная ссылка.
  • Связь оплаты с контактом, сегментом, источником и post-payment веткой.
  • Защита от дублей через внешний ID и статус заказа.
  • Визуальная карта, где видно, что случится после completed.
Что остается за провайдером
  • Договор, тарифы и модерация магазина остаются на стороне провайдера.
  • Реквизиты, фискализация и чеки требуют проверки в кабинете провайдера.
  • Боевой платежный тест нужно делать на реальном магазине или тестовом контуре.
Смысл Strelo - не выбрать за вас Lava или Robokassa, а сделать оплату управляемым шагом Telegram-продаж.

Если вы только проектируете платежи, начните с архитектуры в статье Telegram оплата в боте. Если уже знаете, что продаете, соберите схему воронки по материалу воронка бота. Если платеж должен попадать в продажи и поддержку, посмотрите связку с CRM для Telegram.

Что читать дальше

Связанные материалы по платежам и продажам

Оплата в Telegram-боте

Общая архитектура платежа, внешний checkout, webhook, статусы и post-payment действия.

Воронка бота

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

Telegram-магазин

Каталог, корзина, заказ и платежная ссылка в коммерческом боте.

CRM для Telegram

Почему покупка должна попадать в карточку контакта, а не только в кабинет провайдера.

Аналитика воронки

Как смотреть completed rate, источники, клики и повторные продажи.

Бот для продаж

Как собрать Telegram-бота, который ведет человека до заявки или оплаты.

Демо рабочего кабинета Strelo: платежный шаг должен быть частью сценария, CRM и аналитики.
ИсточникЧто провереноДата
Robokassa DocsИнтерфейс оплаты, SignatureValue, ResultURL, ответ OK плюс InvId2026-07-03
Robokassa сайт15+ способов оплаты, карты, СБП, pay-методы и платежные инструменты2026-07-03
Lava DocsСоздание invoice, hookUrl, signature HMAC SHA256, статус счета2026-07-03
Lava сайтПопулярные способы оплаты и публичные ставки2026-07-03
Код StreloНоды Lava и Robokassa, webhook, pending/completed, post-payment логика2026-07-03
Цифры и возможности провайдеров меняются. Статья фиксирует состояние проверки на дату публикации.

Итог

Выбирайте Lava, если вам важна invoice API-модель, hookUrl на заказ, быстрый внешний checkout и простая связка с Telegram-сценарием. Выбирайте Robokassa, если у вас уже есть магазин, нужен классический российский эквайринг, ResultURL, широкий платежный контур и привычная операционная работа с чеками и кабинетами.

В обоих случаях не считайте оплату завершенной по клику. Завершает заказ только подписанное событие или проверенный статус. Все остальное - UX вокруг платежа.

Strelo для Telegram-продаж

Соберите оплату как часть Telegram-воронки

В Strelo заказ, ссылка на оплату, контакт, signed webhook, сегмент, выдача доступа и аналитика живут в одном сценарии. Поэтому Lava или Robokassa становятся не отдельной ссылкой, а управляемым этапом продаж.

Собрать платежный сценарий

Частые вопросы

Что выбрать для Telegram-бота, если нужен быстрый запуск оплаты?

Если магазин еще не сложный и нужна invoice API-модель, начните с Lava. Если магазин Robokassa уже подключен и настроен, быстрее встроить Robokassa в сценарий, чем менять провайдера ради бота.

Robokassa лучше Lava для онлайн-школы?

Не всегда. Robokassa часто удобна зрелому бизнесу с фискальными процессами и привычным кабинетом. Lava может быть проще для быстрого invoice checkout в Telegram-воронке. Сравнивайте по completed rate и поддержке.

Lava лучше Robokassa для цифрового продукта?

Для простого цифрового продукта Lava часто выглядит быстрее за счет API-счета и hookUrl. Но если аудитория привыкла к методам Robokassa или у бизнеса уже подключена касса, Robokassa может быть практичнее.

Нужно ли делать отдельный backend для оплаты в Telegram-боте?

Если вы используете Strelo, отдельный backend для типового сценария не нужен. Нужны подключенная commerce-интеграция, нода заказа, сообщение с payment_url и обработка подписанного вебхука.

Почему нельзя отправлять доступ сразу после нажатия Оплатить?

Потому что клик не равен оплате. Пользователь может закрыть checkout, отменить платеж или столкнуться с ошибкой. Доступ выдают только после подписанного webhook или проверенного статуса.

Что такое ResultURL в Robokassa?

ResultURL - это адрес магазина, куда Robokassa отправляет автоматическое уведомление об успешной оплате. Обработчик проверяет SignatureValue и отвечает OK плюс InvId.

Что такое hookUrl в Lava?

hookUrl - это адрес, куда Lava отправляет hook по счету. Его можно передать при создании invoice, чтобы событие оплаты пришло в обработчик сценария.

Можно ли подключить оба провайдера и смотреть, где конверсия выше?

Да, но сравнение нужно делать аккуратно: одинаковый оффер, одинаковый трафик или честное разделение сегментов. Смотрите completed rate, обращения в поддержку и ручные сверки, а не только клики по кнопке.