Интеграция 1С-Битрикс с платежной системой Robokassa

Стандартный модуль Robokassa из Маркетплейса часто не даёт нужной гибкости: вы не можете управлять параметрами `Shp_*`, менять логику фискализации или оптимизировать обработку под высокие нагрузки. Кастомная интеграция решает эти проблемы — вы получаете полный контроль над формированием подписи, обр
Услуги, которые мы предлагаем
Показано 1 из 1Все 1626 услуг
Интеграция 1С-Битрикс с платежной системой Robokassa
Средний
~1-2 недели

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_website-b2b-advance_0.webp
    Разработка сайта компании B2B ADVANCE
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Разработка веб-сайта для компании ФИКСПЕР
    995
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Разработка на базе Битрикс, Битрикс24, 1С для компании Development of an Online Appointment Booking Widget for a Medical Center
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    863
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    1134

Стандартный модуль Robokassa из Маркетплейса часто не даёт нужной гибкости: вы не можете управлять параметрами Shp_*, менять логику фискализации или оптимизировать обработку под высокие нагрузки. Кастомная интеграция решает эти проблемы — вы получаете полный контроль над формированием подписи, обработкой уведомлений и логикой ошибок. Наш опыт — 7+ лет интеграций Битрикс с платёжными системами, более 50 успешных проектов. Мы гарантируем корректную обработку платежей и полное соответствие требованиям 54-ФЗ.

Почему кастомная интеграция Robokassa надёжнее готового модуля?

Готовый модуль из Маркетплейса ограничен в настройках: не позволяет гибко управлять параметрами Shp_*, не поддерживает нестандартные сценарии фискализации и не оптимизирован под высокие нагрузки. Кастомная интеграция даёт полный контроль над формированием подписи, обработкой уведомлений и логикой ошибок. Она в 3 раза быстрее обрабатывает платежи за счёт оптимизированного кэширования и параллельных запросов к API Битрикс и Robokassa.

Критерий Стандартный модуль Кастомная интеграция
Управление Shp_* Ограничено Полный контроль
Фискализация Базовая, часты ошибки Гибкая настройка под 54-ФЗ
Производительность Средняя Оптимизирована (кэширование, параллельные запросы)
Гарантия Отсутствует 12 месяцев

Схема работы

  1. Битрикс формирует подписанную ссылку на форму Robokassa
  2. Покупатель оплачивает (карта, кошелёк, наличные)
  3. Robokassa отправляет POST-уведомление на ResultURL магазина
  4. Магазин проверяет подпись, подтверждает оплату
  5. Robokassa перенаправляет покупателя на SuccessURL или FailURL

Параметры и формирование подписи

Базовые параметры запроса к Robokassa:

Параметр Значение Описание
MerchantLogin из ЛК Логин магазина
OutSum сумма Сумма оплаты
InvId orderId Номер заказа
Description текст Описание (до 100 символов)
SignatureValue MD5/SHA256 Подпись
IsTest 1 Тестовый режим
Encoding utf-8 Кодировка

Подпись формируется как MD5 или SHA256 (зависит от настроек магазина в ЛК Robokassa):

// MD5 подпись $signature = md5("{$merchantLogin}:{$outSum}:{$invId}:{$password1}"); // SHA256 (рекомендуется) $signature = hash('sha256', "{$merchantLogin}:{$outSum}:{$invId}:{$password1}"); // URL платёжной формы $payUrl = 'https://auth.robokassa.ru/Merchant/Index.aspx?' . http_build_query([ 'MerchantLogin' => $merchantLogin, 'OutSum' => number_format($outSum, 2, '.', ''), 'InvId' => $invId, 'Description' => $description, 'SignatureValue' => $signature, 'Encoding' => 'utf-8', 'IsTest' => $isTest ? 1 : 0, ]); 

Обработка ResultURL

Robokassa отправляет POST с параметрами на ResultURL. Проверка подписи обязательна — используется Password2 (отличается от Password1):

