# Як налаштувати відображення полів у картці клієнта?

> **Два входи до тих самих налаштувань видимості:** (1) сторінка [Поля клієнтів](/uk/settings/how-to/configure-client-fields.md) — там же визначення полів і **одна** кнопка «Зберегти» в заголовку на все; (2) цей пункт меню **«Редактор полів у картці клієнта»** (`/settings-page/op-settings/client-fields`) — лише блок видимості (перемикачі + JSON), збереження **верхньою кнопкою «Зберегти»** в макеті op-settings. На сторінці op-settings є посилання повернутися до **Полів клієнтів**, якщо потрібно змінити схему полів.

Налаштування відображення полів дозволяє обрати, **які поля показувати** операторам у картці клієнта та в таблиці клієнтів. Кастомні поля мають бути [визначені](/uk/settings/how-to/configure-client-fields.md), щоб з’явитися в списку видимості.

## Коли знадобиться

- Потрібно приховати або показати стандартні поля (телефон, ім’я, тип клієнта тощо).
- Потрібно показати кастомні поля, створені в [«Поля клієнтів»](/uk/settings/how-to/configure-client-fields.md).
- Треба змінити порядок відображення полів у картці клієнта.

## Що важливо знати

- Видимість можна змінити і на [Поля клієнтів](/uk/settings/how-to/configure-client-fields.md) (зручно, коли редагуєте поля й видимість разом). Ця сторінка потрібна, коли змінюєте **лише** видимість або звикли до меню op-settings. **Кастомні поля** мають існувати в конфігурації, інакше їх не буде серед перемикачів.
- **Стандартні поля** — нативні колонки OpClients: `phone`, `bot_id`, `bot_name`, `fullName` (від `full_name`). Їх можна лише показувати або приховувати. Поля `clientType`, `whiteLabel` у прикладі — можуть бути кастомними в `extra_data` або застарілими.
- **Формат JSON** — кожен ключ = назва поля, значення `true` = показувати, `false` = приховувати. Порядок ключів визначає порядок відображення.

## Перед початком

- [x] Ви увійшли в систему з правами адміністратора або супервайзера.
- [x] У вас є права на збереження налаштувань операторської панелі (`canSave` для секції settings).
- [x] Для кастомних полів: вони вже додані в [«Поля клієнтів»](/uk/settings/how-to/configure-client-fields.md) (або ви керуєте видимістю лише стандартних полів).

## Покрокова інструкція

### 1. Відкрити редактор полів картки клієнта

1. Перейдіть до модуля **Налаштування** через меню або за адресою `/settings-page`.
2. У бічному меню знайдіть розділ **«Налаштування»** (операторська панель) та розгорніть його.
3. Натисніть на пункт **«Редактор полів у картці клієнта»** (`/settings-page/op-settings/client-fields`).

### 2. Зрозуміти формат JSON

Конфігурація — це JSON-об’єкт. Ключ = назва поля, значення = показувати (`true`) чи приховувати (`false`):

```json
{
  "phone": true,
  "bot_id": true,
  "bot_name": true,
  "fullName": true
}
```

**Нативні поля OpClients** (доступні без створення):
- `phone` — телефон
- `bot_id` — ID бота
- `bot_name` — назва бота (з join)
- `fullName` — повне ім’я (колонка `full_name`)

**Примітка:** У прикладі на сторінці можуть бути `clientType`, `whiteLabel` — це кастомні поля в `extra_data` або застарілі ключі. Їх потрібно створювати в [«Поля клієнтів»](/uk/settings/how-to/configure-client-fields.md), якщо вони використовуються.

**Кастомні поля** — додайте ключі полів, створених у [«Поля клієнтів»](/uk/settings/how-to/configure-client-fields.md), зі значенням `true` для показу.

### 3. Налаштувати відображення

1. Використайте перемикачі та/або JSON видимості (як у блоці на сторінці «Поля клієнтів»).
2. Натисніть **«Зберегти»** у **верхній частині** екрана налаштувань операторської панелі (зберігаються зміни в налаштуваннях op-settings, зокрема `client_card_fields`).

### 4. Використання вкладених об’єктів (extra_data)

Для окремих кастомних полів з `extra_data` можна використовувати вкладений об’єкт з прапорцем `extra_data_flag`. Деталі — у підказці на сторінці.

## Що відбувається після

- Налаштування зберігаються в `client_card_fields` (OpSettings).
- Оператори бачать лише обрані поля в картці клієнта та в таблиці клієнтів.
- Порядок полів відповідає порядку ключів у JSON.

## Як переконатися, що все вдалось

- Відкрийте картку клієнта в операторській панелі та перевірте, що відображаються лише обрані поля.
- Перевірте таблицю клієнтів у модулі Broadcast.

## Пов'язані матеріали

- [Поля клієнтів](/uk/settings/how-to/configure-client-fields.md) — об’єднана сторінка (актуальний режим)
- [Налаштувати операторів](/uk/settings/how-to/configure-operators.md)
- [Налаштувати чати](/uk/settings/how-to/configure-chats.md)

## Важливі примітки

- ⚠️ **Кастомні поля:** спочатку визначте їх у [«Поля клієнтів»](/uk/settings/how-to/configure-client-fields.md), якщо це ще не зроблено на вашому інстансі.
- 💡 **JSON має бути валідним**: перевірте синтаксис (коми, дужки).
- 💡 Якщо JSON порожній або невалідний, використовується стандартне відображення за замовчуванням.
