Задание: Интеграция по API. Разработать модуль интеграции 1С:Предприятие 8 с backend API (Дистанционная работа)
## Модуль интеграции 1С:Предприятие 8 с backend API (v1)
### 1. Общие сведения
**Цель разработки** — обеспечить двустороннюю интеграцию между конфигурациями 1С:Предприятие 8 (платформа ≥ 8.3.22) и backend API для получения и регистрации скидок по дисконтным картам при продаже.
### 2. Область применения
Модуль встраивается в типовые и доработанные конфигурации «Управление торговлей (11.5+)» и «Розница (3.0+)» и используется в рабочем месте кассира
### 3. Пользовательские сценарии
### Сценарий: Продажа с дисконтной картой
1. **Кассир** сканирует штрих‑коды товаров; 1С добавляет их в чек.
2. Сканы завершены — кассир сканирует QR‑код дисконтной карты клиента.
3. Система определяет `clientId` и отправляет `POST /sales` с текущим составом чека.
4. Получен ответ. Если `status=pending`, модуль опрашивает статус до 30 сек. или переходит к шагу 5 при `processed`.
5. Скидка (`discount`) применяется к товарам, в чеке появляется строка «Скидка на X%».
6. Кассир озвучивает клиенту итоговую сумму, принимает оплату.
7. После успешной оплаты чек закрывается; модуль записывает `saleId`, статус и полученную скидку в регистр **ИсторияПродажMoiQR**.
8. Если оплата отменена — модуль отправляет `DELETE /sales/{externalId}` (будущая доработка) или помечает запись как «Отменён».
### 4. Требования к интерфейсу 1С
- Форма настроек (общие настройки для роли Администратор):
- Поле «Refresh Token» (строка).
- Поле «URL API» (по умолчанию `https://api.domain.com/api/v1`).
- Чек‑бокс «Вести подробный лог».
- Добавить кнопку/гиперссылку «Применить скидку» (активна, если в чеке > 0 позиций).
- Отображать полученную скидку в поле «Скидка X ₽».
### 4.1. Конфигурационные параметры для интерфейса администратора
| Параметр | Значение по умолчанию |
| **URL_API** | https://api.domain.com/api/v1 |
| **Таймаут соединения, сек** | 5 |
| **Интервал опроса статуса, в сек** | 2 |
| **Максимум попыток опроса** | 15 |