Статусы сессии

Статус KYC-сессии приходит в поле status ответа kyc/session/status, в списке сессий и в вебхуке SESSION_COMPLETE (см. Вебхуки).


Значения

СтатусЧто означаетИтоговый
idleСессия создана, обработка ещё не начиналасьНет
processingСессия обрабатывается, в том числе идут проверки по базам данныхНет
successПроверка пройденаДа
failedПроверка не пройденаДа, после окончания времени жизни сессии
suspiciousСессия помечена как подозрительнаяДа
exceptionОшибка обработкиНет
expiredПользователь не завершил сессию за время жизни ссылкиДа

Когда результат окончательный

  • Пока у сессии есть время (secondsToLive больше 0) и остались попытки, пользователь может пройти шаг ещё раз. Поэтому failed может смениться на success.
  • Считайте результат окончательным, когда secondsToLive = 0, или когда статус success или suspicious.
  • Когда время жизни истекло, сессия в статусе idle получает статус expired. Сессия в статусе processing получает итоговый статус, когда обработка завершится.
  • Если нужен только окончательный результат, включите в сценарии настройку «Уведомлять только если сессия финализирована» и получайте его вебхуком.

Статус suspicious

Сессия получает suspicious, если:

  • на изображениях лица разных людей — такая сессия блокируется окончательно;
  • достигнут лимит критических ошибок, заданный в сценарии;
  • лицо не совпало с эталонной сессией (см. kyc/session/reference).

Если пользователь превысил число попыток, в ошибках сессии будет [general] too many tries.


Статус exception

У сессии целиком exception встречается редко: запросите статус ещё раз. Чаще exception — статус отдельного шага или проверки внутри сессии.


Ручная смена статуса

Статус можно изменить методом kyc/session/status/change. Метод принимает любое из семи значений выше.


Статусы анкеты

У записи анкеты первого этапа (см. Двухэтапная проверка: анкета → KYC) два статуса:

СтатусЧто означает
idleАнкета открыта, ответы ещё не отправлены
successОтветы анкеты записаны

success у анкеты — не решение по пользователю. Результаты проверок по базам данных смотрите в поле checks.


Сессия не найдена

Если сессии с указанным идентификатором нет, метод отвечает HTTP 200 с телом:

{
  "status": "error",
  "message": "session not found"
}

Проверяйте поле status в теле ответа, а не только HTTP-код.