WordPress · 8 мин чтения

Подключить Робокассу: документы, тесты и типовые отказы

За последние пару лет через меня прошло больше десятка проектов, где нужно было подключить Робокассу: интернет-магазины на WooCommerce, лендинги на Tilda, сервисы с оплатой через Telegram-бота на aiogram. Каждый раз затык оказывался не в коде, а в документах и тестовом режиме. Агрегатор проверяет данные компании жёстче, чем кажется на старте, и без готового пакета документов заявка зависает на неделю. Собрал здесь список документов, которые реально спрашивают на модерации, порядок прохождения тестового режима перед боевым запуском и причины отказов, с которыми сталкивался на практике у ИП, ООО и самозанятых.

Какие документы нужны, чтобы подключить Робокассу

Робокасса - агрегатор, а не банк, поэтому проверяет не только реквизиты, но и то, что бизнес реальный: сайт работает, оферта опубликована, деятельность не попадает под ограничения платёжных систем (оружие, алкоголь, финансовые пирамиды, крипта). Список документов зависит от формы регистрации.

Форма бизнеса Что запрашивают Средний срок проверки
ИП Паспорт, ОГРНИП, ИНН, реквизиты расчётного счёта 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 клик.

Типовые причины отказа и что с ними делать

Большая часть отказов повторяется от проекта к проекту:

  1. Несовпадение реквизитов. Название компании, ИНН или ОГРН в анкете не совпадают с тем, что указано на сайте в реквизитах или в подвале, модератор Робокассы это сверяет вручную.
  2. Нет рабочей оферты или политики конфиденциальности. Ссылка в футере есть, но ведёт на страницу 404 - так отклоняли магазин на WooCommerce, где страницу оферты забыли опубликовать после переноса на боевой домен.
  3. Заявленная деятельность не совпадает с содержимым сайта. При регистрации указали «услуги», а на сайте магазин с БАДами или финансовыми продуктами - такие категории попадают под повышенный контроль или вовсе не проходят.
  4. Result URL не отвечает или отвечает неправильно. Самый частый технический отказ: сервер возвращает не тот формат ответа, и Робокасса помечает интеграцию как нестабильную.
  5. На сайте нет реальных контактов. Пустая страница «Контакты», нет телефона или юридического адреса - для модератора это выглядит как сайт-однодневка.

Один из показательных случаев - магазин на кастомном 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 млн ₽ в год, при приближении к лимиту стоит заранее продумать переход на ИП.

Что делать, если магазин отклонили на модерации?

В личном кабинете обычно указывают причину отказа: чаще всего это несовпадение реквизитов, нерабочая оферта или подозрение по категории товаров. Устраняю конкретную причину и подаю заявку повторно, без штрафа за повторную попытку.

Чем Робокасса отличается от прямого эквайринга, например от Т‑Банка?

Робокасса - агрегатор: одна интеграция даёт доступ сразу к нескольким способам оплаты, картам, СБП, электронным кошелькам, и работает с самозанятыми без отдельного расчётного счёта. Прямой эквайринг банка вроде Т‑Банка иногда выгоднее по комиссии при большом обороте, но требует статус ИП или ООО и отдельного договора с банком.

Есть задача?

Обсудим в мессенджере

Расскажите, что нужно сделать — отвечу в течение 4 часов в рабочее время. Первая консультация бесплатно.

Продолжая пользование настоящим сайтом Вы выражаете своё согласие на обработку Ваших персональных данных (файлов куки) с использованием Yandex.Metrika.
Понятно