# ТЗ: Evrone Credit — кредитный конвейер

Демонстрационная версия документа · категория «Финансы» · №11

> Это демонстрационное техническое задание: оно показывает структуру и глубину
> документа, который передаётся вместе с прототипом. Боевое ТЗ по этому солюшену
> готовится и заменит этот файл.

## 1. Суть решения

От заявки до денег: анкета, скоринг-конструктор, андеррайтинг, договор.

От заявки до денег: анкета с прогрессивным раскрытием полей, скоринг-конструктор правил + адаптеры к внешним источникам (БКИ, антифрод), очередь ручного андеррайтинга для пограничных случаев, решение, генерация договора, выдача.

## 2. Технологический стек

| Слой | Решение |
|---|---|
| Backend | Ruby on Rails 8, PostgreSQL |
| Frontend | Hotwire (Turbo + Stimulus), Tailwind CSS |
| Фоновые задачи | Solid Queue |
| Файлы | Active Storage, S3-совместимое хранилище |
| Деплой | Docker, Kamal, production + staging |

## 3. Роли

- Заявитель
- Андеррайтер
- Риск-менеджер
- Администратор правил

## 4. Модель данных

### 4.1. Application

```
product_id: references
applicant_data: jsonb
state: enum # черновик, скоринг, ручная проверка, решение
decision: enum, nullable
```

### 4.2. ScoringRule

```
name: string
expression: text
weight: decimal
enabled: boolean
```

### 4.3. Contract

```
application_id: references
amount: integer
rate: decimal
schedule: jsonb
signed_at: datetime, nullable
```

## 5. Ключевые сценарии

1. Заявитель заполняет анкету с прогрессивным раскрытием полей
2. Скоринг прогоняет правила и обращается к внешним источникам данных
3. Пограничные заявки уходят в очередь ручного андеррайтинга
4. По положительному решению формируется договор и происходит выдача

## 6. Интеграции

- Бюро кредитных историй
- Антифрод
- Подписание документов
- Выплатной шлюз

## 7. Нефункциональные требования

- Серверный рендеринг, работоспособность ключевых страниц без JavaScript
- Мобильная адаптивность обязательна
- Роли и права проверяются на уровне сервера, а не интерфейса
- Логирование действий пользователей по значимым операциям
- Покрытие тестами моделей и ключевых сценариев
- Развёртывание одной командой, окружения production и staging

## 8. Состав MVP

Один кредитный продукт (BNPL/рассрочка) — заявка → скоринг → договор.

## 9. Критерии приёмки

1. Все сценарии из раздела 5 проходят end-to-end на тестовом стенде
2. Роли из раздела 3 видят только то, что им положено
3. Интеграции из раздела 6 работают через слой адаптеров и переключаются конфигурацией
4. Прототип разворачивается из репозитория одной командой
5. Документация по запуску и переменным окружения лежит в README
