Шаблонизатор переменных для amoCRM

Модификаторы шаблонизатора позволяют гибко преобразовывать данные внутри вашего шаблона — изменять формат текста, чисел, дат, работать с массивами и выполнять дополнительные операции над переменными.
В этом разделе собраны все поддерживаемые модификаторы, сгруппированные по категориям:
  • Дата и время
  • Текстовые
  • Числовые
  • Массивы
  • Универсальные и дополнительные
Для каждого модификатора указан его принцип работы, краткое описание и пример использования — это поможет быстро подобрать нужную команду даже без глубокого изучения синтаксиса.

Дата и время

Модификаторы текста

Числовые модификаторы

Модификаторы для массива

Универсальные и дополнительные

dateFormat

Модификатор dateFormat форматирует дату или дату-время в читаемый или технический вид по заданному шаблону.
Используется для вывода дат в документах, договорах, счетах, уведомлениях и интеграциях, а также для представления дат словами или с указанием времени.

Простые форматы даты:
  • {{document|dateFormat('DD.MM.YYYY')}} → 07.05.2024
  • {{document|dateFormat('DD.MM.YY')}} → 07.05.24
  • {{document|dateFormat('YYYY-MM-DD')}} → 2024-05-07
Дата словами:
  • {{document|dateFormat('DD MMMM YYYY')}} → 07 мая 2024
  • {{document|dateFormat('DD MMM YYYY г.')}} → 07 мая 2024 г.
  • {{document|dateFormat('D MMMM YYYY')}} → 7 мая 2024
Дата и время:
  • {{document|dateFormat('DD.MM.YYYY HH:mm')}} → 07.05.2024 14:30
  • {{document|dateFormat('DD.MM.YYYY HH:mm:ss')}} → 07.05.2024 14:30:45
  • {{document|dateFormat('DD MMMM YYYY, HH:mm')}} → 07 мая 2024, 14:30
Дата с предлогами и текстом:
  • {{document|dateFormat('DD MMMM YYYY в HH:mm')}} → 07 мая 2024 в 14:30
  • {{document|dateFormat('«DD» MMMM YYYY г.')}} → «07» мая 2024 г.
  • {{document|dateFormat('DD MMMM YYYY года')}} → 07 мая 2024 года
Только время:
  • {{document|dateFormat('HH:mm')}} → 14:30
  • {{document|dateFormat('HH:mm:ss')}} → 14:30:45
Технические форматы для интеграций:
  • {{document|dateFormat('YYYY-MM-DDTHH:mm:ss')}} → 2024-05-07T14:30:45
  • {{document|dateFormat('YYYY/MM/DD HH:mm')}} → 2024/05/07 14:30
Практические шаблоны:
  • Договор от {{currDate|dateFormat('DD MMMM YYYY г.')}}
  • Счет № {{lead.id}} от {{currDate|dateFormat('DD.MM.YYYY')}}
  • Встреча назначена на {{lead.cf.xxx|dateFormat('DD MMMM YYYY в HH:mm')}}

dateModify

СМодификатор dateModify изменяет дату или дату-время, прибавляя или вычитая указанное количество единиц времени (дни, месяцы, годы, часы, минуты и т.д.).
Используется для расчёта сроков оплаты, дедлайнов, дат окончания договоров, напоминаний и других временных интервалов. Чаще всего применяется в связке с dateFormat для вывода результата в нужном формате.

Базовый пример (сдвиг на дни):
  • {{currDate|dateModify(1, 'days')|dateFormat('DD.MM.YYYY')}} → прибавляет 1 день к текущей дате, выводит только дату.
  • {{currDate|dateModify(-3, 'days')|dateFormat('DD.MM.YYYY')}} → вычитает 3 дня (дата три дня назад).
  • {{lead.created_at|dateModify(7, 'days')|dateFormat('DD.MM.YYYY')}} → дата через 7 дней после создания сделки (удобно для “срок оплаты до”).
Работа с месяцами и годами:
  • {{currDate|dateModify(1, 'months')|dateFormat('DD.MM.YYYY')}} → дата через 1 месяц.
  • {{currDate|dateModify(-1, 'months')|dateFormat('DD.MM.YYYY')}} → дата предыдущего месяца (например, для “период с … по …”).
  • {{currDate|dateModify(1, 'years')|dateFormat('DD.MM.YYYY')}} → дата через год (часто используется для срока действия договора).
  • {{currDate|dateModify(-5, 'years')|dateFormat('DD.MM.YYYY')}} → дата 5 лет назад (для справок и архивных документов).
Комбинация с временем:
  • {{currDate|dateModify(1, 'days')|dateFormat('DD.MM.YYYY HH:mm')}} → прибавляет 1 день, сохраняет точное время.
  • {{lead.created_at|dateModify(2, 'hours')|dateFormat('DD.MM.YYYY HH:mm')}} → прибавляет 2 часа к времени создания сделки.
  • {{currDate|dateModify(-30, 'minutes')|dateFormat('DD.MM.YYYY HH:mm')}} → вычитает 30 минут (например, “время истечения + напоминание”).
Практические сценарии в шаблонах документов:
  • Срок оплаты: 7 дней от даты счета
  • Счет № {{lead.id}} от {{currDate|dateFormat('DD.MM.YYYY')}}
  • Оплатить до: {{currDate|dateModify(7, 'days')|dateFormat('DD.MM.YYYY')}}
  • Срок действия договора: 1 год
  • Договор вступает в силу: {{currDate|dateFormat('DD MMMM YYYY г.')}}
  • Договор действует до: {{currDate|dateModify(1, 'years')|dateFormat('DD MMMM YYYY г.')}}
  • Планирование следующей встречи:
  • Встреча назначена на {{lead.cf.xxx|dateFormat('DD MMMM YYYY в HH:mm')}}
  • Контрольный звонок: {{lead.cf.xxx|dateModify(1, 'days')|dateFormat('DD MMMM YYYY в HH:mm')}} (через день после встречи).
Комбинация с пользовательскими полями:
  • {{lead.cf.xxx|dateModify(-1, 'days')|dateFormat('DD.MM.YYYY')}} → напоминание за 1 день до пользовательской даты.
  • {{lead.cf.xxx|dateModify(14, 'days')|dateFormat('DD MMMM YYYY')}} → контрольная дата через 14 дней после старта.

dateDiff

Модификатор dateDiff вычисляет разницу между двумя датами в указанных единицах (дни, месяцы, годы, часы и т.п.) и отлично работает в паре с dateModify и dateFormat для расчетов сроков, дедлайнов и интервалов.
Ниже — расширенный блок примеров для документации.
Базовый пример (разница в днях):

  • 01.06.2023, 02.06.2023 → 1 day
  • {{currDate|dateDiff(currDate|dateModify(1, 'days'), 'days')}} → 1 (разница между сегодня и завтра в днях) ​
