Интеграция Битрикс24 с сервисами электронной подписи

Наша компания занимается разработкой, поддержкой и обслуживанием решений на Битрикс и Битрикс24 любой сложности. От простых одностраничных сайтов до сложных интернет магазинов, CRM систем с интеграцией 1С и телефонии. Опыт разработчиков подтвержден сертификатами от вендора.
Предлагаемые услуги
Показано 1 из 1 услугВсе 1626 услуг
Интеграция Битрикс24 с сервисами электронной подписи
Средняя
~1-2 недели
Часто задаваемые вопросы
Наши компетенции:
Этапы разработки
Последние работы
  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1177
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    811
  • 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
    564
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Разработка на базе 1С Предприятие для компании МИРСАНБЕЛ
    747
  • image_crm_dolbimby_434_0.webp
    Разработка сайта на CRM Битрикс24 для компании DOLBIMBY
    655
  • image_crm_technotorgcomplex_453_0.webp
    Разработка на базе Битрикс24 для компании ТЕХНОТОРГКОМПЛЕКС
    976

Интеграция Битрикс24 с сервисами электронной подписи

Устанавливать КриптоПро CSP на каждый ноутбук в компании, раздавать токены, ловить баги Browser plug-in после очередного обновления Chrome — не единственный путь. Облачные сервисы электронной подписи снимают привязку к рабочему месту и позволяют выстроить маршруты подписания с несколькими участниками, включая контрагентов.

Какой сервис для какой задачи

Сервис Тип подписи API Для чего подходит
Контур.Диадок КЭП, УНЭП REST Юридически значимый ЭДО с российскими контрагентами, роуминг между операторами
СБИС КЭП, УНЭП REST ЭДО + бухгалтерия, удобно для компаний, уже работающих в экосистеме Тензор
КриптоПро DSS КЭП REST Облачная подпись без локального CSP — ключ хранится на сервере
DocuSign AES, QES (eIDAS) REST Международный документооборот, работа с зарубежными партнёрами

Для обмена формализованными документами (УПД, счета-фактуры) с российскими контрагентами — Диадок или СБИС. Для внутреннего подписания без токенов — КриптоПро DSS. Для международных контрактов — DocuSign.

Архитектура интеграции: как это работает изнутри

Общая схема одинакова для всех сервисов, различается только API:

  1. Документ формируется в Битрикс24 через генератор документов (crm.documentgenerator)
  2. Обработчик извлекает файл через REST API Битрикс24 и передаёт в сервис ЭП
  3. Сервис запускает маршрут подписания — уведомляет подписантов
  4. Подписанты работают в интерфейсе сервиса ЭП (или в мобильном приложении)
  5. Webhook от сервиса сообщает о завершении
  6. Подписанный документ + файл подписи загружаются обратно в Битрикс24

Связующее звено — серверный обработчик (webhook-приёмник). В простом варианте — PHP-скрипт на хостинге. Для надёжной работы при высокой нагрузке — очередь задач через Redis или RabbitMQ с гарантированной доставкой и ретраями при ошибках.

Интеграция с Контур.Диадок: полный цикл

Диадок — крупнейший оператор ЭДО в России, и именно с ним чаще всего связывают Битрикс24. REST API доступен по адресу https://api.kontur.ru/diadoc/v1/. Разберём реализацию подробно.

Аутентификация. Двухэтапная: сначала POST /Authenticate с логином/паролем или сертификатом, затем полученный токен передаётся в заголовке Authorization: DiadocAuth ddauth_api_client_id={client_id}, ddauth_token={token}. Токен живёт 1 час. В middleware кэшируем его и обновляем автоматически за 5 минут до истечения — иначе запросы начнут падать с 401 посреди рабочего дня.

Отправка документа на подпись:

  1. Получить файл из Битрикс24: crm.documentgenerator.document.get
  2. Определить ящик организации: GET /GetMyOrganizations
  3. Найти контрагента в Диадоке: GET /GetCounteragent?myOrgId={id}&counteragentOrgId={id}
  4. Для формализованных документов (УПД, акт, счёт-фактура) — POST /GenerateTitleXml, Диадок требует XML в формате ФНС
  5. Отправить: POST /PostMessage с вложенным документом и типом

