За последние пару лет через меня прошло больше десятка проектов, где нужно было подключить Робокассу: интернет-магазины на WooCommerce, лендинги на Tilda, сервисы с оплатой через Telegram-бота на aiogram. Каждый раз затык оказывался не в коде, а в документах и тестовом режиме. Агрегатор проверяет данные компании жёстче, чем кажется на старте, и без готового пакета документов заявка зависает на неделю. Собрал здесь список документов, которые реально спрашивают на модерации, порядок прохождения тестового режима перед боевым запуском и причины отказов, с которыми сталкивался на практике у ИП, ООО и самозанятых.
По теме статьи
Готовое решение
Автоматическая конвертация валюты на Tilda
Цены товаров в нужной валюте по актуальному курсу ЦБ — автоматически и в реальном времени.
от6 000 ₽
Интернет-магазин
Интернет-магазин под ключ
Интернет-магазин под ключ — на Tilda, WordPress + WooCommerce, Next.js Commerce или кастомный бэкенд. Подберу платформу под бюджет, ассортимент и
от80 000 ₽
Какие документы нужны, чтобы подключить Робокассу
Робокасса - агрегатор, а не банк, поэтому проверяет не только реквизиты, но и то, что бизнес реальный: сайт работает, оферта опубликована, деятельность не попадает под ограничения платёжных систем (оружие, алкоголь, финансовые пирамиды, крипта). Список документов зависит от формы регистрации.
| Форма бизнеса | Что запрашивают | Средний срок проверки |
|---|---|---|
| ИП | Паспорт, ОГРНИП, ИНН, реквизиты расчётного счёта | 1-2 рабочих дня |
| ООО | Устав, ОГРН, приказ о назначении директора, банковские реквизиты | 2-3 рабочих дня |
| Самозанятый | Справка о постановке на учёт НПД из приложения «Мой налог», паспорт, реквизиты счёта или карты | 1 рабочий день |
На практике половина задержек случается не из-за нехватки документов, а из-за расхождения в названии компании: на сайте в футере указано одно юрлицо, а в анкете Робокассы - другое, например после ребрендинга старое название нигде не поменяли. Модератор сверяет это вручную и при малейшем несовпадении отправляет анкету на доработку.
Регистрация магазина и настройка личного кабинета
После одобрения документов в личном кабинете создаётся магазин: ему присваивают номер (в некоторых интеграциях его называют Shop ID) и два пароля для подписи запросов, обычно их обозначают как Пароль #1 и Пароль #2. Первый нужен при формировании ссылки на оплату, второй - для проверки подписи в уведомлениях о статусе платежа.
При регистрации магазина указываю:
- точный адрес сайта, куда ведут покупатели, без tilda.ws-поддомена, если сайт публикуется на своём домене;
- категорию товаров или услуг - от неё зависит, попадёт ли магазин под усиленную проверку;
- средний чек - если он сильно выше заявленной сферы, например «услуги» с чеком 150 000 ₽, это отдельный повод для запроса пояснений;
- ссылки на публичную оферту и политику обработки персональных данных, без них модерация не пройдёт.
Тестовый режим: что проверяет Робокасса перед стартом
Пока магазин на модерации, в личном кабинете можно включить тестовый режим и отправлять платежи тестовой картой 4111 1111 1111 1111 с любым сроком действия в будущем и произвольным CVC. Деньги по этим операциям не списываются, но по логам видно, доходит ли уведомление до сайта и правильно ли сайт на него отвечает.
Result URL, Success URL и подпись запроса
Result URL - адрес, на который Робокасса присылает серверное уведомление об оплате, напрямую с серверов Робокассы, минуя браузер покупателя. Именно эта точка чаще всего ломает интеграцию: клиент видит «Оплата прошла» на экране, а заказ в базе остаётся в статусе «Не оплачен», потому что сервер сайта ответил не в том формате.
Робокасса ждёт в ответ на Result URL строку вида «OK» плюс номер заказа, например OK1245. Если ответить просто «200 OK» без этой строки или вернуть HTML-страницу с ошибкой, Робокасса решит, что уведомление не доставлено, и будет повторять запрос по расписанию в течение суток.
Подпись в уведомлении проверяю на своей стороне, чтобы исключить поддельные запросы на Result URL. Для базового варианта с MD5 логика такая:
import hashlib
def check_signature(out_sum, inv_id, password2, signature):
raw = f"{out_sum}:{inv_id}:{password2}"
return hashlib.md5(raw.encode()).hexdigest().lower() == signature.lower()
Если в кабинете выбран SHA-256, меняется только алгоритм хеширования, порядок строки для подписи остаётся тем же.
Чек-лист перед включением боевого режима
- SSL-сертификат установлен и не просрочен, Робокасса не отправляет уведомления на http;
- тестовый платёж прошёл, и статус заказа в базе поменялся автоматически, без ручного вмешательства;
- отдельно проверен сценарий отказа от оплаты через Fail URL - заказ не должен зависать в статусе «Ожидает оплаты» навсегда;
- клиенту после оплаты уходит письмо или сообщение с подтверждением;
- в личном кабинете переключён тариф из тестового в боевой, а в коде сайта - Shop ID и пароли на боевые значения.
Бесплатный материал
🎁 Полезный скрипт в подарок
Подпишитесь на Telegram - пришлю готовый скрипт по этой теме.
Без спама. Отписка в 1 клик.
Типовые причины отказа и что с ними делать
Большая часть отказов повторяется от проекта к проекту:
- Несовпадение реквизитов. Название компании, ИНН или ОГРН в анкете не совпадают с тем, что указано на сайте в реквизитах или в подвале, модератор Робокассы это сверяет вручную.
- Нет рабочей оферты или политики конфиденциальности. Ссылка в футере есть, но ведёт на страницу 404 - так отклоняли магазин на WooCommerce, где страницу оферты забыли опубликовать после переноса на боевой домен.
- Заявленная деятельность не совпадает с содержимым сайта. При регистрации указали «услуги», а на сайте магазин с БАДами или финансовыми продуктами - такие категории попадают под повышенный контроль или вовсе не проходят.
- Result URL не отвечает или отвечает неправильно. Самый частый технический отказ: сервер возвращает не тот формат ответа, и Робокасса помечает интеграцию как нестабильную.
- На сайте нет реальных контактов. Пустая страница «Контакты», нет телефона или юридического адреса - для модератора это выглядит как сайт-однодневка.
Один из показательных случаев - магазин на кастомном PHP-скрипте, который на Result URL отвечал просто «OK» без номера заказа. Робокасса засчитывала уведомление как недоставленное и слала повтор каждые несколько минут почти сутки, пока формат ответа не поправили. Заказы при этом оплачивались нормально, но в базе висели неоплаченными, и менеджеры вручную обзванивали клиентов, чтобы разобраться.
Как Робокассу подключают на Tilda, WordPress и в Telegram-боте
У Tilda есть штатная интеграция с Робокассой прямо в настройках сайта: «Настройки сайта → Платежные системы → Robokassa», со своим Result URL вида https://forms.tildaapi.com/payment/robokassa/ и тестовым режимом. Для базового приёма оплаты этого достаточно. Отдельный обработчик пишу, когда нужно завести статус оплаты не просто в заказ Tilda, а в конкретную CRM (amoCRM, Bitrix24) со своей логикой полей и уведомлений. Такая интеграция всегда кастомная, потому что зависит от того, куда дальше уходит информация о заказе - в amoCRM, Bitrix24 или в свою базу.
На WordPress с WooCommerce ситуация проще: есть готовый плагин «Robokassa для WooCommerce», в настройках указываю Shop ID и оба пароля, и плагин сам формирует ссылки на оплату и слушает Result URL по стандартному роуту. Из практики: если на сайте стоит агрессивное кеширование вроде WP Rocket или LiteSpeed Cache, маршрут приёма уведомлений иногда попадает под общее кеширование страниц, и Робокасса получает в ответ закешированную HTML-страницу вместо «OK». Решается исключением этого URL из кеша.
Для Telegram-ботов на aiogram Робокасса не поддерживает Telegram Payments API напрямую, поэтому в боте формирую обычную ссылку на оплату с подписью, отправляю её пользователю, а после Result URL отдельный сервис на aiohttp подтверждает оплату и бот присылает пользователю сообщение с деталями заказа. Если нужно просто передать статус оплаты в CRM или в чат менеджеров без написания отдельного бэкенда, такую же связку иногда собираю в n8n: вебхук принимает уведомление от Робокассы, проверяет подпись и рассылает статус в нужные каналы.
Из эквайрингов на WooCommerce часто сравнивают Робокассу с прямым подключением через Т‑Банк. У Робокассы ниже порог входа: она работает даже с самозанятыми, без отдельного расчётного счёта для приёма от физлиц, а у Т‑Банка эквайринг обычно требует статус ИП или ООО. Комиссия у обоих зависит от тарифа и оборота, а не от типа сайта или платформы, точную ставку дают только после подачи заявки.
Если разбираться в подписи запроса, вебхуках и синхронизации статусов самому не хочется, интеграцию обычно беру отдельной задачей - это можно заказать как разработку или доработку сайта с оплатой через Робокассу.
Сколько стоит настройка и когда её лучше отдать разработчику
Если сайт уже готов и нужно просто подключить приём платежей, для Tilda это обычно доработка от 3 000 ₽ - обработчик Result URL, передача статуса заказа в CRM и тестовый прогон. Комплексная интеграция, где Робокасса завязана на CRM, расчёт доставки СДЭК и автоматическое обновление остатков, идёт как отдельный проект от 40 000 ₽.
Если магазина ещё нет и его нужно собрать целиком вместе с оплатой, доставкой и личным кабинетом клиента, это уже интернет-магазин под ключ от 80 000 ₽. На бирже фриланса за подключение Робокассы просят обычно от 5 000 до 20 000 ₽ в зависимости от сложности сайта и того, есть ли готовая документация к проекту, но это рыночный ориентир, а не мои расценки.
Отдельно закладываю время на мониторинг после запуска: первую неделю после перехода в боевой режим стоит следить за логами Result URL, потому что часть ошибок конфигурации проявляется только на реальных платежах, а не в тестовом режиме. Если нужно, чтобы кто-то следил за этим на постоянной основе, беру такие задачи в техподдержку от 15 000 ₽/мес.
Частые вопросы
Сколько времени занимает подключение Робокассы?
Если документы в порядке и сайт уже соответствует требованиям - оферта, контакты, SSL, от подачи заявки до одобрения обычно уходит 1-3 рабочих дня. С учётом тестового режима и доработки Result URL закладываю на весь процесс около недели.
Можно ли принимать платежи через Робокассу самозанятому?
Да, для этого нужна справка о постановке на учёт НПД из приложения «Мой налог» и реквизиты счёта или карты для вывода средств. Ограничение по обороту у самозанятых - 2,4 млн ₽ в год, при приближении к лимиту стоит заранее продумать переход на ИП.
Что делать, если магазин отклонили на модерации?
В личном кабинете обычно указывают причину отказа: чаще всего это несовпадение реквизитов, нерабочая оферта или подозрение по категории товаров. Устраняю конкретную причину и подаю заявку повторно, без штрафа за повторную попытку.
Чем Робокасса отличается от прямого эквайринга, например от Т‑Банка?
Робокасса - агрегатор: одна интеграция даёт доступ сразу к нескольким способам оплаты, картам, СБП, электронным кошелькам, и работает с самозанятыми без отдельного расчётного счёта. Прямой эквайринг банка вроде Т‑Банка иногда выгоднее по комиссии при большом обороте, но требует статус ИП или ООО и отдельного договора с банком.