> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Оценка риска транзакций: формула и пороги

> Как Didit оценивает транзакции: вклад правил, пороги и статусы APPROVED, IN_REVIEW, DECLINED. 1,000 в месяц бесплатно, затем $0.001.

Каждая транзакция получает **оценку риска**: целое число, которое суммарно отражает её риск. Оценка определяет статус транзакции (`APPROVED`, `IN_REVIEW`, `DECLINED`) и решение о том, создавать ли оповещение, открывать ли кейс или требовать от пользователя устранения замечаний.

## Формула

```
score = Σ(score_delta of every matched rule)
```

* Базовая оценка: 0.
* Каждое сработавшее правило добавляет свой настроенный `score_delta` (обычно 25–35).
* Транзакция, для которой не сработало ни одно правило, получает оценку 0.

## Пороги и статусы

Пороги оценки настраиваются для каждого приложения в разделе *Транзакции → Настройки*.

| Настройка | По умолчанию | Значение |
| - | - | - |
| `preferred_review_score_threshold` | 75 | Оценки ≥ этого значения получают статус `IN_REVIEW` |
| `preferred_decline_score_threshold` | 500 | Оценки ≥ этого значения получают статус `DECLINED`. Значение по умолчанию и максимальное значение (`500`) означает «никогда не отклонять по оценке», поэтому, чтобы начать отклонять по оценке, его нужно снизить. |

Назначение статуса:

```
if decline_threshold < 500 and score >= decline_threshold: status = DECLINED
else if score >= review_threshold: status = IN_REVIEW
else: status = APPROVED
```

Действия отдельных правил могут переопределить это. Например, правило с `action: change_status → DECLINED` отклонит транзакцию независимо от оценки.

## Вклад правил: пример расчёта

Допустим, на одну транзакцию срабатывают следующие правила:

| Правило | `score_delta` |
| - | - |
| Исходящий перевод крупной суммы (>\$10,000) | 30 |
| Контрагент из юрисдикции высокого риска | 35 |
| Обнаружен паттерн структурирования | 35 |

Итоговая оценка = 30 + 35 + 35 = **100**.

При пороге проверки 60 и пороге отклонения 85 эта транзакция получает статус `DECLINED`.
При пороговых значениях по умолчанию (75 для проверки, 500 для отклонения) она получает статус `IN_REVIEW`, так как значение по умолчанию никогда не отклоняет транзакцию по оценке.

## Действия, переопределяющие статус

Правила также могут напрямую задать статус, минуя пороги оценки:

| Действие правила | Результат |
| - | - |
| `change_status → DECLINED` | Транзакция отклоняется независимо от оценки |
| `change_status → IN_REVIEW` | Транзакция передаётся на проверку независимо от оценки |
| `change_status → AWAITING_USER` | Транзакция ожидает устранения замечаний пользователем. Сценарий задаётся в действии правила; для библиотечных правил используется сначала вариант, выбранный в настройках, затем ваш сценарий «Биометрическая аутентификация» (требуется сохранённое лицо), затем ваш сценарий по умолчанию |
| `add_score(n)` | Только добавляет баллы к оценке; статус не назначается принудительно |
| `add_tags([...])` | Прикрепляет теги для фильтрации в консоли; на оценку не влияет |
| `add_to_list(...)` | Добавляет идентификатор в список блокировки |

Одно правило может иметь несколько действий, например `add_score(35)` + `add_tags(["structuring"])` + `add_note("Auto-tagged by structuring preset")`.

## Почему оценка лучше жёстких правил

Простой порог (например, «отклонять каждую транзакцию свыше \$100k») срабатывает и на законные крупные транзакции, и на реальный риск. Сочетание нескольких умеренных правил с `score_delta` и порогов проверки и отклонения даёт следующее:

* **Многоуровневая оценка**: ни одно правило само по себе не приводит к отклонению; должно совпасть несколько сигналов.
* **Настраиваемая чувствительность**: пороги можно повышать или понижать, не меняя определения правил.
* **Градация серьёзности**: транзакция с оценкой 65 передаётся на проверку (стоит взглянуть), оценка 90 приводит к отклонению (серьёзный случай).

## Настройка порогов

В разделе *Транзакции → Настройки*:

* **Порог проверки**: повысьте, если очередь проверки переполнена; понизьте, чтобы выявлять больше пограничных случаев.
* **Порог отклонения**: повысьте, чтобы сократить количество ложных отклонений; понизьте, чтобы склониться к более жёсткой блокировке. Установите максимальное значение (`500`), чтобы высокие оценки направлялись на проверку вместо автоматического отклонения.

Изменения применяются только к **новым** транзакциям: исторические транзакции сохраняют статус, назначенный на момент оценки.

## Тестовый режим для правил

Правила могут работать в режиме `TEST`:

* Правило проверяет транзакции, но не влияет на оценку и статус.
* Записи `TransactionRuleRun` создаются с `is_test = true`.
* Позволяет проверить избирательность правила без риска отклонений в продакшн-среде.

Переключите правило в `ACTIVE`, когда вас устроит его избирательность.

## Поле severity и устаревшие поля

Поле `severity` в Transaction и TransactionAlert может иметь значение null и является устаревшим. Новые оценки правил его не заполняют. Используйте `score` как основной показатель риска.

## Просмотр оценок

### Через API

Каждый ответ по транзакции включает `score` и массив `rule_runs[]` с одной записью на каждое сработавшее правило (все поля см. в [схеме ответа](https://docs.didit.me/ru/transaction-monitoring/response-schema.md#запуски-правил)):

```json theme={null}
{
  "txn_id": "tx-0002",
  "status": "IN_REVIEW",
  "score": 65,
  "rule_runs": [
    {
      "rule_title": "High-value outbound",
      "matched": true,
      "score_delta": 30,
      "severity": null,
      "status_target": null,
      "action_summary": "score +30"
    },
    {
      "rule_title": "High-risk jurisdiction counterparty",
      "matched": true,
      "score_delta": 35,
      "severity": "HIGH",
      "status_target": "IN_REVIEW",
      "action_summary": "score +35; add_tag:high_risk_country"
    }
  ]
}
```

### В консоли

На странице сведений о транзакции вкладка **Оценка** показывает, как каждое сработавшее правило повлияло на оценку, и сопоставление с итоговым статусом. Наведите курсор на значок оценки, чтобы увидеть пороговые значения, использованные на момент оценки.

## Дальнейшие шаги

> [card] [Правила](https://docs.didit.me/ru/transaction-monitoring/rules.md)
>
> Структура правил и порядок оценки.

> [card] [Оповещения](https://docs.didit.me/ru/transaction-monitoring/alerts.md)
>
> Что происходит, когда срабатывает правило.

> [card] [Настройки](https://docs.didit.me/ru/transaction-monitoring/settings.md)
>
> Настройка порогов.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.