Для неформализованных документов (договоры, допсоглашения) XML не нужен — файл передаётся как есть.

Отслеживание статуса. Диадок поддерживает два механизма:

  • PollingGET /GetDocflowEvents?afterEventId={id} — получение событий после указанного ID
  • Webhook-подписки — уведомления при изменении статуса через партнёрский доступ

На практике webhooks Диадока могут задерживаться на минуты при пиковых нагрузках. Надёжная схема: webhook как триггер немедленной проверки, polling каждые 5 минут как страховка. Так не теряются события и не нагружается API лишними запросами.

Получение подписанного документа:

GET /GetMessage?boxId={boxId}&messageId={msgId}&entityId={entityId}

В ответе — все версии документа, подписи каждой стороны, штампы времени. Извлекаем подписанную версию и файл подписи (.sig), загружаем в Битрикс24 через disk.file.upload, привязываем к сделке.

Отказ от подписи. Контрагент может запросить уточнение или отклонить документ. Диадок передаёт событие с комментарием. Обработчик создаёт в Битрикс24 задачу менеджеру (tasks.task.add) с текстом отказа и возвращает сделку на стадию доработки через crm.deal.update.

Маршруты подписания с несколькими участниками

Реальный документооборот — это не одна подпись. Типичные сценарии:

Последовательное подписание: договор подписывает сначала ваша сторона, затем контрагент. Порядок жёстко фиксирован.

Параллельное подписание: акт сверки подписывают обе стороны независимо.

Подписание с внутренним согласованием: перед подписью руководителем документ визирует юрист и финансовый директор. Визирование — УНЭП, финальная подпись — КЭП.

В API сервисов маршрут описывается набором шагов с участниками, типом действия и порядком:

{
  "document_id": "doc-456",
  "workflow": [
    {"step": 1, "action": "approve", "participants": ["[email protected]"], "type": "sequential"},
    {"step": 2, "action": "sign", "participants": ["[email protected]"], "type": "sequential"},
    {"step": 3, "action": "sign", "participants": ["[email protected]"], "type": "sequential"}
  ]
}

Что хранится в Битрикс24 после подписания

После завершения цикла в CRM должны оказаться:

  • Оригинал документа (PDF)
  • Файл открепленной подписи (.sig) — CAdES или XAdES
  • Протокол подписания — кто, когда, каким сертификатом

Файлы загружаются на Битрикс24.Диск в структуру Подписанные документы / [Год] / [Месяц] / [Номер сделки]. В пользовательских полях сделки фиксируются дата подписания, номер документа в системе ЭДО, статус.

Уведомления и автоматизация воронки

Каждое изменение статуса документа в сервисе ЭП транслируется в Битрикс24:

  • Уведомление в чат (im.notify.system.add) — ответственному менеджеру
  • Перевод стадии сделки (crm.deal.update) — автоматически при подписании обеими сторонами
  • Комментарий в таймлайне (crm.timeline.comment.add) — запись с деталями события
  • Задача при отказе (tasks.task.add) — менеджеру на доработку документа

Менеджер не следит за статусами вручную — система сама уведомляет и двигает сделку по воронке.

Этапы внедрения

Этап Что делаем Срок
Анализ требований Выбор сервиса, сравнение API, юридические аспекты 2–3 дня
Настройка сервиса Получение API-ключей, регистрация ящиков, тестовый контур 1–2 дня
Разработка обработчиков Отправка документов, приём webhooks, маппинг статусов, очередь задач 5–7 дней
Интеграция с CRM Кнопка «Отправить на подпись» в карточке сделки, автоматизация воронки 3–4 дня
Маршруты подписания Цепочки согласования, параллельные и последовательные ветки 2–3 дня
Тестирование Полный цикл с тестовым контрагентом, отказы, повторные отправки, edge-кейсы 3–5 дней

Облачная электронная подпись через внешний сервис убирает зависимость от конкретного компьютера. Менеджер отправляет документ из карточки сделки, контрагент подписывает в интерфейсе оператора ЭДО, подписанная версия автоматически возвращается в CRM. Без токенов на каждом рабочем месте, без сканера, без ожидания курьера.