Перейти к содержанию

Антифрод в МФО: проверка номера в MAX как первая ступень скоринговой воронки

Как риск-офицер МФО снижает FPD30 и NPL: MAX-проверка за $0.005 перед БКИ, 590-П и 151-ФЗ, кейс на 100 000 заявок и интеграция со скоринговой воронкой.

Антифрод в МФО: проверка номера в MAX перед БКИ-запросом
08 мая 2026 г.обновл. 22 мая 2026 г.Max Checker TeamЧтение · 12 минКейсы

В микрофинансовой организации каждая заявка — это не лид и не trial, а решение о выдаче живых денег. Если синтетический заёмщик получил 30 000 ₽, эти деньги не вернутся: средний FPD30 по «синтетике» — 80–100%, и стандартный коллекшен на таких портфелях не работает. Поэтому риск-офицер МФО мыслит другими категориями, чем антифрод-инженер в SaaS: для него важны не «фейковые регистрации», а прямые потери на теле займа + стоимость сформированных резервов по Положению ЦБ РФ 590-П.

Эта статья — о том, как MAX-проверка за $0.005 встраивается в скоринговую воронку МФО перед запросами в БКИ, как она влияет на FPD30 и NPL, и почему она не конкурирует с БКИ, HLR и антифрод-бюро, а дополняет их как самая дешёвая первая ступень.

TL;DR

  • Целевая аудитория: риск-офицер, скоринг-команда, head of credit в МФО / онлайн-кредиторе
  • Метрика, на которую влияем: FPD30 −0.8…2.1 п.п., NPL30 −0.5…1.2 п.п.
  • Цена ступени: $0.005/заявка vs $0.20–1.00 за БКИ-запрос
  • Эффект: 7–14% заявок не доходят до платного слоя БКИ
  • Не заменяет: БКИ (ОКБ, НБКИ, Эквифакс), HLR, FPS, видеоидентификацию, полноценный KYC по 115-ФЗ
  • Юридика: ст. 6 п. 7 152-ФЗ, 151-ФЗ «О микрофинансовой деятельности», 218-ФЗ «О кредитных историях»
Проверь свою базу за минуту
$0.005/номер · скидки от 10% до 60%
Открыть бота →

Чем антифрод в МФО отличается от антифрода в SaaS

В SaaS-онбординге фрод — это упущенная маркетинговая стоимость и шумовая нагрузка на саппорт. В МФО фрод — это списанная сумма основного долга плюс резерв по 590-П плюс стоимость взыскания, которое заведомо не окупится. Поэтому подход к воронке другой:

  • В SaaS можно «дать trial и посмотреть» — антифрод срабатывает ретроспективно
  • В МФО решение бинарное и одномоментное: выдать/отказать в пределах 30–60 секунд UX-обещания, и обратной дороги нет

Отсюда специфика стека: МФО уже платит 150–600 ₽ за полный прогон одной заявки (БКИ × 1–3 бюро + телеком-скоринг + антифрод-бюро + ML-модель), и каждый рубль, сэкономленный на отсечении мусора до этого pipeline, попадает напрямую в unit-экономику.

История фрод-волн в российском онлайн-микрофинансе

Чтобы понять, против чего работаем, полезно вспомнить как эволюционировал фрод в МФО за 2019–2026:

  1. 2019–2020: кража паспортных данных + первичная синтетика. Утечки клиентских баз банков и МФО дали мошенникам массив «холодных» личностей. Скоринг тех лет был построен на БКИ-хитах и почти не видел разрыв «номер ↔ паспорт».
  2. 2020–2022: SMS-recycling и виртуальные номера. Появление дешёвых SMS-сервисов (онлайн-симки за 20–100 ₽) дало возможность принимать SMS-коды на одноразовые номера. Скоринг адаптировался — появились HLR-фильтры и черные списки операторских пулов.
  3. 2022–2024: multi-account refer-loops и социальная инженерия. Один заёмщик после первого отказа берёт виртуальный номер, меняет паспорт «брата» и заходит снова. На 100 заявок до 30% — это попытки одних и тех же физлиц через ротацию номеров и синтетических документов.
  4. 2024–2026: синтетика на бирже паспортов + дропы. Появление полноценных «синтетических личностей» с подделанными БКИ-хитами и социальным графом. На этой волне MAX-проверка становится критическим слоем: синтетика часто не успевает завести правдоподобный публичный мессенджер-профиль.

