«Фабрика документов» формирует DOCX и XLSX из роботов CRM и бизнес-процессов Битрикс24. Вы выбираете шаблон и карточку с данными. Приложение подставляет поля CRM и товарные строки в документ.
Поле «Дополнительные значения (JSON, необязательно)» добавлено в обновлении от 15.10.2026. Если его нет в существующем действии, администратору нужно проверить обновление приложения и переустановить нужный пункт в разделе «Роботы и БП». Затем заново откройте настройки действия в Битрикс24.
Какое действие выбрать
| Задача | Что выбрать |
|---|---|
| Создать документ по карточке, в которой сработал робот | «Сформировать документ по шаблону» |
| Создать файл по ID конкретной сделки или элемента смарт-процесса | «Сформировать файл по ID сделки или смарт-процесса» |
| Вызвать создание файла из дизайнера бизнес-процесса | Действие БП «Сформировать файл по ID сделки или смарт-процесса» |
Второе действие позволяет брать данные другой карточки. Например, бизнес-процесс запущен в одной сделке, а документ нужен для сделки с указанным ID.
Подготовьте шаблон и установите действия
- Загрузите и проверьте шаблон. Для разных исходных форматов нужны отдельные файлы: инструкция для DOCX и инструкция для XLSX.
- Подготовьте ID шаблона. Это идентификатор записи в приложении, а не код товара и не название файла. Внутренний адрес карточки шаблона имеет вид
/templates/<ID>. Если оболочка Битрикс24 скрывает этот адрес, попросите администратора помочь получить ID. Отдельной кнопки копирования ID в карточке нет. - Откройте приложение от имени администратора Битрикс24.
- Перейдите в раздел «Роботы и БП».
- Нажмите «Установить все», чтобы добавить отсутствующие действия. Если действия уже установлены, используйте «Переустановить все» для обновления их параметров. Можно установить или переустановить отдельное действие.
- Нажмите «Обновить статус». У нужных пунктов должна появиться отметка «Установлено».
Отметка «Установлено» подтверждает регистрацию действия. Следующий шаг проверки состоит в создании документа на тестовой карточке.
Как настроить робот для текущей карточки CRM

