# Дані для підстановки

В автопідстановку можна вставити три види даних: дані самого контакту, його змінні та глобальні змінні бота.

## Дані контакту

Пишуться без знака `$`: `{{ first_name }}`, `{{ phone }}`.

| Запис | Що підставиться |
|---|---|
| `{{ name }}` | Ім'я контакту повністю — як у месенджері або як його зберіг бот |
| `{{ first_name }}` | Перше слово імені |
| `{{ last_name }}` | Друге слово імені |
| `{{ phone }}` | Телефон |
| `{{ email }}` | Пошта |
| `{{ address }}` | Адреса |
| `{{ username }}` | Ім'я користувача в месенджері (username) |
| `{{ id }}` | Номер контакту у Watbot |
| `{{ bot_id }}` | Номер бота |
| `{{ created_at }}` | Коли контакт уперше написав боту, у вигляді `2026-10-02 14:30:00` (UTC) |
| `{{ start_message }}` | Перше повідомлення, яке контакт надіслав боту |
| `{{ telegram_id }}` | ID користувача в Telegram |
| `{{ max_id }}` | ID користувача в MAX |
| `{{ amocrm_lead_id }}`, `{{ amocrm_contact_id }}` | ID угоди та контакту в amoCRM |
| `{{ bitrix_lead_id }}`, `{{ bitrix_deal_id }}`, `{{ bitrix_contact_id }}` | ID ліда, угоди та контакту в Бітрікс24 |

Якщо в контакту таких даних немає — наприклад, телефон не вказано, — вставку буде замінено порожнім місцем.

> [!NOTE]
> Окремі блоки мають власні дані. Наприклад, у тексті сповіщення про нового реферала доступні `{{ name }}` (ім'я запрошеного) і `{{ level }}` (лінія), у блоці «Розподіл за групами» — `{{ name_list }}` і `{{ group_number }}`. Вони описані в налаштуваннях цих блоків.

## Змінні контакту

Змінні зберігають відповіді контакту й усе, що бот зберіг під час сценарію. Пишуться зі знаком `$` перед назвою:

```
Ви обрали місто {{ $місто }}.
```

Якщо в контакту немає такої змінної, вставку буде замінено порожнім місцем.

### Якщо в назві змінної є пробіли

Після знака `$` бот читає назву лише до першого пробілу. Тому змінну, у назві якої є пробіл, через `$` записати не можна: бот не зрозуміє, де назва закінчується.

Для таких назв є функція `var`. Назву пишуть у лапках — точно так, як змінна називається в боті:

```
{{ var("Ім'я клієнта") }}, дякуємо за заявку!
```

Як записати:

1. Скопіюйте назву змінної з бота — великі й малі літери, пробіли та знаки мають збігатися.
2. Візьміть назву в лапки: `"Ім'я клієнта"`.
3. Обгорніть у `var( )`: `{{ var("Ім'я клієнта") }}`.

| Змінна в боті | Як вставити |
|---|---|
| `місто` | `{{ $місто }}` |
| `Ім'я клієнта` | `{{ var("Ім'я клієнта") }}` |
| `Дата запису` | `{{ var("Дата запису") }}` |
| `Сума замовлення, грн` | `{{ var("Сума замовлення, грн") }}` |

`var` працює і у [виразах](https://support.watbot.org/uk/chatbots/templates/expressions), як будь-яке інше значення:

```
{{ upper(var("Ім'я клієнта")) }}, до сплати {{ var("Сума замовлення, грн") * 0.9 }} грн
```

> [!TIP]
> Найпростіше називати змінні без пробілів: `клієнт`, `дата_запису`. Тоді вистачить короткого запису: `{{ $клієнт }}`.

> [!NOTE]
> Якщо у ваших сценаріях назви з пробілами вже вставлено через `$` без виразів, такі вставки й надалі працюватимуть. У нових текстах використовуйте `var`.

## Глобальні змінні

Глобальні змінні задають у налаштуваннях бота, і вони однакові для всіх контактів: курс валюти, адреса офісу, посилання на оплату. Пишуться без `$`, точно так, як названі в налаштуваннях:

```
Наша адреса: {{ адреса_офісу }}
```

### Якщо в назві глобальної змінної є пробіли або дужки

Використовуйте функцію `global` — назву в лапках, точно як у налаштуваннях бота:

```
Курс на сьогодні: {{ global("Курс (USD)") }} грн
```

Усередині виразів глобальну змінну завжди читають через `global`, навіть якщо в назві немає пробілів:

```
Разом у доларах: {{ round($сума / global("Курс (USD)"), 2) }}
```

Якщо в даних контакту і глобальної змінної однакова назва, підставляться дані контакту.

> [!WARNING]
> Значення глобальної змінної виводиться як є, автопідстановки всередині значення не розкриваються. Якщо у значенні написано `Вітаємо, {{ $Імя }}`, контакт побачить саме цей текст. Пишіть такий текст безпосередньо в блоці.

## Значення — це текст

Усі дані та змінні зберігаються як текст. У виразах числа в тексті вважаються числами: якщо в `$кількість` записано `3`, вираз `{{ $кількість * 2 }}` дасть `6`. Текст, не схожий на число, порахувати не можна — таку вставку буде замінено порожнім місцем, а причина з'явиться в попередньому перегляді.