Воронка скоринга в МФО: где встаёт MAX-проверка

Типичная воронка онлайн-МФО среднего размера выглядит так:

Шаг 0  Заявка с landing/app → JSON в antifraud-gateway
Шаг 1  Базовые проверки      → нормализация телефона E.164,
                                регексы, чёрный список ФИО,
                                проверка гео по IP
Шаг 2  MAX-проверка          → 200–400 ms, $0.005, registered/not_found
       ↓ (если registered + имя ок)
Шаг 3  HLR + телеком-скоринг → 300–800 ms, ~2–8 ₽
       ↓
Шаг 4  Антифрод-бюро (FPS,   → 400–900 ms, 10–40 ₽
       Synthetic Score, ID
       Score)
       ↓
Шаг 5  БКИ-запрос (ОКБ +     → 600–1500 ms, 30–180 ₽
       НБКИ, иногда Эквифакс)
       ↓
Шаг 6  ML-скоринг модель     → 20–80 ms, амортизированно ~5 ₽
       ↓
Шаг 7  Решение и лимит       → выдать / отказать / поднять видео-KYC

MAX-проверка занимает позицию Шаг 2 — после базовых регексов, но до любого платного внешнего запроса. Это даёт два эффекта:

  • Платные слои (HLR/FPS/БКИ) видят на 7–14% меньше трафика
  • Скоринговая модель на финальном шаге получает дополнительную фичу max_check_result (registered / not_found / name_mismatch / last_seen_recent), которая улучшает gini-индекс модели на 0.01–0.03 без переобучения дорогостоящих подмоделей

Сравнительная таблица: MAX-проверка vs HLR vs БКИ

ПараметрMAX-проверкаHLR-запросБКИ (ОКБ/НБКИ)
Стоимость за обращение$0.005 (≈0.45 ₽)2–8 ₽30–180 ₽
Latency p50250 ms400 ms800 ms
Latency p951.2 s2 s4 s
Что возвращаетregistered, firstName, last_seenactive SIM, оператор, MNP-флагcredit score, активные ссуды, дефолты
Покрытие России~78% мобильных номеров~99%100% (по ИНН/паспорту)
На что отвечает«реальный ли публичный профиль»«жива ли SIM в сети»«какая кредитная история»
УязвимостиСвежие SIM 0–14 дней not_foundСвежевыпущенные SIM-пулыЗаёмщики без КИ (thin file)
Регулирование152-ФЗ как открытый источникДоговор с MNO/агрегатором218-ФЗ «О кредитных историях»

Каскад работает по принципу убывающей цены и убывающей широты: MAX-проверка — самый широкий и самый дешёвый сигнал, БКИ — самый точный и самый дорогой. Менять порядок — значит платить за БКИ за заявки, которые отсеялись бы на $0.005.

Кейс: МФО, 100 000 заявок/мес

Берём типичный профиль регионального онлайн-МФО:

  • Поток заявок: 100 000/мес
  • Approval rate: 22% → 22 000 выдач/мес
  • Средний чек выдачи: 18 000 ₽
  • FPD30 без MAX-фильтра: 9.4%
  • Доля «синтетики» в FPD30: ~40% (то есть 3.8 п.п. FPD30 — это целиком невозвратный синтетический пул)
  • Стоимость полного pipeline на заявку (без MAX): ~120 ₽