$outSum = $_POST['OutSum']; $invId = $_POST['InvId']; $received = strtolower($_POST['SignatureValue']); $password2 = $this->getBusinessValue($payment, 'ROBOKASSA_PASSWORD2'); $expected = strtolower(hash('sha256', "{$outSum}:{$invId}:{$password2}")); if ($received !== $expected) { echo 'bad sign'; exit; } // Подпись верна — подтверждаем оплату $order = \Bitrix\Sale\Order::loadByAccountNumber($invId); // ... setPaid('Y'), save() echo "OK{$invId}"; // Robokassa ждёт именно этот ответ 

Критично: ответ на ResultURL должен быть строго OK{InvId}. Если Robokassa не получает этот ответ — считает уведомление неотправленным и пробует снова (до 8 раз).

Дополнительные параметры (Shp_*)

Robokassa поддерживает пользовательские параметры с префиксом Shp_. Они включаются в подпись и возвращаются в ResultURL. Используйте для передачи идентификатора заказа в Битрикс, если InvId занят или нужны дополнительные данные:

$signature = hash('sha256', "{$merchantLogin}:{$outSum}:{$invId}:{$password1}:Shp_item={$itemId}&Shp_user={$userId}" ); // Параметры Shp_ в подпись включаются в алфавитном порядке ключей 

Фискализация

Robokassa поддерживает ФЗ-54 через параметр Receipt в base64-encoded JSON:

$receipt = [ 'sno' => 'osn', // система налогообложения 'items' => array_map(function($basketItem) { return [ 'name' => $basketItem->getField('NAME'), 'quantity' => $basketItem->getQuantity(), 'sum' => $basketItem->getPrice() * $basketItem->getQuantity(), 'payment_method' => 'full_prepayment', 'payment_object' => 'commodity', 'tax' => 'vat20', ]; }, iterator_to_array($order->getBasket())), ]; $receiptEncoded = base64_encode(json_encode($receipt, JSON_UNESCAPED_UNICODE)); 

Как обеспечить корректную фискализацию чеков?

Для соблюдения 54-ФЗ при оплате через Robokassa необходимо передавать в запросе параметр Receipt с корректными данными о товарах, ставках НДФЛ и системе налогообложения. Частая ошибка — неверный формат payment_object или tax. В нашей практике мы используем предварительную валидацию чека через тестовый контур Robokassa. Это позволяет избежать отказов фискального накопителя и штрафов.

Пример из практики: интернет-магазин бытовой техники

Недавно мы внедрили кастомную интеграцию Robokassa для крупного магазина бытовой техники. Стандартный модуль не справлялся с нагрузкой в 2000+ заказов в день — платежи зависали, фискализация сыпала ошибки. Мы переписали модуль: добавили асинхронную обработку ResultURL через очередь, оптимизировали запросы к инфоблокам и настроили параллельную отправку чеков. В результате время подтверждения платежа снизилось с 3 секунд до 0.4 секунды, а число неуспешных фискализаций упало до нуля. Заказчик сэкономил на возвратах и штрафах — инвестиции в интеграцию окупились за пару месяцев.

Что входит в работу

Мы предоставляем интеграцию «под ключ»:

  • Анализ текущей схемы оплаты на сайте
  • Разработка модуля с полным циклом: генерация ссылки, ResultURL, SuccessURL, FailURL
  • Настройка дополнительных параметров Shp_* для передачи метаданных заказа
  • Реализация фискализации в соответствии с 54-ФЗ
  • Тестирование на тестовом и боевом контуре Robokassa
  • Документация по API и инструкция по обслуживанию
  • Гарантия на код — 12 месяцев

Сроки и бюджет

Задача Срок
Обработчик: формирование ссылки + ResultURL 1–2 дня
Дополнительные параметры Shp_* 0.5 дня
Фискализация +1–2 дня
Тестирование полного цикла 0.5 дня

Стоимость рассчитывается индивидуально и зависит от сложности — в среднем она сопоставима с тремя месяцами абонемента на готовый модуль, но даёт гораздо больше контроля. Оценим ваш проект за 1 день.

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