← Все статьи

Антифрод и KYC

Цифровой след в онбординге: как встроить проверку через API

Проверка открытых источников не должна тормозить регистрацию. Показываем, как поставить скан Oracul в фоне онбординга, где принимать решение и как связать сигналы с правилами, которые у вас уже есть.

У большинства команд онбординг уже устроен: форма, проверка документа и селфи, движок правил, ручная очередь. Oracul не заменяет ни один из этих шагов. Он добавляет ещё один источник фактов — есть ли у человека история в сети и совпадает ли она с тем, что он заявил. Главное — встроить его так, чтобы клиент не ждал.

Шаг 1. Запустить скан в фоне

Сразу после отправки заявки бэкенд вызывает POST /v1/scans: email, телефон, ник (если есть), имя и фамилия из заявки и цель проверки. API сразу отвечает 202 с id скана и статусом queued. Клиент продолжает онбординг, скан идёт параллельно.

  • Чем больше зацепок, тем точнее профиль: имя отсеивает однофамильцев, email и телефон дают разные срезы.
  • Цель проверки пишется в журнал аудита вместе с запросом — пригодится при проверке регулятора.
  • Глубина рекурсии ограничена тарифом: 1 круг на Free, 2 на Pro, 3 на Business и Enterprise.

Шаг 2. Получить вебхук

Когда скан готов, Oracul отправляет POST на ваш webhook_url с событием scan.completed и ссылкой на результат. Подпись — HMAC-SHA256 в заголовке X-Oracul-Signature в формате t=…,v1=…. Проверяйте подпись своим секретом и метку времени t, чтобы не принять подделку или повтор. Вебхуки ходят только на https и только на публичные адреса.

Шаг 3. Забрать сигналы

GET /v1/scans/{id} возвращает профиль и блок signals: возраст следа в днях, долю профилей с совпавшим именем и список флагов — no_footprint, young_footprint, name_mismatch, voip_phone, invalid_phone, breached_credentials. Если нужны подробности, GET /v1/scans/{id}/accounts отдаёт аккаунты постранично с источниками и уровнем уверенности.

Шаг 4. Решить правилами

Oracul не говорит «одобрить» или «отказать». Решение остаётся в вашем движке, а сигналы становятся ещё одним входом. Например:

  • Нет флагов и след старше нескольких лет — обычный путь.
  • young_footprint и voip_phone вместе — ручная проверка до первой выплаты.
  • name_mismatch — сверить имя из документа с найденными профилями в консоли.
  • breached_credentials — усилить защиту входа: аккаунт с этим email мог быть захвачен.

Где ставить точку решения

Быстрый режим занимает несколько минут, полный скан глубины 2 — 10–20 минут. Поэтому решение по сигналам удобнее принимать не на экране регистрации, а на шаге, где появляется риск: перед первой выплатой, выпуском карты, повышением лимита. К этому моменту скан обычно уже готов. Если нет — ваши правила решают, ждать или пустить заявку по обычному пути.

Что важно не забыть

  • Лимиты тарифа: когда они исчерпаны, API отвечает 429 — заложите повтор или запасной путь.
  • Хранение: результаты удаляются через 30 дней. Нужное для решения сохраните у себя, лишнее сотрите сразу через DELETE /v1/scans/{id}.
  • Тишина: скан не шлёт человеку писем и сбросов пароля, поэтому клиент не узнаёт о проверке из уведомления.
  • Основание: законное основание для проверки каждого клиента — на вашей стороне.

Чтобы попробовать сигналы на своих кейсах, хватит бесплатного тарифа: 5 сканов в месяц, консоль и API.

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

Запустите первый скан сегодня

5 бесплатных сканов каждый месяц. Без карты.