Без MAX-проверки

  • Синтетических выдач: 22 000 × 3.8% = 836/мес
  • Списание тела (FPD30 + DPD60→100%): 836 × 18 000 ₽ = 15 048 000 ₽/мес
  • Стоимость БКИ + HLR + FPS по этим же заявкам (они проходили весь pipeline до отказа или ошибочного одобрения): 100 000 × 120 ₽ = 12 000 000 ₽/мес в полный pipeline
  • Резерв по 590-П (упрощённо, категория «сомнительные»): +20% к списанию

С MAX-проверкой первой ступенью

  • Стоимость MAX-проверок: 100 000 × $0.005 = $500/мес ≈ 45 000 ₽
  • Отсечение на Шаге 2: 11% заявок = 11 000/мес → они не доходят до HLR/FPS/БКИ
  • Экономия на платном pipeline: 11 000 × 110 ₽ (HLR+FPS+БКИ) = 1 210 000 ₽/мес
  • Снижение синтетических выдач: 836 → ~470 (отсев ~44% синтетики на первой ступени)
  • Снижение списаний тела: 366 × 18 000 ₽ = 6 588 000 ₽/мес
  • FPD30 в портфеле: 9.4% → 7.7% (−1.7 п.п.)

Чистая экономика

  • Затраты на MAX: 45 000 ₽/мес
  • Экономия pipeline: 1 210 000 ₽/мес
  • Снижение прямых списаний: 6 588 000 ₽/мес
  • ROI ≈ 170× на месячном горизонте

Цифры FPD30 и доли синтетики — наблюдения по агрегированным кейсам наших клиентов; конкретный эффект зависит от качества рекламных каналов и текущего стека антифрода.

Псевдокод: интеграция в antifraud-gateway

Типичный код антифрод-микросервиса, в который встраивается MAX-проверка как Шаг 2:

# antifraud_gateway/handlers/apply.py
async def handle_application(req: ApplyRequest) -> Decision:
    # Шаг 1: базовые проверки
    phone = normalize_e164(req.phone)
    if not phone or phone in BLACK_LIST:
        return Decision.reject(reason="basic_filters")

    # Шаг 2: MAX-проверка ($0.005)
    max_result = await max_checker.check(
        phone=phone,
        timeout_ms=1500,
        retries=1,
    )

    risk_features: dict = {}

    if max_result.status == "not_found":
        risk_features["max_check"] = "not_found"
        risk_features["score_penalty"] = 25  # слабый сигнал
    elif max_result.status == "registered":
        risk_features["max_check"] = "registered"
        # сверка ФИО из публичного профиля и анкеты
        if not fuzzy_match(req.full_name, max_result.first_name,
                           max_result.last_name, threshold=0.78):
            risk_features["max_check"] = "name_mismatch"
            risk_features["score_penalty"] = 35
        # свежесть профиля
        if max_result.last_seen_bucket in ("today", "yesterday"):
            risk_features["score_penalty"] = -5  # bonus
    else:  # unknown / timeout
        risk_features["max_check"] = "unknown"
        # не штрафуем — это технический сбой

    # Шаг 3+: HLR / FPS / БКИ — только для тех, кто прошёл MAX
    if risk_features.get("score_penalty", 0) < 50:
        risk_features.update(await run_paid_pipeline(req, phone))
    else:
        # сразу в видео-KYC очередь, без БКИ-запроса
        return Decision.require_video_kyc(features=risk_features)

    # Шаг 6: ML-скоринг
    score = scoring_model.predict(req, risk_features)
    return decide_by_score(score, req.amount)

Ключевые моменты:

  • MAX-проверка с timeout_ms=1500 и одним ретраем — не блокирует UX, p95 укладывается в 2 секунды
  • unknown не штрафуется — это технический ответ, не сигнал фрода
  • Несовпадение имени (name_mismatch) — более сильный сигнал чем not_found, потому что предполагает осознанную попытку
  • Если суммарный штраф ≥ 50 баллов — заявка идёт в видео-KYC очередь минуя платные слои (БКИ), это даёт основную экономию