Разница относительно даты сделки:
  • {{lead.created_at|dateDiff(currDate, 'days')}} → сколько дней прошло с момента создания сделки до текущей даты. ​
  • {{currDate|dateDiff(lead.created_at, 'days')}} → сколько дней осталось/прошло, если lead.created_at — дата дедлайна. ​
Разные единицы измерения:
  • {{lead.created_at|dateDiff(currDate, 'days')}} → разница в днях. ​
  • {{lead.created_at|dateDiff(currDate, 'months')}} → разница в месяцах (например, для расчета срока обслуживания). ​
  • {{lead.created_at|dateDiff(currDate, 'years')}} → разница в годах (можно использовать для “лет сотрудничества”). ​
  • {{lead.created_at|dateDiff(currDate, 'hours')}} → разница в часах (подходит для SLA и быстрых задач). ​
Практические сценарии в документах:

  1. Сколько дней клиент “в работе”:
Клиент в работе: {{lead.created_at|dateDiff(currDate, 'days')}} дн.
(показывает, сколько дней прошло с момента создания сделки до сегодня).​

2.Сколько дней осталось до дедлайна:
{{currDate|dateDiff(lead.cf.DEADLINE_DATE, 'days')}} дн.
если DEADLINE_DATE — пользовательское поле с датой окончания работ.​

3.Срок действия договора:
{{lead.cf.END_DATE|dateDiff(lead.cf.START_DATE, 'days')}} дней
Выводит длительность договора в днях по двум пользовательским датам.​
END_DATE - поле в котором указывается дата окончания
START_DATE - поле в котором указывается дата начала

  1. Контроль выполнения задачи:
Просрочка: {{lead.cf.DATE|dateDiff(currDate, 'days')}} дн.
Если результат положительный — дедлайн в будущем, если отрицательный — уже просрочен.​

Комбинация dateModify + dateDiff:
Проверка, укладывается ли задача в неделю:
{{lead.created_at|dateDiff(lead.created_at|dateModify(7, 'days'), 'days')}}
Вернет 7 — интервал между датой создания и датой + 7 дней.​

  • “Вычисляет разницу между датами в указанных единицах (‘days’, ‘months’, ‘years’, ‘hours’ и т.д.).”​
  • Обязательные параметры:
первая дата (переменная/поле с датой),
вторая дата,
единица измерения ('days', 'months', 'years', 'hours' и др.).​

Текстовые

fioNounCase

Модификатор fioNounCase склоняет ФИО целиком (фамилия, имя, отчество) по выбранному падежу. Используется в договорах, счетах, доверенностях, актах и официальных документах, где важно корректное грамматическое оформление данных клиента.

Базовый пример:
{{'Иванов Иван Иванович'|fioNounCase('genitive')}} → Иванова Ивана Ивановича
Склонение по падежам ФИО
Доступные падежи:
  • nominative — именительный (кто? что?)
  • genitive — родительный (кого? чего?)
  • dative — дательный (кому? чему?)
  • accusative — винительный (кого? что?)
  • instrumental — творительный (кем? чем?)
  • prepositional — предложный (о ком? о чем?)
Использование падежа:

{{ str | fioNounCase('dative') }} → склоняет ФИО в дательном падеже
Указание пола (гендера)При необходимости можно указать пол вторым параметром.
Это полезно для корректного склонения редких или неоднозначных имен.
Доступные значения:
  • male — мужской
  • female — женский

{{ str | fioNounCase('dative', 'female') }} → склонение ФИО с учетом женского рода
Использование с данными amoCRM:
{{contact.name|fioNounCase('genitive')}} → ФИО клиента в родительном падеже
{{lead.responsible.name|fioNounCase('dative')}} → ФИО ответственного лицу

Практические сценарии в документах:Для договоров:
Договор заключен с {{contact.name|fioNounCase('instrumental')}}
Для доверенностей:
Доверенность выдана {{contact.name|fioNounCase('dative')}}
Для актов и официальных формулировок:
Подписано {{company.director_fio|fioNounCase('instrumental')}}

Для предложного падежа:
Информация о {{contact.name|fioNounCase('prepositional')}}

Комбинация с другими модификаторами:
{{contact.name|fioNounCase('dative')|upper}} → склонение + верхний регистр

{{contact.name|trim|fioNounCase('genitive')}}
→ очистка строки от пробелов и склонение в родительном падеже

noun

Модификатор noun склоняет отдельное слово по выбранному падежу.
Используется для корректного оформления должностей, месяцев, ролей, статусов и других одиночных слов в документах и шаблонах.
В отличие от fioNounCase, работает не с ФИО, а с одним словом.
Склонение слов по падежам
Доступные падежи:
  • nominative — именительный (кто? что?)
  • genitive — родительный (кого? чего?)
  • dative — дательный (кому? чему?)
  • accusative — винительный (кого? что?)
  • instrumental — творительный (кем? чем?)
  • prepositional — предложный (о ком? о чем?)
Использование падежа:

{{ str | noun('dative') }} → склоняет слово в дательном падеже
Указание пола (гендера)При необходимости можно указать род вторым параметром.
Это полезно для корректного склонения ролей и профессий.
Доступные значения:
  • male — мужской
  • female — женский
{{ str | noun('dative', 'female') }} → склонение с учетом женского рода

Базовые примеры:
{{'директор'|noun('dative')}} → директору
{{'менеджер'|noun('instrumental')}} → менеджером
{{'ответственный'|noun('genitive', 'female')}} → ответственной

Практические кейсы использования
1. Формат ФИО: сначала инициалы, затем фамилияЗадача: вывести ФИО в формате И.В. Федоров
{{contact.name | initials | split(' ') | last}} {{contact.name | split(' ') | first}}
Пример:
Контакт: Федоров Иван Васильевич
Разбор:
{{contact.name | initials}} → Федоров И.В.
| split(' ') | last → берёт последний элемент: И.В.
{{contact.name | split(' ') | first}} → берёт фамилию: Федоров
Итог:И.В. Федоров

2. Склонение даты создания документа
noun применяется ко всей строке и склоняет только последнее слово, поэтому нельзя склонять дату целиком.
Решение - склонять только месяц:

{{document.createdAt | dateFormat('DD')}} {{document.createdAt | dateFormat('MMMM') | noun('dative')}} {{document.createdAt | dateFormat('YYYY')}}
Разбор:
{{document.createdAt | dateFormat('DD')}} → 14
{{document.createdAt | dateFormat('MMMM') | noun('dative')}} → февраль → февралю
{{document.createdAt | dateFormat('YYYY')}} → 2026
Результат:
14 февраля 2026

Комбинация с другими модификаторами:
{{'директор'|noun('dative')|upper}} → ДИРЕКТОРУ
{{document.createdAt | dateFormat('MMMM') | noun('genitive')}} → месяца в родительном падеже

