Запуск проверок

POST kyc/checks/run


Описание

Запускает проверки физического лица по переданным данным и сразу возвращает runId. Метод асинхронный: результата в ответе нет, он забирается методом POST kyc/checks/result.


Формат запроса

  • HTTP метод: POST
  • URL: kyc/checks/run
  • Тип контента: application/json
  • Авторизация: обязательна (токен в поле token тела или в заголовке token)

Тело запроса (JSON)

ПолеТипОбязательныйОписание
tokenstring✅Постоянный токен доступа. При временном токене — в заголовке token, тогда в теле не нужен
personobject✅Данные для проверки; lastName и firstName обязательны
checkersstring[]❌Какие проверки запустить. Поле опущено — запускаются все проверки, разрешённые группе

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

Наборы данных

НаборПоляЗамечание
Паспорт РФpassport.series, passport.number, passport.issueDate + ФИО и дата рожденияОсновной набор, около 95 % обращений
Водительское удостоверениеdriverLicense.series, driverLicense.number, driverLicense.issueDateДействительность ВУ
ФИО и дата рожденияlastName, firstName, middleName, birthDateМинимальный набор для поиска по реестрам
СНИЛСsnils (11 цифр)Принимается и передаётся источнику
Адрес регистрацииaddress.full, address.type (reg — жительство, fact — пребывание)Принимается и передаётся источнику
Телефонphone — мобильный номер РФ: 10 цифр или 11, начиная с 7 или 8; разделители и + в начале отбрасываютсяДля проверок номера телефона (принадлежность, активность, возраст номера, подтверждение возраста)
ИННinn (12 цифр)Необязателен — проверки определяют ИНН по паспорту сами (нужно отчество)

Разделители в номерах (пробелы, дефисы) убирать не нужно. Даты принимаются в форматах YYYY-MM-DD и DD.MM.YYYY. Проверка, которой не хватило данных, попадает в прогон и возвращает outcome: skipped с перечислением недостающего в missingInputs — это не ошибка и не тарифицируется.


Пример запроса (cURL)

curl -X POST "https://api.neuro-vision.ru/v1/kyc/checks/run" \
  -H "Content-Type: application/json" \
  -d '{
    "token": "<permanent-token>",
    "person": {
      "lastName": "Иванов",
      "firstName": "Иван",
      "middleName": "Иванович",
      "birthDate": "1985-03-15",
      "gender": "M",
      "passport": { "series": "4509", "number": "123456", "issueDate": "2010-06-20", "issuerCode": "770-001" },
      "driverLicense": { "series": "7799", "number": "123456", "issueDate": "15.03.2020" },
      "snils": "11223344595",
      "inn": "771234567890",
      "address": { "full": "119991, г. Москва, ул. Ленина, д. 1, кв. 2", "type": "reg" }
    },
    "checkers": ["insolvencyStatus", "debtBurden"]
  }'

Ответ

ПолеТипОписание
runIdstringИдентификатор запуска для kyc/checks/result
checksStatusstringВсегда pending
pendingnumberСколько проверок запущено
checkersstring[]Какие проверки запущены

Состав проверок фиксируется в момент запуска: позже к запуску ничего не добавляется.

Успех (200 OK)
{
  "runId": "523c8284-ad9e-11ef-9be1-b8ccad474166",
  "checksStatus": "pending",
  "pending": 2,
  "checkers": ["insolvencyStatus", "debtBurden"],
  "responseTime": "2026-07-28T10:00:00.000Z"
}
Ошибка — неизвестный checker (400)
{
  "status": "error",
  "message": "unknown or not allowed checkers",
  "unknown": ["insolvencyStatuz"],
  "notAllowed": []
}

Ошибки

КодТелоКогда
400invalid schema + detailsТело не соответствует схеме
400person.lastName and person.firstName are requiredНет фамилии или имени
400unknown or not allowed checkers (+ unknown, notAllowed)Среди checkers есть неизвестные или не разрешённые группе идентификаторы
400person.phone must be a Russian number: 10 digits, or 11 starting with 7 or 8Номер телефона не похож на мобильный номер РФ
400person.snils must be 11 digits with valid check digitsВ СНИЛС не 11 цифр или не сходится контрольное число
400checkers must not be empty — omit the field to run every allowed checkПередан пустой массив checkers (опустите поле, чтобы запустить все)
400no checks are allowed for this accountГруппе не разрешена ни одна проверка
401access deniedНет токена или токен не действует
500internal errorВнутренняя ошибка; повторите запрос позже

Неизвестный идентификатор не отбрасывается молча: иначе опечатка превратилась бы в прогон без нужной проверки.