Чеклист «10 сигналов фрода в МФО кроме MAX-проверки»

MAX-проверка — один из ~15 сигналов в полноценной антифрод-модели. Базовый чеклист для head of risk:

  1. БКИ-инконсистенция: заёмщик заявляет работу + ЗП, но активных ссуд по БКИ за 24 месяца нет вообще (thin file + высокий доход = подозрительно)
  2. Geo mismatch: IP-адрес заявки в одном федеральном округе, заявленная регистрация — в другом, при отсутствии сезонной миграции
  3. Device fingerprint совпадает с ранее отказными: одна связка canvas+webgl+fonts подавала заявки с других ФИО
  4. Velocity: ≥3 заявки с одного устройства / IP / номера за 7 дней
  5. SIM-возраст < 14 дней (HLR + операторские базы): свежая карта статистически коррелирует с фродом
  6. Несовпадение публичного ФИО в MAX/VK/Одноклассниках с анкетой (нужна сверка по нескольким открытым источникам)
  7. Подозрительный паттерн заполнения формы: время на заполнение паспорта < 5 сек = автокликер
  8. Кластер по UTM+реф-партнёру: внезапный всплеск выдач из одного UTM-source при стабильном FPD30 90%+ по этому каналу
  9. Email на одноразовых доменах (mailinator, tempmail и пр.)
  10. Запрос на максимальный лимит при первой заявке + отсутствие активности в публичных мессенджерах = классический паттерн «синтетика на максимум»

В одиночку каждый из сигналов — слабый. В связке 3–4 сигналов — почти уверенный фрод. MAX-проверка в этой матрице — это сигналы №6 и косвенно №10.

Пост-выдачный мониторинг: MAX как early warning

Применение MAX-проверки не ограничивается приёмом заявок. На выданном портфеле есть рабочий сценарий:

  • Раз в 7 дней — повторная проверка номеров активных заёмщиков
  • Триггеры:
    • Профиль исчез из MAX (registered → not_found) — номер передан другому либо аккаунт удалён
    • Сменилось имя в публичном профиле — возможна смена владельца SIM
    • last_seen стало «давно» при ранее активном паттерне

По наблюдениям, заёмщики с триггером phone_status_changed_after_disbursement дают +12–18% к вероятности дефолта на платежах 3–4. Сигнал передаётся в раннюю коллекшен-очередь до того, как сработает стандартный DPD-триггер.

Стоимость такого мониторинга: 22 000 активных выдач × 4 проверки в месяц × $0.005 = $440/мес, что несравнимо дешевле эффекта на recovery rate.

Проверь свою базу за минуту
$0.005/номер · скидки от 10% до 60%
🤖 Запросить пилот для МФО

Юридические аспекты для МФО

Микрофинансовая организация работает в рамке нескольких законов:

  • 151-ФЗ «О микрофинансовой деятельности и микрофинансовых организациях» — базовый закон, регулирующий деятельность МФО, лимиты ставок, обязательное членство в СРО (НАУМИР или МиР)
  • 115-ФЗ «О ПОД/ФТ» — упрощённая идентификация при сумме до 15 000 ₽, полная — выше
  • 152-ФЗ «О персональных данных» — обработка ПДн, в т.ч. для целей антифрода (ст. 6 п. 7)
  • 218-ФЗ «О кредитных историях» — обмен с БКИ
  • 353-ФЗ «О потребительском кредите (займе)» — информирование заёмщика о проверках и условиях
  • Положение Банка России 590-П «О порядке формирования кредитными организациями резервов на возможные потери по ссудам» — формирование резервов; косвенно стимулирует точность скоринга

Проверка номера в публичном мессенджере с целью противодействия мошенничеству не требует отдельного согласия при условии:

  • Цель «противодействие мошенничеству» включена в политику обработки ПДн на сайте МФО
  • В оферте/индивидуальных условиях по 353-ФЗ заёмщик уведомлён, что номер может быть проверен по открытым источникам
  • Результат проверки хранится не дольше, чем требуется для цели (типично — срок жизни заявки + 5 лет в соответствии с требованиями по хранению КИ)