initials

Модификатор initials преобразует ФИО в формат “Фамилия И.О.”.
Используется в договорах, счетах, актах, таблицах и любых документах, где требуется краткое представление имени.

Базовый пример:
{{'Петров Иван Фёдорович'|initials}} → Петров И.Ф.
Использование с данными amoCRM:
{{contact.name|initials}} → краткое ФИО контакта
{{lead.responsible.name|initials}} → ФИО ответственного лица
{{company.director_fio|initials}} → ФИО руководителя в сокращенном виде

Практические сценарии в документахПодпись в документе:
Подписал: {{contact.name|initials}}
Ответственное лицо:

Ответственный за контакт {{contact.responsible.name|initials}}
Табличный формат:

| Клиент | Менеджер ответственный за компанию | | {{contact.name|initials}} | {{company.responsible.name|initials}} |

Форматирование ФИО: инициалы + фамилия
Если требуется изменить порядок и вывести сначала инициалы, затем фамилию, можно использовать комбинацию модификаторов:

{{contact.name | initials | split(' ') | last}} {{contact.name | split(' ') | first}}
Пример:
Контакт: Федоров Иван Васильевич
Разбор:
{{contact.name | initials}} → Федоров И.В.
| split(' ') | last → берёт последний элемент: И.В.
{{contact.name | split(' ') | first}} → берёт фамилию: Федоров
Результат:
И.В. Федоров

Комбинация с другими модификаторами:
{{contact.name|initials|upper}} → ПЕТРОВ И.Ф.
{{contact.name|trim|initials}} → очистка строки от пробелов и сокращение ФИО
{{contact.name|initials|replace('.', '')}} → Петров ИФ (инициалы без точек)

upper

Модификатор upper преобразует строковое значение в верхний регистр.
Используется для оформления заголовков, реквизитов, названий компаний, ФИО и других элементов документа, где требуется единый формат написания.

Базовый пример:
{{'документ'|upper}} → ДОКУМЕНТ

Использование с переменными amoCRM:
{{lead.name|upper}} → название сделки заглавными буквами
{{contact.name|upper}} → ФИО контакта в верхнем регистре
{{company.name|upper}} → название компании заглавными буквами

Комбинация с другими модификаторами:
{{company.name|default('Без названия')|upper}} → если название компании не заполнено, подставляется «Без названия» и переводится в верхний регистр
{{contact.first_name|trim|upper}} → удаляет пробелы по краям имени и приводит его к верхнему регистру
{{contact.name|initials|upper}} → преобразует ФИО в инициалы и переводит результат в верхний регистр

Практические сценарии в документах:
ДОГОВОР № {{lead.id|upper}} → номер договора выводится в верхнем регистре
{{company.name|upper}} → используется в блоке реквизитов для визуального выделения названия организации

lower

Модификатор lower преобразует строковое значение в нижний регистр.
Чаще всего используется для нормализации данных, сравнений в условиях, обработки пользовательских полей и приведения значений к единому виду без учёта регистра.

Базовый пример:
{{'НИЗКИЙ'|lower}} → низкий

Использование с переменными amoCRM:
{{lead.name|lower}} → название сделки в нижнем регистре
{{contact.name|lower}} → ФИО контакта в нижнем регистре
{{company.name|lower}} → название компании в нижнем регистре

Комбинация с другими модификаторами:
{{lead.cf.CLIENT_TYPE|trim|lower}}
→ удаляет лишние пробелы и приводит значение пользовательского поля к нижнему регистру

{{contact.email|default('нет email')|lower}}
→ подставляет значение по умолчанию и приводит email к нижнему регистру

{{lead.tags|arrayByField('name')|lower}}
→ выводит теги сделки в нижнем регистре

capitalize

Модификатор capitalize делает первую букву строки заглавной, остальные символы оставляет без изменений.
Чаще всего используется для корректного оформления имён, должностей, названий и коротких текстовых значений.

Базовый пример:
{{'договор'|capitalize}} → Договор

Использование с переменными amoCRM:
{{contact.first_name|capitalize}} → имя контакта с заглавной первой буквой {{contact.last_name|capitalize}} → фамилия контакта с заглавной первой буквой {{lead.name|capitalize}} → название сделки с заглавной первой буквой

Комбинация с другими модификаторами:
{{contact.first_name|trim|capitalize}} → удаляет пробелы по краям строки и делает первую букву заглавной
{{contact.first_name|lower|capitalize}} → приводит имя к корректному виду, даже если исходное значение было введено в разном регистре
{{lead.cf.POSITION|default('должность не указана')|capitalize}} → подставляет значение по умолчанию и делает первую букву строки заглавной

Практические сценарии в документах:
Уважаемый {{contact.first_name|capitalize}}, → корректное обращение к клиенту в тексте письма или договора
Должность: {{contact.cf.POSITION|capitalize}} → аккуратное оформление должности в реквизитах
Ответственный менеджер: {{lead.responsible.name|capitalize}} → делает имя ответственого читаемым и визуально аккуратным

title

Модификатор title делает заглавной первую букву каждого слова в строке.
Используется для аккуратного оформления названий, заголовков, тем, наименований услуг и других текстов, состоящих из нескольких слов.

Базовый пример:
{{'это наш заголовок'|title}} → Это Наш Заголовок

Использование с переменными amoCRM:
{{lead.name|title}} → название сделки с заглавной буквой каждого слова {{company.name|title}} → название компании в корректном регистре {{contact.cf.POSITION|title}} → должность с заглавной буквой каждого слова

Комбинация с другими модификаторами:
{{lead.name|lower|title}} → приводит название сделки к корректному виду, даже если исходное значение введено в разном регистре
{{company.name|default('без названия')|title}} → подставляет значение по умолчанию и форматирует его как заголовок
{{lead.tags|arrayByField('name')|title}} → выводит теги сделки с заглавной буквой каждого слова

Практические сценарии в документах:
Тема договора: {{lead.name|title}} → аккуратное отображение темы договора или счёта
Наименование услуги: {{lead.cf.SERVICE_NAME|title}} → корректное оформление названия услуги
Проект: {{company.name|title}} → визуально читаемое название компании или проекта

escape

Модификатор escape выполняет HTML-экранирование специальных символов в строке.
Используется для безопасного вывода текста, который может содержать HTML-теги или специальные символы (<, >, &, кавычки и т.д.), чтобы они отображались как обычный текст, а не интерпретировались как разметка.

Базовый пример:
{{'<b>Text</b>'|escape}} → &lt;b&gt;Text&lt;/b&gt → Text

Использование с переменными amoCRM:
{{contact.name|escape}} → выводит имя контакта без интерпретации HTML-тегов
{{lead.name|escape}} → защищает название сделки от некорректного отображения, если в нём есть специальные символы
{{company.name|escape}} → безопасный вывод названия компании

