# Telegram Operator Payout

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

Операторы могут:

* принимать заявки
* отменять принятие
* завершать заявки

👉 Все действия синхронизируются с админ-панелью в реальном времени.

### ⚙️ Шаг 1. Установка и базовая настройка

1. Установите и активируйте плагин **Lara Notification** в админ-панели. ([инструкция по установке](https://lara-script.gitbook.io/docs/ru/funkcional-admin-paneli/plaginy/telegram-notification))\
   Необходим для дальнейшей синхронизации

### 🤖 Шаг 2. Создание Telegram-бота

1. В Telegram найдите бота **@BotFather**
2. Отправьте команду:

   ```
   /newbot
   ```
3. Укажите:
   * имя бота
   * username (должен заканчиваться на `bot`)
4. После создания вы получите **Bot Token**\
   👉 Сохраните его — он понадобится для настройки
5. Перейдите:
   * `/mybots`
   * выберите бота
   * **Bot Settings → Group Privacy → Turn off**

Последняя настройка необходима для того, чтобы бот мог отправлять сообщения в группы

### 👥 Шаг 3. Создание группы и подключение бота

1. Создайте новую Telegram-группу для операторов
2. Добавьте туда созданного бота
3. Выдайте боту права для редактирование сообщений, по умолчанию, бот будет иметь эти права (обязательно)

### 🆔 Шаг 4. Получение chat\_id

1. Напишите любое сообщение в созданной группе
2. В браузере откройте ссылку, и укажите ранее созданный бот токен:

   ```
   https://api.telegram.org/bot<BOT_TOKEN>/getUpdates
   ```
3. Найдите в ответе:

   ```json
   "chat": {
     "id": -100XXXXXXXXXX
   }
   ```

👉 Это и есть ваш **chat\_id**, сохраните его, в дальнейшем данный параметр будет также необходим

### 🔗 Шаг 5. Подключение бота

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

Перейдите в раздел:\
**Автовыплаты → Telegram Operator Payout**

#### 📝 Заполнение полей

Заполните следующие параметры:

* **Код экспорта:**\
  Произвольное значение (используется для внутренней идентификации и отчетности)\
  \&#xNAN;*Пример:* `telegram_operator_payout`
* **Bot Token:**\
  Токен, полученный при создании бота (через @BotFather)
* **Chat ID:**\
  ID Telegram-группы, полученный на предыдущем шаге
* **Webhook Secret:**\
  Произвольное значение (используется для защиты webhook)

#### ⚙️ Активация

* Включите тумблер **«Активный»** (или «Включено»)

#### 🔁 Настройка в направлениях

Далее необходимо привязать данный метод к направлениям:

1. Перейдите в нужное направление обмена
2. Опуститесь к разделу **«Выводы»**
3. Добавьте метод **Telegram Operator Payout**

После выполнения всех настроек:

* бот начнет получать заявки по выбранным направлениям
* оповещение будет происходить автоматически при выполнении условий (оплаченная заявка)

### 📩 Шаг 6. Логика работы бота

#### Когда отправляется заявка

* Только после получения оплаты от клиента

### 🧾 Формат сообщения

Каждая заявка отображается в следующем формате:

```
ID заявки: XXXX
Валюта отдаю: Tether TRC20 USDT
Валюта получаю: monobank UAH
Сумма пополнения: 200 USDT
Сумма вывода: 8600 UAH
Имя владельца (клиента): Koval Oleksandr
Карта (клиента): 4441111010979528
IBAN (если используется) : ---
Telegram (клиента): Alex123
Зафиксированный после оплаты курс: 43
```

### 🎯 Доступные действия

#### 🟢 Кнопка «Принять»

* Закрепляет заявку за оператором
* В админке статус меняется на **«В работе»**
* Сообщение в Telegram обновляется:
  * отображается, кто принял заявку
  * кнопка «Принять» исчезает
  * появляются кнопки:
    * «Отменить»
    * «Завершить»

<figure><img src="https://2391054755-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKqXT4jWa7TDQpKKq2Yaf%2Fuploads%2FEHMG3VVIB5sovIjdbq2v%2Fimage.png?alt=media&#x26;token=b0796906-cf98-4c71-8c69-d681005e4ca6" alt="" width="563"><figcaption></figcaption></figure>

#### 🔴 Кнопка «Отменить»

* Снимает оператора с заявки
* Заявка возвращается в общий пул
* Снова становится доступной для принятия через бот другими операторами
* Информация об операторе удаляется из сообщения

👉 Нажать может только тот, кто принял заявку

#### ✅ Кнопка «Завершить»

* Помечает заявку как выполненную в админке

👉 Доступна только оператору, который принял заявку

### 🔔 Уведомления

* Все операторы получают новую заявку
* После принятия:
  * сообщение обновляется
  * видно, кто взял заявку
* Это исключает дублирование работы

### 📊 Логирование

Система фиксирует в историю заявок:

* кто принял заявку
* когда принял
* когда и какие статусы были изменены
* кто завершил

### 💱 Дополнительная логика (конвертация)

Если клиент:

* отдает, например, BTC
* а получает UAH

👉 В боте может отображаться сумма в **USDT**, полученная после конвертации

❗ Важно:\
Эта информация появляется **только после того, как заявка получила статус "Оплачена"**

### 🚨 Экспресс-заявки

* Экспресс-заявки выделяются в боте в первой строке
* Это позволяет быстрее реагировать на приоритетные заявки

<figure><img src="https://2391054755-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FKqXT4jWa7TDQpKKq2Yaf%2Fuploads%2FyhvTEKgdDy9UYPvMyUcr%2Fimage.png?alt=media&#x26;token=557de392-1691-40fb-83a9-1bb506d61d45" alt=""><figcaption></figcaption></figure>

Функционал "экстренных заявок" настраивается через раздел Плагины - Order Priority Processing, и [описан в документации](https://lara-script.gitbook.io/docs/ru/funkcional-admin-paneli/plaginy/order-priority-processing).