Юридические нюансы шире — отдельный разбор в материале 152-ФЗ и проверка номеров.

Edge cases, специфичные для МФО

  1. «Холодные» регионы с низким проникновением MAX: в ряде субъектов СКФО и ДФО проникновение MAX ниже среднероссийского. Доля not_found в этих регионах статистически выше — это не обязательно фрод. Калибруйте веса фичи по федеральному округу, используя данные из материала MAX в России — статистика 2026.
  2. Свежие SIM (0–14 дней): пользователь только что купил карту и ещё не успел установить MAX. Такие заявки дают not_found без вины пользователя. Корректно — слабый сигнал риска (+15 баллов), не блокирующий.
  3. Закрытые профили (~5–8% аудитории MAX): возвращают firstName="". Сравнение через == даст false positive. Корректное правило — «либо имя пустое, либо совпадает с анкетой».
  4. Корпоративные и виртуальные АТС: чаще всего not_found в MAX. Для МФО это не релевантно — юрлица за микрозаймом не обращаются. Если в потоке заявок появляется корпоративный номер — это уже сигнал нерелевантного канала.
  5. Двойная синтетика: продвинутый мошенник заводит публичный MAX-профиль на купленную SIM, проставляет ФИО под паспорт. Здесь MAX-проверка дает зелёный свет, но last_seen=«сегодня» при server_id в свежем диапазоне — слабый отрицательный сигнал. Полностью защищает только связка с БКИ + видеоидентификация.

Что MAX-проверка не заменяет

СлойПокрытиеСтоимость
MAX-проверкаВиртуалы, name_mismatch, прокатка$0.005
HLR / телеком-скорингSIM-возраст, оператор, MNP-флаг$0.03–0.10
Антифрод-бюро (FPS, ID Score)Связи между заявителями, известные фрод-кластеры$0.15–0.60
БКИ (ОКБ/НБКИ/Эквифакс)Полная кредитная история, текущая долговая нагрузка$0.40–2.40
Видео-идентификацияLiveness + биометрия + паспорт$0.50–2.00

MAX-проверка — это первый дешёвый фильтр, а не альтернатива любому из последующих слоёв. Лучшая архитектура — каскадная: на каждой следующей ступени обрабатывается только то, что прошло предыдущую.

Как подключить для МФО

Возможные сценарии онбординга:

  1. Пилот 5 000–20 000 заявок через CSV-выгрузку. Ночная выгрузка отказных и принятых заявок прошедших месяцев, прогон через Max Checker, обратная загрузка в DWH / BI. Цель пилота — посчитать на собственных данных, какой % FPD30 фигурирует именно в not_found / name_mismatch когортах.
  2. Production-pipeline через API. Sync /check, p95 1.5 s, webhook fallback для timeout-ов. Технический детальный разбор — в материале REST endpoint /checkaccount. Запрос на доступ — через /support в боте на maxcheck.online с темой «API для МФО».
  3. Pricing для МФО объёмов. На потоках от 100 000 проверок/мес действует тариф −40% от базовой ставки. Детали — на странице Pricing.

См. также Use cases — антифрод для смежных сценариев.

Полезные регуляторные ссылки

Об авторе

Материал подготовлен командой Max Checker. С 2024 года мы работаем с риск-командами онлайн-МФО среднего размера в РФ и СНГ: интегрируем MAX-проверку в скоринговые pipelines, помогаем калибровать веса фичи под профиль конкретного портфеля и считать реальный эффект на FPD30 / NPL30 на собственных исторических данных клиента. Если вы head of risk или scoring-команда и хотите посчитать ROI на своём потоке — запросите пилот через бот на maxcheck.online.

Частые вопросы

01.Зачем МФО ставить MAX-проверку перед запросом в БКИ?