Комбинация с другими модификаторами:
{{lead.name|default('Без названия')|escape}} → подставляет значение по умолчанию и экранирует специальные символы
{{contact.cf.COMMENT|trim|escape}} → удаляет лишние пробелы и экранирует HTML-символы в пользовательском поле
{{lead.cf.DESCRIPTION|escape|upper}} → экранирует текст и переводит его в верхний регистр

Практические сценарии в документах:
Комментарий клиента: {{lead.cf.COMMENT|escape}} → гарантирует корректный вывод текста, даже если клиент ввёл HTML-разметку
Описание заявки: {{lead.cf.DESCRIPTION|escape}} → предотвращает «поломку» документа из-за специальных символов

asJson

Модификатор asJson преобразует значение в JSON-строку.
Используется при передаче данных во внешние системы, API, вебхуки и интеграции, где требуется строго структурированный формат данных.

Базовый пример:
{{variable|asJson}} → {"key":"value"}

Использование с переменными amoCRM:
{{lead|asJson}} → преобразует объект сделки в JSON
{{contact|asJson}} → преобразует объект контакта в JSON
{{company|asJson}} → преобразует объект компании в JSON

Работа с пользовательскими полями:
{{lead.cf|asJson}} → JSON со всеми пользовательскими полями сделки
{{contact.cf|asJson}} → JSON со всеми пользовательскими полями контакта
{{lead.cf.CUSTOM_FIELD|asJson}} → преобразует значение конкретного пользовательского поля в JSON

Комбинация с другими модификаторами:
{{lead|asJson|escape}} → безопасный вывод JSON в документе или HTML
{{lead|asJson|replace('"', "'")}} → преобразует JSON, заменяя кавычки (например, для встраивания в атрибуты)
{{lead.cf|asJson|trim}} → убирает лишние пробелы в результирующей JSON-строке

Практические сценарии:

Тело запроса: {{lead|asJson}} → передача данных сделки в вебхук или внешний сервис
Данные клиента: {{contact|asJson}} → отправка данных контакта в стороннюю систему
Параметры заказа: {{lead.cf|asJson}} → формирование структурированных данных для API

keys

Модификатор keys возвращает список ключей объекта.
Используется при работе с массивами и объектами данных, когда нужно получить названия полей, пройтись по структуре или передать список ключей во внешние системы.

Базовый пример:
{{object|keys}} → ["id","name","price"]

Использование с переменными amoCRM:
{{lead|keys}} → список ключей объекта сделки
{{contact|keys}} → список ключей объекта контакта
{{company|keys}} → список ключей объекта компании

Работа с пользовательскими полями:
{{lead.cf|keys}} → список кодов пользовательских полей сделки
{{contact.cf|keys}} → список кодов пользовательских полей контакта
{{company.cf|keys}} → список кодов пользовательских полей компании

Комбинация с другими модификаторами:
{{lead.cf|keys|asJson}} → возвращает ключи пользовательских полей в виде JSON-массива
{{lead|keys|length}} → количество полей в объекте сделки
{{contact.cf|keys|join(', ')}} → выводит список кодов пользовательских полей через запятую

Практические сценарии:
Список доступных полей: {{lead.cf|keys|join(', ')}} → отображает все пользовательские поля сделки
Передача структуры данных: {{lead.cf|keys|asJson}} → отправка списка полей во внешний сервис
Проверка количества параметров: {{lead|keys|length}} → показывает, сколько полей содержит объект

trim

Модификатор trim удаляет пробелы и пустые символы в начале и в конце строки.
Используется для очистки пользовательских данных, корректного сравнения значений и аккуратного вывода текста в документах и интеграциях.

Базовый пример:
{{' text '|trim}} → text

Использование с переменными amoCRM:
{{contact.first_name|trim}} → удаляет лишние пробелы в имени контакта
{{lead.name|trim}} → очищает название сделки от случайных пробелов
{{company.name|trim}} → корректный вывод названия компании

Комбинация с другими модификаторами:
{{contact.first_name|trim|capitalize}} → удаляет пробелы и делает первую букву заглавной
{{lead.name|trim|upper}} → очищает строку и переводит её в верхний регистр
{{contact.cf.EMAIL|trim|lower}} → убирает пробелы и приводит email к нижнему регистру
{{lead.cf.COMMENT|trim|escape}} → очищает комментарий и экранирует спецсимволы

Практические сценарии в документах:
Контактное лицо: {{contact.first_name|trim}} {{contact.last_name|trim}} → предотвращает двойные пробелы в тексте
Email клиента: {{contact.cf.EMAIL|trim}} → корректный вывод email-адреса
Комментарий клиента: {{lead.cf.COMMENT|trim}} → аккуратный текст без лишних отступов

concat

Модификатор concat объединяет несколько строк в одну.
Используется для склейки текста, значений полей, формирования ФИО, адресов, номеров документов и любых составных строк в шаблонах.

Базовый пример:
{{'Hello, ' 'World!'|concat}} → Hello, World!

Объединение переменных:
{{contact.first_name ' ' contact.last_name|concat}} → Иван Иванов
{{lead.name ' №' lead.id|concat}} → Сделка №12345

Использование с пользовательскими полями:
{{lead.cf.SERIES ' ' lead.cf.NUMBER|concat}} → AB 123456
{{company.city ', ' company.address|concat}} → Москва, ул. Ленина, 10

Комбинация с форматированием:
{{contact.last_name ' ' contact.first_name ' ' contact.middle_name|concat|trim}} → Иванов Иван Иванович
{{'Договор №' lead.id ' от ' currDate|concat|dateFormat('DD.MM.YYYY')}} → Договор №123 от 07.05.2024
{{'Телефон: ' contact.cf.PHONE|concat|replace(' ', '')}} → Телефон: +79991234567

Практические сценарии в документах:
Формирование ФИО:
{{contact.last_name ' ' contact.first_name|concat}}
Номер и дата документа:
{{'Счет №' lead.id ' от ' currDate|concat|dateFormat('DD MMMM YYYY г.')}}
Полный адрес:
{{company.index ', ' company.city ', ' company.address|concat}}
Тема письма или заголовок документа:
{{'Коммерческое предложение для ' company.name|concat}}

split

Модификатор split разделяет строку на массив по указанному разделителю и позволяет работать с отдельными частями строки. Чаще всего используется для обработки списков, составных значений, телефонов, email-адресов и технических строк.

Базовый пример:
{{'one,two,three'|split(',')}} → ['one', 'two', 'three']

Получение конкретного элемента:
{{'one,two,three'|split(',')|first}} → one
{{'one,two,three'|split(',')|last}} → three
{{'one,two,three'|split(',')|at(1)}} → two

