Перейти к основному содержимому

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

В этом разделе собраны ответы на частые вопросы по работе Mandarin.ID: статусы проверки, SMS-коды, тестовый режим, ошибки СМЭВ и повторные запросы.

СМЭВ и сроки ответа

По какому протоколу работает Mandarin.ID?

Mandarin.ID работает по протоколу СМЭВ-4.

Может ли СМЭВ быть недоступен?

Да. СМЭВ — государственная информационная система, поэтому иногда возможны временные сбои, задержки или проблемы в отдельных регионах.

Как понять, что СМЭВ временно недоступен?

Точного способа заранее проверить доступность СМЭВ нет. О проблемах можно понять по косвенным признакам:

  • запросы обрабатываются дольше обычного;
  • в ответе появляются ошибки;
  • в Telegram-канале Mandarin опубликовано уведомление о сбое.

О восстановлении работы также публикуется отдельное уведомление.

Сколько времени занимает проверка?

Обычно результат проверки приходит в течение 10 минут.

Иногда ответ может идти дольше по причинам, которые не зависят от Mandarin. Максимальный регламентный срок ответа на СМЭВ-запрос — до 5 рабочих дней.

Статусы проверки

personVerificationFinished — это финальный признак завершения идентификации?

Да. Поле personVerificationFinished показывает, завершена ли проверка персональных данных.

Возможные значения:

  • true — проверка завершена;
  • false — проверка еще не завершена.

Может ли быть personVerificationFinished: true, а phoneVerificationFinished: false?

Да, может.

Это означает, что проверка персональных данных завершена, но проверка телефона — нет. Например, клиент ввел неверный SMS-код.

Идентификация клиента и проверка телефона — это один процесс?

Нет, это разные проверки:

  • personVerified — результат проверки персональных данных через СМЭВ;
  • phoneVerified — результат проверки номера телефона через SMS-код.

Как долго можно получить результат по ID сессии?

У ID сессии нет срока действия. Результат можно запросить позже: через неделю, месяц или другой период.

Что означает personVerified: false?

Это значит, что данные клиента не прошли проверку.

СМЭВ не уточняет, какое именно поле не совпало. Ошибка может быть в ФИО, паспортных данных, СНИЛС или ИНН. Также данные могут быть недействительными или не совпадать между ведомственными системами.

Если клиент уверен, что данные введены правильно, ему стоит обратиться в профильное ведомство для проверки информации.

Статус Pending

Почему запрос долго находится в обработке?

Иногда СМЭВ отвечает с задержкой. В этом случае статус может долго оставаться в обработке.

Пример ответа:

{
"id": "e2c3c860-1d68-427c-a16d-9666e0ffb706",
"phoneVerified": null,
"phoneVerificationFinished": false,
"personVerified": null,
"personVerificationFinished": false,
"personVerificationError": null,
"inn": {
"status": "NotProcessed",
"description": "Не указан ИНН, проверка не производилась"
},
"snils": {
"status": "Processing",
"description": "В обработке"
},
"passport": {
"status": "Valid",
"description": "Сведения соответствуют"
},
"passportDeferred": null
}

Что делать:

  1. Периодически повторяйте проверку статуса в рамках вашего SLA:
GET https://secure.mandarinpay.com/api/personidentification/v2/{id}
  1. Если ответа от СМЭВ долго нет, можно заново инициализировать процесс идентификации:
POST https://secure.mandarinpay.com/api/v2/personidentification
  1. Передача SMS-кода выполняется методом:
PUT https://secure.mandarinpay.com/api/personidentification/{id}

Тело запроса:

{
"smsCode": "..."
}

Документация Mandarin.ID

Тестовый режим

Взимается ли оплата за запросы в тестовом режиме?

Нет. В тестовом режиме запросы на идентификацию не тарифицируются.

Можно ли протестировать идентификацию без SMS-кода?

Да. Для этого не передавайте поле phone в запросе.

На тестовом проекте невалидные паспортные данные дадут успешную идентификацию?

В тестовом режиме успешная идентификация зависит от ФИО.

Если передать ФИО из примера ниже, в ответе будет:

"personVerified": true

Тестовые данные:

{
"firstName": "Полиграф",
"lastName": "Шариков",
"patronymic": "Полиграфович"
}

Важно: паспорт и остальные данные все равно нужно передавать. В тестовом режиме проверка проходит по ФИО.

При подтверждении телефона SMS не отправляется, а код состоит из нулей.

Можно изменить длину SMS-кода?

Да, длину SMS-кода можно изменить. Для настройки обратитесь в службу поддержки Mandarin.

SMS-коды

Можно изменить отправителя SMS?

Нет. Клиент получает SMS от отправителя Mandarin с текстом:

Код для подтверждения: …

Имя отправителя и текст сообщения не настраиваются индивидуально.

Сколько времени действует SMS-код?

Код действует до тех пор, пока не отправлен новый код.

В текущей версии протокола доступно не более 5 попыток передачи SMS-кода. Если лимит превышен, нужно заново инициализировать процесс идентификации.

Ошибки

PersonIdentificationError: ESIA-000001

Это внутренняя ошибка на стороне ЕСИА или СМЭВ.

Что делать: повторите запрос согласно документации. Если ошибка повторяется, обратитесь в службу поддержки Mandarin.

PersonIdentificationError: внутренняя ошибка сервера

Причина зависит от конкретного запроса. Возможные варианты:

  • проблема на стороне СМЭВ;
  • connection time out;
  • проблема у провайдера.

Что делать: повторите запрос. Если ошибка сохраняется, обратитесь в службу поддержки Mandarin.

Ошибка СМЭВ: SAXException: Content is not allowed in …

Такая ошибка обычно означает неполадки на стороне СМЭВ.

Что делать: повторите запрос после восстановления работы СМЭВ.

"personVerificationError": "Ошибка СМЭВ. Обратитесь в службу технической поддержки."

Проблема на стороне СМЭВ.

Что делать: повторите запрос позже. Если ошибка сохраняется, передайте ID запроса и текст ошибки в службу поддержки Mandarin.

Ответ с Connection timed out в errorStatusInfo

Пример ответа:

{
"status": "PROCESSING",
"errorStatusInfo": [
{
"code": "0",
"message": "java.net.ConnectException: Connection timed out: connect"
}
]
}

Ошибку возвращает СМЭВ. Обычно это связано с временными перебоями на их стороне.

Что делать: повторите запрос позже. Если проблема сохраняется, обратитесь в службу поддержки Mandarin.

Ответ с Internal service error, код 500

Пример ответа:

{
"status": "PROCESSING",
"errorStatusInfo": [
{
"code": "0",
"message": "Код ответа: 500, сообщение: Internal service error"
}
]
}

Чаще всего источник ошибки — СМЭВ.

Что делать: повторите запрос позже. Если ошибка повторяется, обратитесь в службу поддержки Mandarin.

PersonIdentificationError: ошибка при выполнении запроса

Пример ответа:

{
"status": "FAILED",
"errorStatusInfo": [
{
"code": "-1",
"message": "Ошибка при выполнении запроса"
}
]
}

Такая ошибка может означать, что сервис был временно недоступен на стороне СМЭВ.

Что делать: повторите запрос позже. Если ошибка повторяется, обратитесь в службу поддержки Mandarin.

Нужна помощь

Если ошибка сохраняется или вы не можете определить причину, обратитесь в службу поддержки Mandarin.

Перед обращением подготовьте:

  • ID запроса;
  • время отправки запроса;
  • полный текст ошибки;
  • описание сценария, в котором возникла проблема.

Содержание

Подключите Mandarin.ID