- Откройте автоматизацию нужной воронки CRM и добавьте робот «Сформировать документ по шаблону».
- В поле «Шаблон документа» укажите ID подготовленного шаблона.
- В поле «Формат результата» укажите DOCX или XLSX по типу шаблона. DOCX-шаблон создаёт DOCX, XLSX-шаблон создаёт XLSX. Выбор другого исходного формата в параметрах робота не преобразует Word-шаблон в Excel.
- Если нужен дополнительный PDF, выберите PDF в поле «Формат результата» или включите «Сформировать PDF». Создание PDF должно быть доступно в настройках приложения.
- Чтобы добавить документ в карточку CRM, включите «Прикрепить к таймлайну». При необходимости заполните «Комментарий в таймлайн».
- Если результат должен попасть в файловое поле карточки, включите «Сохранить в поле» и заполните «Поле для сохранения». Указывается код файлового поля, например
UF_CRM_DOCUMENT, а не его подпись на экране. Замените пример кодом своего поля. - При необходимости заполните «Название файла».
- Выберите существующего пользователя, от имени которого выполняется действие, и сохраните робот.
- Запустите его на тестовой карточке. В приложении откройте «Генерации», найдите результат и проверьте содержимое файла. Если выбраны таймлайн или поле, проверьте их отдельно в карточке CRM.
Как настроить действие по ID сделки или смарт-процесса
- Добавьте робот или действие БП «Сформировать файл по ID сделки или смарт-процесса».
- Заполните параметры:
| Поле | Что указать |
|---|---|
| «ID шаблона документа» | ID записи шаблона в приложении |
| «Тип сущности» | «Сделка» или «Смарт-процесс» |
| «ID типа смарт-процесса (только для смарт-процесса)» | ID типа CRM, если выбран смарт-процесс. Для сделки оставьте поле пустым |
| «ID сделки или элемента смарт-процесса» | Положительное целое число: ID карточки, из которой нужно взять данные |
| «Формат файла» | «Исходный формат шаблона (DOCX/XLSX)» или «PDF» |
| «Название файла (необязательно)» | Желаемое имя результата |
- Выберите существующего пользователя выполнения. Если редактор показывает пользователя
user_0, замените его на доступного пользователя портала. - Сохраните действие и запустите процесс на тестовой карточке.
- В разделе «Генерации» проверьте, что документ содержит данные указанной сделки или элемента. Они могут отличаться от данных карточки, в которой запущен процесс.
ID типа смарт-процесса и ID его элемента обозначают разные объекты. Например, тип может иметь ID 1038, а нужная карточка внутри него ID 47. В соответствующие поля вводятся два отдельных числа.
У действия предусмотрены результаты «Файл», «ID файла Битрикс24», «ID файла на Диске», «Имя файла», «ID генерации», «Статус генерации» и «Текст ошибки». Настройку передачи файла в последующее действие проверяйте отдельно. Поле «ID файла документа» у робота для текущей карточки и «ID файла Битрикс24» у действия по ID имеют разное назначение; не подменяйте одно другим.
Как передать дополнительные значения из бизнес-процесса
Этот раздел относится к обновлению с полем «Дополнительные значения (JSON, необязательно)». Значения можно использовать в DOCX и XLSX через объект custom. Поля CRM и товары приложение продолжает получать из указанной карточки.
Сначала проверьте простой пример
- Добавьте в шаблон маркеры:
Номер договора: {{ custom.contract_number }}
Примечание: {{ custom.note }}
- В параметрах действия заполните «Дополнительные значения (JSON, необязательно)»:
{
"contract_number": "00015",
"note": "Поставка по согласованному графику"
}
- Сохраните и запустите процесс. В документе должны появиться номер
00015и текст примечания.
В это поле передаётся содержимое объекта custom. Дополнительная обёртка {"custom": {...}} здесь не нужна.
Подставьте переменную БП
- В параметрах шаблона бизнес-процесса создайте одиночную переменную
PayloadJsonтипа «Строка» или «Текст». - Поместите в неё JSON-объект. Например:
{
"contract_number": "00015",
"note": "Поставка: \"основной склад\"\nДоставка до 18:00"
}
- В поле «Дополнительные значения (JSON, необязательно)» откройте штатный выбор значений Битрикс24 и выберите переменную
PayloadJson. - Редактор может показать выражение
{=Variable:PayloadJson > printable}. Это ссылка на переменную БП. Оставьте выражение, созданное редактором. - Запустите процесс и проверьте номер, кавычки и перенос строки в обоих нужных форматах.
Если JSON собирается из отдельных переменных БП, кавычки, обратная косая черта и переносы строк в их значениях должны быть корректно экранированы. Простая вставка произвольного текста внутрь "note":"..." может испортить JSON. Проверяйте результат сборки до вызова действия.
Что можно передать и какие есть ограничения

Допускаются строки, числа, логические значения, null, вложенные объекты и массивы. Артикулы и номера с ведущими нулями передавайте строками: "00015". Пустое поле означает отсутствие дополнительных значений.
Для поля дополнительных значений действуют ограничения: 64 КиБ в UTF-8, глубина вложенности до 8 и до 2048 элементов. Ключ содержит до 128 символов, начинается с буквы, далее допускает буквы, цифры и подчёркивания. Например, contract_number подходит. Повторяющиеся ключи и значения NaN/Infinity не допускаются.
Значения доступны внутри custom и не заменяют товарные строки или поля CRM. Один custom.article не распределяется автоматически по товарам. Для артикула каждой позиции используйте свойства товара; их выбор описан в разделе «Откуда берутся данные». Если все строки заранее готовит внешняя система, используйте публичный API.
Если документ не сформировался
| Что произошло | Что проверить |
|---|---|
| Действие не видно в редакторе Битрикс24 | Его регистрацию в разделе «Роботы и БП» и права администратора |
| Нет поля дополнительных значений | Обновление приложения и параметров действия через «Роботы и БП» → «Переустановить», затем повторное открытие его настроек |
| Ошибка в дополнительных значениях | JSON должен быть объектом в фигурных скобках; проверьте кавычки, переносы, повторяющиеся ключи и размер |
| В документе данные другой карточки | ID сделки или элемента в параметрах действия |
| В документе пустое значение | Имя ключа в JSON и маркер в шаблоне, например contract_number и {{ custom.contract_number }} |
| Файл создан, но не появился в поле или письме | Настройку следующего действия и выбранный результат «Файл» |
Ошибки генерации также ищите в разделе «Генерации». Для обращения в поддержку сохраните название шаблона, ID генерации и текст ошибки.