Использование с данными amoCRM:
{{contact.cf.TAGS|split(',')}} → преобразует строку тегов в массив
{{lead.cf.PHONES|split(';')|first}} → первый номер телефона из списка
{{contact.cf.EMAILS|split(',')|length}} → количество email-адресов
Комбинация с текстовыми модификаторами:
{{contact.cf.EMAILS|split(',')|first|trim|lower}} → первый email без пробелов и в нижнем регистре
Практические сценарии:

Основной email: {{contact.cf.EMAILS|split(',')|first}}
Дополнительный телефон: {{contact.cf.PHONES|split(';')|at(1)}}

replace

Модификатор replace заменяет часть строки на другую.
Используется для исправления формата данных, замены слов, очистки значений и подготовки текста к выводу в документах.

Базовый пример:
{{'fooBar'|replace('Bar', 'Baz')}} → fooBaz

Очистка и форматирование данных:
{{'+7 (999) 123-45-67'|replace(' ', '')}} → +7(999)123-45-67
{{'+7(999)123-45-67'|replace('(', '')|replace(')', '')|replace('-', '')}} → +79991234567

Использование с данными amoCRM:
{{contact.cf.PHONE|replace(' ', '')}} → номер телефона без пробелов
{{lead.name|replace('"', '')}} → удаляет кавычки из названия сделки
{{company.name|replace('&', 'и')}} → корректная замена спецсимволов

Комбинация с другими модификаторами:
{{contact.cf.EMAIL|trim|lower|replace(' ', '')}} → чистый email без пробелов
{{lead.name|replace('ООО', '')|trim}} → убирает организационно-правовую форму из названия
{{contact.first_name|replace('ё', 'е')|capitalize}} → замена символов + форматирование

Практические сценарии в документах:
Телефон клиента: {{contact.cf.PHONE|replace(' ', '')}}
Название компании: {{company.name|replace('"', '')}}
Комментарий: {{lead.cf.COMMENT|replace('\n', ' ')}} → убирает переносы строк

translit

Модификатор translit транслитерирует кириллицу в латиницу.
Используется для формирования URL, файлов, идентификаторов, логинов и технических значений, где кириллица недопустима.

Базовый пример:
{{'Привет мир!'|translit}} → Privet mir!

Использование с данными amoCRM:
{{company.name|translit}} → транслитерация названия компании
{{contact.last_name|translit}} → фамилия латиницей

Комбинация с другими модификаторами:
{{company.name|translit|lower|replace(' ', '-')}} → seo-friendly строка
{{lead.name|translit|upper}} → заголовок латиницей в верхнем регистре

Практические сценарии:Имя файла:

{{'dogovor_' lead.id '_' company.name|concat|translit|lower}} → dogovor_123_ooo_roma
URL:
{{company.name|translit|replace(' ', '-')}} → ooo-roma

Важно:
работает только с кириллицей
не переводит смысл, а заменяет символы

padLeft

Модификатор padLeft добавляет символы слева к строке до нужной длины.
Чаще всего используется для форматирования номеров, кодов, счетов и технических идентификаторов.

Базовый пример:
{{'1'|padLeft('0', 3)}} → 001

Использование с числами и идентификаторами:
{{lead.id|padLeft('0', 6)}} → 000123
{{invoice.number|padLeft('0', 5)}} → 00042

Практические сценарии:
Номер счета:
Счет № {{lead.id|padLeft('0', 6)}}
Код клиента:
Клиент ID: {{contact.id|padLeft('0', 8)}}

padRight

Модификатор padRight добавляет символы справа к строке до заданной длины.
Полезен для табличных документов и выравнивания значений.

Базовый пример:
{{'1'|padRight('0', 3)}} → 100

Примеры использования:
{{'ABC'|padRight('_', 6)}} → ABC___
{{contact.code|padRight(' ', 10)}} → выравнивание значений

Практический сценарий:Табличный вывод:
Код: {{product.code|padRight(' ', 8)}} | Цена: {{product.price}}

urlEncode

Модификатор urlEncode кодирует строку для безопасного использования в URL.
Используется при формировании ссылок, GET-параметров и интеграций с внешними сервисами.

Базовый пример:
{{'a/z'|urlEncode}} → a%2Fz

Использование с данными amoCRM:
{{contact.email|urlEncode}} → email в параметрах URL
{{lead.name|urlEncode}} → безопасное название сделки

Практические сценарии:Формирование ссылки:
https://example.com/?email={{contact.cf.EMAIL|urlEncode}}

Поиск по имени:
https://site.ru/search?q={{company.name|urlEncode}}

Комбинация с другими модификаторами:
{{company.name|translit|lower|replace(' ', '-')|urlEncode}} → корректный URL-идентификатор

link

Модификатор link преобразует текст в HTML-гиперссылку. Используется для вставки кликабельных ссылок в документы, письма, коммерческие предложения и инструкции.

Базовый пример:
{{'Ссылка'|link('https://tilda.ru')}} → <a href="https://tilda.ru">Ссылка</a>

Использование с переменными:
{{company.name|link(company.website)}} → название компании как ссылка на сайт
{{'Перейти в сделку'|link(lead.url)}} → кликабельная ссылка на сделку

Комбинация с другими модификаторами:
{{company.website|link(company.website)|escape}} → безопасный вывод ссылки
{{'Скачать документ'|link(lead.cf.FILE_URL|urlEncode)}} → ссылка на файл

Практические сценарии в документах:
Сайт компании:
Сайт: {{company.name|link(company.website)}}
Ссылка на оплату:
Оплатить счет: {{'Перейти к оплате'|link(lead.cf.PAYMENT_URL)}}
Ссылка в инструкции:
Подробнее: {{'Читать инструкцию'|link('https://example.com/help')}}

striptags

Модификатор striptags удаляет HTML-теги из строки, оставляя только текст.
Используется для очистки комментариев, описаний и пользовательского ввода перед выводом в документах.

Базовый пример:
{{'<b>Hello</b>'|striptags}} → Hello

Использование с данными amoCRM:
{{lead.note.text|striptags}} → комментарий без HTML-оформления
{{contact.cf.COMMENT|striptags}} → чистый текст из пользовательского поля

Комбинация с другими модификаторами:
{{lead.note.text|striptags|trim}} → удаляет HTML и лишние пробелы
{{lead.note.text|striptags|escape}} → полностью безопасный текст
{{lead.cf.DESCRIPTION|striptags|replace('\n', ' ')}} → текст в одну строку

Практические сценарии в документах:Комментарий клиента:
Комментарий: {{lead.note.text|striptags}}
Описание задачи:
Описание: {{lead.cf.DESCRIPTION|striptags}}

Модификаторы чисел

default

Модификатор default задаёт значение по умолчанию, если переменная не определена, пуста или не определена.
Используется для защиты шаблонов от пустых полей и ошибок при выводе данных.

Базовый синтаксис:
{{ value | default('значение') }}

