Интеграция 1С и Робокасса под ключ
Интернет-магазин принимает оплату через Робокассу, но каждый платёж бухгалтер вносит в 1С вручную - это 30-50 операций в день, ошибки в реквизитах и расхождения в отчётности. Без интеграции теряются данные о статусах платежей, чеки не привязываются к заказам, а сверка занимает часы вместо минут.
Как мы это делаем
- Аудит и проектирование связки. Изучаем конфигурацию 1С (УТ, УНФ, Бухгалтерия или кастомная), версию API Робокассы и логику бизнес-процесса - определяем точки входа и выхода данных, фиксируем маппинг полей в техническом задании.
- Настройка webhook и API-соединения. Регистрируем endpoint для приёма уведомлений от Робокассы, настраиваем авторизацию по подписи (HMAC-SHA256), прописываем параметры запросов к API 1С или внешней обработке.
- Построение сценария в n8n. Создаём автоматизированный workflow: триггер по событию (новый платёж, возврат, ошибка) - трансформация данных - запись в 1С через REST или COM-соединение. Каждый шаг логируется.
- Маппинг полей и тестирование. Прогоняем не менее 20 тестовых транзакций: успешная оплата, частичный возврат, дублирующий запрос, таймаут. Проверяем корректность фискальных данных и соответствие 54-ФЗ.
- Мониторинг и обработка ошибок. Подключаем алертинг - при сбое сценарий повторяет попытку до 3 раз, затем отправляет уведомление в Telegram или на email. Передаём документацию и инструкцию по управлению интеграцией.
Что синхронизировать между 1С и Робокасса
Для корректного отражения платежей и фискализации в 1С необходимо настроить маппинг полей между объектами 1С и методами API Робокассы (через протокол Merchant API и Fiscal API):
- Сумма заказа 1С (Документ "Заказ клиента", поле
СуммаДокумента) → Робокасса (Метод/Merchant/Operation/Init, параметрOutSum). - Идентификатор заказа 1С (Поле
НомерилиGUID) → Робокасса (ПараметрInvIdв запросе на создание платежа). - Email покупателя 1С (Справочник "Контрагенты", поле
Email) → Робокасса (ПараметрEmailв JSON-объектеReceiptдля Fiscal API). - Номенклатура 1С (Справочник "Номенклатура", поля
Наименование,Цена) → Робокасса (МассивItemsв структуреReceipt, поляName,Price). - Статус оплаты (Регистр накопления 1С) ← Робокасса (Метод
/Merchant/OpState, параметрState— получение статуса транзакции). - Ставка НДС 1С (Поле
СтавкаНДС) → Робокасса (ПараметрTaxв структуреReceipt, значенияnone,vat0,vat10,vat20и др.).
Технические детали интеграции 1С ↔ Робокасса
- Направление синхронизации: Двусторонняя. Инициация платежа — из 1С в Робокассу (REST POST). Получение статуса — через
Result URL(Push-уведомление от Робокассы в 1С) и метод/Merchant/OpState(Pull-запрос для сверки). - Формат данных: Обмен данными осуществляется строго в формате
JSON. При работе с Fiscal API обязательна кодировка UTF-8. - Обработка конфликтов: Идентификация транзакций происходит по
InvId. При получении события с уже обработаннымInvIdсистема 1С должна блокировать повторную проводку документа, используя проверку поGUIDв регистре сведений "История транзакций". - Частота обновления: Рекомендуемый интервал опроса (polling) для незавершенных платежей — 1 раз в 15 минут через планировщик заданий 1С.
- Обработка удалений: Метод
/Merchant/OpStateне поддерживает отмену платежей. Удаление заказа в 1С не влияет на платеж в Робокассе; при необходимости возврата средств используется метод/Fiscal/Refund. - Retry-логика: При получении HTTP-кодов 5xx или 429 (Rate Limit) реализовывается алгоритм экспоненциальной задержки: повторные попытки через 30с, 2м, 5м до успешного ответа или логирования ошибки в Журнал регистрации 1С.
Частые вопросы про 1С + Робокасса
Как настроить авторизацию API?
Для каждого магазина в Робокассе генерируются MerchantLogin и два пароля (Password 1 и 2). Они прописываются в константах 1С, а каждый запрос должен подписываться хеш-суммой MD5(OutSum:InvId:Password1).
Что делать, если сервер Робокассы недоступен?
Реализуйте очередь сообщений в 1С (регистр сведений "Очередь запросов"). Если API не отвечает, запись остается в очереди со статусом "К отправке" и повторно обрабатывается регламентным заданием после восстановления связи.
Есть ли лимиты на частоту запросов API?
Робокасса ограничивает количество запросов с одного IP. Рекомендуется не превышать частоту 1 запрос в секунду для методов OpState, чтобы избежать временной блокировки доступа к API.
Как предотвратить дублирование оплат?
Используйте уникальный InvId (номер заказа + префикс), который передается в Init. Робокасса не позволит создать повторный платеж с идентичным InvId для одного MerchantLogin.
Какова скорость прохождения данных между системами?
При использовании Push-уведомлений (Result URL) статус оплаты обновляется в 1С в течение 2–5 секунд после успешного завершения транзакции на стороне клиента.
Настроить связку 1С + Робокасса под ключ — flowframe.ru, от 40 000 ₽, срок 7-21 день.
Готов связать 1С с Робокасса?
Оставьте заявку — вернёмся в течение часа со сметой и планом работ.
Оставить заявку