Запрос в БКИ (ОКБ, НБКИ, Эквифакс) стоит МФО от 12 до 60 ₽ за обращение, в зависимости от тарифа и пакета. MAX-проверка за $0.005 (≈0.45 ₽) ставится первой ступенью воронки и отсекает 7–14% заявок с виртуальными номерами и SIM-recycling ещё до того, как заявка дошла до платного слоя БКИ. На объёме 100 000 заявок/мес это экономит до 600 000 ₽ только на стоимости БКИ-запросов.

02.Как MAX-проверка влияет на FPD30?

FPD30 (First Payment Default — доля заёмщиков, не сделавших первый платёж в 30 дней) в портфеле, прошедшем через MAX-фильтр, по нашим кейсам ниже на 0.8–2.1 п.п. Эффект достигается за счёт отсева синтетических личностей, которые исторически дают 80–100% FPD30. На NPL90+ эффект менее выражен — там доминируют поведенческие и макроэкономические факторы, а не входная синтетика.

03.Что отвечает MAX-проверка по сравнению с БКИ и HLR?

MAX-проверка отвечает на вопрос «существует ли публичный профиль и совпадает ли имя». БКИ отвечает на «какая кредитная история и текущая долговая нагрузка». HLR отвечает на «активна ли SIM-карта в сети оператора». Это три разных слоя: MAX — первый фильтр на синтетику, HLR — техническая жизнеспособность номера, БКИ — финансовое поведение. Все три нужны в каскадной воронке.

04.Это законно по 152-ФЗ и 151-ФЗ?

Да. МФО обрабатывает ПДн по 151-ФЗ «О микрофинансовой деятельности» и 152-ФЗ. Цель «противодействие мошенничеству» закреплена в ст. 6 п. 7 152-ФЗ и не требует отдельного согласия. Проверка номера в публичном мессенджере — это работа с открытыми источниками, аналогично сверке с публичными реестрами. Подробнее в нашем гайде по 152-ФЗ.

05.Нужно ли отказывать заявителю, если номер не найден в MAX?

Нет. `not_found` — это слабый негативный сигнал, который должен попасть в скоринговую модель как фича, а не как блокирующее правило. Корректная политика: +20–40 баллов риска, понижение лимита первой выдачи или требование дополнительной верификации (видеоидентификация, селфи с паспортом). Жёсткий стоп — только при совпадении трёх и более слабых сигналов фрода.

06.Как Указание ЦБ РФ 590-П влияет на использование MAX-проверки?

Положение Банка России №590-П регулирует формирование резервов по ссудам и косвенно стимулирует МФО улучшать качество скоринга: чем точнее модель, тем ниже резерв, тем выше норма прибыли. MAX-проверка не упоминается в 590-П напрямую — это инструмент внутреннего скоринга, а не обязательная процедура. Но она напрямую влияет на качество портфеля и, соответственно, на объём формируемых резервов.

07.Совместима ли MAX-проверка с требованиями ПОД/ФТ по 115-ФЗ?

Полностью. 115-ФЗ требует упрощённой идентификации при сумме займа до 15 000 ₽ и полной — выше. MAX-проверка не является идентификацией в смысле 115-ФЗ, она — внутренний антифрод-инструмент. Использование MAX-проверки не отменяет обязательных процедур ПОД/ФТ, но дополняет их слоем защиты от синтетических личностей, которые формально проходят упрощённую идентификацию через SMS.

08.Можно ли использовать MAX-проверку для мониторинга действующего портфеля?

Да, это рабочий сценарий early warning. Если профиль активного заёмщика исчезает из MAX в течение 30 дней после выдачи или меняется владелец номера — это сигнал для коллекшена включиться раньше стандартного DPD-триггера. По нашим наблюдениям, такие заёмщики дают +12–18% к вероятности дефолта на третьем-четвёртом платеже.

ПоделитьсяTelegramX

Читать дальше

Похожие материалы.