Базовый пример:
{{ undefined | default('Привет') }} → Привет
{{ '' | default('Не указано') }} → Не указано

Использование с данными amoCRM:
{{contact.phone | default('Телефон не указан')}}
{{company.name | default('Компания не указана')}}
{{lead.cf.COMMENT | default('-')}}

Комбинация с другими модификаторами:
{{contact.email | default('нет email') | lower}}
→ Если email не указан, подставляет текст и приводит его к нижнему регистру.
Пример: undefined → нет email

{{lead.cf.AMOUNT | default(0) | pretty}}
→ Если сумма не задана, подставляет 0 и форматирует число для отображения.
Пример: значение → 0
Важно:
применяется до остальных модификаторов
защищает шаблон от ошибок
рекомендуется использовать для пользовательских полей

inWords

Модификатор inWords переводит число в строку прописью без указания валюты.
Используется для количественных значений, сроков, процентов, показателей, единиц измерения и любых чисел, которые нужно вывести текстом.

Базовый синтаксис:
{{ number | inWords }}

Базовый пример:
{{ 123 | inWords }} → сто двадцать три
{{ 12.44 | inWords }} → двенадцать целых сорок четыре сотых

Маски вывода для inWords Модификатор поддерживает маску форматирования, которая позволяет гибко управлять выводом целой и дробной части.

Значения маски:
  • W — целая часть прописью
  • w — целая часть цифрами
  • D — дробная часть прописью
  • d — дробная часть цифрами
  • C — название мажорной единицы
  • c — название минорной единицы
Для inWords значения C и c используются как текстовые обозначения (например: целыхсотых).
Примеры использования масок:

{{ 12.44 | inWords('', 'W. D') }} → двенадцать. сорок четыре
{{ 12.44 | inWords('', 'W C, D c') }} → двенадцать целых, сорок четыре сотых
{{ 12.44 | inWords('', 'W C, d c') }} → двенадцать целых, 44 сотых
{{ 12.44 | inWords('', 'W (w), D (d)') }} → двенадцать (12), сорок четыре (44)

Использование с данными amoCRM:
{{lead.cf.QUANTITY | inWords}} → количество прописью
{{lead.cf.DAYS | inWords}} → срок в днях прописью
{{lead.cf.PERCENT | inWords}} → процентное значение прописью

Практические сценарии в документах
Срок выполнения:
Срок выполнения: {{lead.cf.DAYS | inWords}} дней
Количество единиц:
Количество: {{lead.cf.QUANTITY | inWords}}
Процент:
Скидка: {{lead.cf.DISCOUNT | inWords}} процентов
Дробные значения:
Коэффициент: {{lead.cf.RATE | inWords('', 'W целых D сотых')}}

Комбинация с другими модификаторами:
{{lead.cf.QUANTITY | round(2) | inWords}} → округление +число прописью
{{lead.cf.VALUE | pretty('',2) | inWords}} → форматирование +число прописью

inWordsCurrency

Модификатор inWordsCurrency переводит число в строку прописью с указанием валюты.
Используется в счетах, договорах, актах, платежных документах и любых финансовых шаблонах, где требуется сумма цифрами и словами.

Базовый синтаксис:
{{ number | inWordsCurrency('CODE') }}
  • number — числовое значение (обычно пользовательское поле сделки)
  • CODE — код валюты
Поддерживаемые валюты (примеры):
доллар — {{XXX | inWordsCurrency('USD')}}
гривны — {{XXX | inWordsCurrency('UAH')}}
тенге — {{XXX | inWordsCurrency('KZT')}}
евро — {{XXX | inWordsCurrency('EUR')}}
белорусский рубль — {{XXX | inWordsCurrency('BYN')}}
Где XXX — это ID пользовательского поля, например lead.cf.XXX.
Пример результата:

Значение поля: 285.99
{{lead.cf.XXX | inWordsCurrency('USD')}} → двести восемьдесят пять долларов девяносто девять центов
{{lead.cf.XXX | inWordsCurrency('UAH')}} → двести восемьдесят пять гривен девяносто девять копеек
{{lead.cf.XXX | inWordsCurrency('KZT')}} → двести восемьдесят пять тенге девяносто девять тиынов
{{lead.cf.XXX | inWordsCurrency('EUR')}} → двести восемьдесят пять евро девяносто девять евроцентов
{{lead.cf.XXX | inWordsCurrency('BYN')}} → двести восемьдесят пять белорусских рублей девяносто девять копеек

Использование в условиях (выбор валюты)Пример, когда валюта хранится в отдельном поле и нужно вывести сумму прописью в зависимости от значения:

{% for item in lead.cf.2823147 | split(', ') %} {% if item == 'USD' %} {{lead.cf.2823145|inWordsCurrency('USD')}} {% endif %} {% if item == 'RUB' %} {{lead.cf.2823145|inWordsCurrency('RUB')}} {% endif %} {% if item == 'BYN' %} {{lead.cf.2823145|inWordsCurrency('BYN')}} {% endif %} {% if item == 'UAH' %} {{lead.cf.2823145|inWordsCurrency('UAH')}} {% endif %} {% if item == 'KZT' %} {{lead.cf.2823145|inWordsCurrency('KZT')}} {% endif %} {% endfor %}

Разделение числа и прописи валюты

Если нужно разбить число на разряды, а валюту вывести прописью отдельно, используйте два выражения подряд:

{{lead.cf.xxx | pretty('',2) }} {{lead.cf.xxx | inWordsCurrency('RUB', 'C')}}
Результат: 1 002.00 рубля

inWordsCurrency поддерживает маску форматирования, которая позволяет гибко управлять выводом.

  • Значения маски:W — целая часть прописью
  • w — целая часть цифрами
  • D — дробная часть прописью
  • d — дробная часть цифрами
  • C — название мажорной единицы (рубль, доллар и т.д.)
  • c — название минорной единицы (копейка, цент и т.д.)

Примеры масок (inWordsCurrency):
{{ 12.44 | inWordsCurrency('RUB', 'W C, D c') }} → двенадцать рублей, сорок четыре копейки
{{ 12.44 | inWordsCurrency('RUB', 'W C, d c') }} → двенадцать рублей, 44 копейки
{{ 12.44 | inWordsCurrency('RUB', 'W (w) C, D (d) c') }} → двенадцать (12) рублей, сорок четыре (44) копейки

Поведение по умолчанию
Если маска не указана, модификатор выводит сумму полностью прописью с валютой и дробной частью - стандартный формат для финансовых документов.

  • Важно:работает с числовыми значениями
  • идеально подходит для счетов и договоров
  • маска позволяет полностью контролировать формат вывода
  • можно комбинировать с pretty, round, numberFormat

inWordsOrdinal

Модификатор inWordsOrdinal переводит число в порядковое числительное прописью (первый, второй, третий и т.д.). Используется для нумерации пунктов, этапов, очередности, месяцев, дней, годов и других порядковых значений в документах.

Базовый синтаксис:
{{ number | inWordsOrdinal }}

Базовые примеры:
{{ 1 | inWordsOrdinal }} → первый
{{ 2 | inWordsOrdinal }} → второй
{{ 3 | inWordsOrdinal }} → третий
{{ 21 | inWordsOrdinal }} → двадцать первый

Использование с данными amoCRM:
{{lead.cf.STAGE_ORDER | inWordsOrdinal}} → порядковый номер этапа прописью
{{lead.cf.MONTH_NUMBER | inWordsOrdinal}} → номер месяца прописью
{{lead.cf.ATTEMPT | inWordsOrdinal}} → номер попытки прописью

Практические сценарии в документах
Пункт договора:
{{lead.cf.POINT | inWordsOrdinal}} пункт договора
Результат:
пятый пункт договора

Этап работ:
{{lead.cf.STEP | inWordsOrdinal}} этап выполнения работ
Очередность платежа:
{{lead.cf.PAYMENT_ORDER | inWordsOrdinal}} платеж
Дата в текстовом виде:
{{lead.cf.DAY | inWordsOrdinal}} день месяца

Комбинация с другими модификаторами:
{{lead.cf.STEP | inWordsOrdinal | capitalize}} → Первый
Подходит для начала предложения, заголовков и официальных формулировок, где слово должно начинаться с заглавной буквы.
{{lead.cf.POINT | inWordsOrdinal | upper}} → ПЕРВЫЙ
Используется для визуального акцента — в: чек-листах,предупреждениях,таблицах,
структурированных документах.
  • {{lead.cf.STEP | inWordsOrdinal | noun('genitive')} → добавляет порядковое числительное в именительном падеже (первый, второй, третий).

abs

Модификатор abs возвращает абсолютное значение числа (убирает знак минус).

Базовый пример:
{{ -1 | abs }} → 1
{{ -25.4 | abs }} → 25.4

Использование в документах:
{{lead.cf.BALANCE | abs}} → отображение значения без знака
{{lead.cf.DELTA | abs | inWords}} → отклонение прописью

Практический сценарий:
Просрочка в днях
  • {{lead.cf.NUMBER_1 - lead.cf.NUMBER_2 | abs}} всегда выводит положительное число, при вычеслении разницы между двумя числами

numberFormat

Модификатор numberFormat форматирует число с заданной точностью и разделителем дробной части. Используется для аккуратного вывода чисел, процентов и сумм без разбиения на разряды.

Базовый синтаксис:
{{number|numberFormat(количество_знаков_после_запятой, дробный_разделитель)}}
где
  • количество_знаков_после_запятой — сколько цифр выводить после запятой
  • дробный_разделитель — символ дробной части (. или ,), необязательный параметр

Базовые примеры:

{{ 12.35932 | numberFormat }} → 12
{{ 12.35932 | numberFormat(2) }} → 12.36
{{ 12.35932 | numberFormat(2, ',') }} → 12,36

Использование с данными amoCRM:
{{lead.cf.RATE | numberFormat(2)}} → значение с двумя знаками после запятой
{{lead.cf.PERCENT | numberFormat(1, ',')}} → процент с запятой

Комбинация с другими модификаторами:
{{lead.cf.VALUE | default(0) | numberFormat(2)}} → Подставляет 0, если значение отсутствует, и форматирует число с 2 знаками после запятой.
Пример: значение → 0.00
{{lead.cf.PRICE | numberFormat(2) | inWords}} → Форматирует число до 2 знаков и переводит его в строковое представление.
Пример: 15.5 → пятнадцать целых пять десятых

Важно:
  • не добавляет разделители тысяч (для этого используйте pretty)
  • изменяет только формат вывода
  • удобно использовать для процентов и коэффициентов

round

Модификатор round округляет число по математическим правилам до указанного количества знаков после запятой.

Базовый синтаксис:
{{ number | round(2) }}
→ Число в скобках (2) указывает, до скольких знаков после запятой нужно округлить значение.
Примеры:
{{12.547634 | round(2)}} → 12.55 (округление до двух знаков после запятой)
{{12.547634 | round(0)}} → 13 (округление до целого числа)

Использование в документах:
{{lead.cf.AMOUNT | round(2)}}
{{lead.cf.TAX | round(0)}}

Комбинация:
{{lead.cf.AMOUNT | round(2) | pretty(' ')}} → Округляет число до 2 знаков после запятой и форматирует его с разделением разрядов.
Пример: 12345.6789 → 12 345.68
{{lead.cf.VALUE | round(2) | inWordsCurrency('RUB')}} → Округляет число до 2 знаков и выводит сумму прописью с валютой.
  • Пример: 12.4 → двенадцать рублей сорок копеек

floor

Модификатор floor округляет число в меньшую сторону (отбрасывает дробную часть).

Базовый пример:
{{ 12.9 | floor }} → 12
{{ 12.1 | floor }} → 12

Использование:
{{lead.cf.QUANTITY | floor}} → целое количество
{{lead.cf.DAYS | floor}} → количество дней без округления вверх

Практический сценарий:
  • Использовано: {{lead.cf.HOURS | floor}} часов

ceil

Модификатор ceil округляет число в большую сторону.

Базовый пример:
{{ 12.1 | ceil }} → 13
{{ 12.9 | ceil }} → 13

Использование:
{{lead.cf.PAGES | ceil}} → количество страниц
{{lead.cf.DAYS | ceil}} → срок с округлением в большую сторону

Практический сценарий:Минимальное количество дней:
Срок: {{lead.cf.DURATION | ceil}} дней

locale

Модификатор locale форматирует число в соответствии с локалью (разделители тысяч и дробной части). Используется для вывода чисел в привычном для пользователя виде без ручной настройки форматирования.

Базовый пример:
{{ 1234.56 | locale }} → 1 234,56

Использование с данными amoCRM:
{{lead.cf.AMOUNT | locale}} → сумма с локальными разделителями
{{lead.cf.PRICE | locale}} → цена в локальном формате

Сравнение с другими модификаторами:
{{1234567.89 | numberFormat(2)}} → 1234567.89
{{1234567.89 | pretty(' ', 2)}} → 1 234 567.89
{{1234567.89 | locale}} → 1 234 567,89

Комбинация с другими модификаторами:
{{lead.cf.AMOUNT | round(2) | locale}} → Округляет значение до 2 знаков после запятой и выводит число в локальном формате (с пробелами между разрядами и запятой в дробной части).
Пример: 1234.567 → 1 234,57
{{lead.cf.VALUE | default(0) | locale}} → Если значение не задано, подставляет 0 и выводит его в локальном числовом формате.
Пример: значение → 0

isEven

Модификатор isEven проверяет, является ли число чётным. Возвращает логическое значение и чаще всего используется в условиях (if) внутри шаблонов.

Базовый пример:
{{ 2 | isEven }} → true
{{ 3 | isEven }} → false

Использование в условиях:

{% if lead.cf.COUNT | isEven %}
Количество чётное
{% else %}
Количество нечётное
{% endif %}

Практические сценарии:
Чередование строк:

{% if loop.index | isEven %}
Чётная строка {% else %}
Нечётная строка
{% endif %}

Проверка количества:
{% if lead.cf.ITEMS | isEven %}
Количество позиций чётное
{% endif %}

Комбинация с другими модификаторами:
{{lead.cf.COUNT | abs | isEven}} → Преобразует число в положительное и проверяет, является ли оно чётным.
Пример: -4 → true
{{lead.cf.VALUE | floor | isEven}} → Округляет число вниз до целого и проверяет его на чётность.
Пример: 3 → false
Важно:
работает только с целыми числами
возвращает true или false
используется преимущественно в логике шаблонов(циклах), а не для вывода

pretty

Модификатор pretty форматирует числовое значение для удобного визуального отображения: разбивает число на разряды, задаёт разделитель тысяч и управляет количеством знаков после запятой. Используется для корректного и наглядного вывода сумм, цен и финансовых значений в документах.

Базовый синтаксис

{{ number | pretty('разделитель_тысяч', количество_знаков_после_запятой) }}
  • первый параметр — символ разделения тысяч
  • второй параметр — количество знаков после запятой (необязательный)
Наглядные примеры

Разбиение на тысячи
{{ 2000 | pretty(' ') }} → 2 000
Используется для читаемого отображения сумм без дробной части.

Разбиение + фиксированная дробная часть
{{ 2000 | pretty(' ', 2) }} → 2 000.00

Подходит для финансовых документов, где важен формат 00 после запятой.

Использование запятой как разделителя
{{ 2000 | pretty(',', 3) }} → 2,000.000
Часто применяется в англоязычных форматах или при экспорте данных.

Только дробная часть (без разделителя тысяч)
{{ 2 | pretty('', 2) }} → 2.00
Полезно, когда нужно зафиксировать количество знаков после запятой без форматирования тысяч.

Примеры с переменными amoCRM
{{lead.cf.AMOUNT | pretty(' ', 2)}} → 125 430.50
{{lead.cf.PRICE | pretty('', 2)}} → 99.99

Использование вместе с валютой, чтобы:
разбить число на разряды и добавить валюту прописью:

в таком случае нужно использовать нужно использовать два выражения подряд:
{{lead.cf.xxx | pretty('', 2)}} {{lead.cf.xxx | inWordsCurrency('RUB', 'C')}}
→ 1 002.00 рубля
Разбор:
pretty('', 2) — форматирует число 1002 как 1 002.00
inWordsCurrency('RUB', 'C') — добавляет название валюты
используется дважды одно и то же поле — это нормально и правильно

Сравнение с другими модификаторами:
{{1234567.89 | numberFormat(2)}} → 1234567.89
{{1234567.89 | pretty(' ', 2)}} → 1 234 567.89
{{1234567.89 | locale}} → 1 234 567,89

Массивы

first

Модификатор first возвращает первый элемент массива.

Базовый пример:
{{[0, 1, 2] | first}} → 0

Использование:
{{'one,two,three' | split(',') | first}} → one

Практический сценарий:Основной email:

{{contact.cf.EMAILS | split(',') | first}}

last

Модификатор last возвращает последний элемент массива.

Базовый пример:
{{[0, 1, 2] | last}} → 2

Использование:
{{'one,two,three' | split(',') | last}} → three

Практический сценарий:
Последний телефон:
{{contact.cf.PHONES | split(';') | last}}

at

Модификатор at возвращает элемент массива по индексу (нумерация с нуля).
Базовый пример:
{{[0, 1, 2] | at(1)}} → 1

Использование:
{{'one,two,three' | split(',') | at(1)}} → two

Практический сценарий:
Второй email:
{{contact.cf.EMAILS | split(',') | at(1)}}

length

Модификатор length возвращает количество элементов массива.

Базовый пример:
{{[0, 1, 2] | length}} → 3

Использование:
{{'one,two,three' | split(',') | length}} → 3
Практический сценарий:
Количество товаров:
{{lead.cf.PRODUCTS | split(',') | length}}

slice

Модификатор slice возвращает часть массива (срез).

Базовый синтаксис:
{{ array | slice(start, length) }}

Базовый пример:
{{[0,1,2,3,4,5] | slice(1, 3)}} → [1, 2, 3]
Использование:
{{'one,two,three,four' | split(',') | slice(0, 2)}} → one, two

reverse

Модификатор reverse меняет порядок элементов массива на обратный.

Базовый пример:
{{[0, 1, 2] | reverse}} → [2, 1, 0]

Использование:
{{'one,two,three' | split(',') | reverse}} → three, two, one

sort

Модификатор sort сортирует массив по возрастанию.

Базовый пример:
{{[0, 4, 2, 3, 1] | sort}} → [0, 1, 2, 3, 4]

Использование:
{{'b,c,a' | split(',') | sort}} → a, b, c

merge

Модификатор merge объединяет два массива в один.

Базовый пример:
{{[0, 1, 2] | merge([3, 4])}} → [0, 1, 2, 3, 4]

Использование:
{{lead.cf.ХХХ | split(',') | merge(['important','vip'])}}

Универсальные и дополнительны

isEmpty

Модификатор isEmpty проверяет, является ли значение пустым.

Возвращает:
  • true — если значение пустое
  • false — если значение заполнено
Пустыми считаются:
  • null
  • undefined
  • пустая строка ''
  • пустой массив []
Базовые примеры:

{{ '' | isEmpty }} → true {{ 'text' | isEmpty }} → false

Использование с массивами:
{{ [] | isEmpty }} → true {{ [1,2,3] | isEmpty }} → false

Практический сценарий:Проверка заполненности поля:
{% if contact.phone | isEmpty %} Телефон не указан {% endif %}

size

Модификатор size задаёт размер подставляемого изображения и используется, когда картинка хранится в поле типа «Файл» (например, в сделке) или как переменная "Изображение". Он позволяет автоматически подтянуть изображение из поля(переменной) и отрисовать его в документе нужного размера.​

Базовый пример:

{{ lead.cf.XXX | size(100) }} → вставит изображение из поля lead.cf.XXX с размером 100 px​.
Пример:
{{ lead.cf.XXX | size(100) }}
Где XXX — ID кастомного поля, 100 — размер в пикселях.​
{{img.imageVar| size(50) }}
Где imageVar — название переменной, 50 — размер в пикселях.​
Важно:
Работает только с полями и переменными, где действительно загружено изображение.
Параметр size() задаётся в пикселях и влияет на отображение картинки в документе.​
Тех.поддержка Telegram