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

Полная идентификация

Полную идентификацию клиент проходит очно — в офисе банка или банковского платёжного агента QIWI (далее по тексту БПА). При необходимости партнёр может сам стать БПА. Для уточнения списка доступных офисов или получения роли БПА обратитесь к вашему курирующему менеджеру.

Список необходимых для полной идентификации документов:

Процесс состоит из двух этапов:

  • очная идентификация в офисе;
  • подтверждение идентификации в интерфейсе.

Очная идентификация в офисе

Клиент посещает офис БПА и предоставляет документы. БПА передаёт заявку с полученными данными в сервис идентификации QIWI. После валидации и выполнения ряда внутренних проверок QIWI c помощью оператора сотовой связи отправляет клиенту SMS-сообщение с результатом обработки заявки.

Успешный сценарий очной идентификации изображён на диаграмме ниже.

%%{init: {
    "sequence" : {
        "wrap":true,
        "messageFontSize":13,
        "noteFontSize":12,
        "actorMargin":
        75 }}}%%
sequenceDiagram
    participant С as Клиент
    participant A as БПА
    participant I as Ident Service
    С->>A: Документы
    A->>+I: Запрос на создание заявки
    Note over A,I:  bankId, productId, desiredIdentificationLevel, documentData, mobilePhoneNumber
    I->>I: Валидация (полнота данных и т.д.)
    I-->>-A: Ответ на запрос создание заявки
    Note over A,I: applicationStatus:IN_PROGRESS, identificationLevel:NOT_VERIFIED, applicationId
    I->>I: Проверки (действительность основного документа и т.д.)
    I->>I: identificationLevel -> AWAITING_PASSPORT_CONFIRMATION
    I->>С: SMS
    Note left of I: Заявка принята, требуется подтверждение

Важная информация

При посещении клиентом офиса должны быть учтены существующие правила и ограничения.

Подтверждение идентификации в интерфейсе

Успешный сценарий подтверждения идентификации описан и изображён ниже.

  1. Клиент открывает страницу или раздел интерфейса.
  2. Партнёр отправляет запрос к Identification API на поиск заявок клиента, по которым ожидается подтверждение основного документа.
  3. Identification API возвращает список заявок на идентификацию в статусе AWAITING_PASSPORT_CONFIRMATION, найденных по указанному номеру телефона.
  4. Партнёр отображает наличие заявки, требующей подтверждения.

    Обратите внимание

    • Партнёр может самостоятельно выбрать заявку для подтверждения, а может предоставить выбор клиенту. Подробности см. в статье «Правила и ограничения».
    • Клиенту можно отобразить лишь некоторые данные заявки. Подробности см. в статье «Правила и ограничения».
  5. Клиент вводит 4 последних знака номера документа и подтверждает их корректность.

  6. Партнёр отправляет запрос к Identification API на подтверждение заявки по 4 знакам номера документа.

    Обратите внимание

    На подтверждение даётся фиксированное количество попыток. Подробности см. в статье «Правила и ограничения».

  7. Identification API возвращает информацию о том, что требуется подтверждение SIM-карты (applicationStatus:AWAITING_SIM_CONFIRMATION).

  8. Партнёр инициирует отправку SMS-сообщения с OTP — совершает запрос к Identification API на создание сессии подтверждения SIM-карты.

    Важная информация

  9. Сервис идентификации c помощью оператора сотовой связи отправляет клиенту SMS-сообщение с OTP.

  10. Клиент получает SMS-сообщение, вводит OTP в интерфейсе и подтверждает его корректность.

  11. Партнёр передает полученный OTP в запросе к Identification API на подтверждение SIM-карты. Запрос выполняется в рамках созданной в п.8 сессии.

    Обратите внимание

    На подтверждение даётся фиксированное количество попыток. Подробности см. в статье «Правила и ограничения».

  12. Identification API возвращает информацию о том, что подтверждение выполнено успешно и заявка на идентификацию приобрела финальный статус — работа с ней завершена (applicationStatus:PROCESSING_FINISHED).

После успешного подтверждения:

%%{init: {
    "sequence" : {
        "wrap":true,
        "messageFontSize":14,
        "noteFontSize":13,
        "actorMargin":
        101 }}}%%
sequenceDiagram
    participant С as Клиент
    participant P as Партнёр
    participant I as Ident Service
    С->>P: Переход на страницу интерфейса
    P->>+I: Запрос на поиск заявок
    Note over P,I: productId, mobilePhoneNumber, applicationStatus:AWAITING_PASSPORT_CONFIRMATION
    I-->>-P: Ответ на запрос поиска заявок
    Note over P,I: mobilePhoneNumber, personData, identificationDataSource, applicationId, applicationStatus:AWAITING_PASSPORT_CONFIRMATION
    P->>С: Коммуникация с клиентом
    Note left of P: Подтвердить заявку, завершить идентификацию
    С->>P: 4 последних знака номера основного документа
    P->>+I: Запрос на подтверждение заявки
    Note over P,I: productId, applicationId, personId, passportNumberLast4Characters
    I-->>-P: Ответ на запрос подтверждения
    Note over P,I: applicationStatus:AWAITING_SIM_CONFIRMATION
    P->>С: Коммуникация с клиентом
    Note left of P: Ввести код подтверждения из SMS
    P->>+I: Запрос на создание сессии подтверждения SIM
    Note over P,I: productId, applicationId, confirmationSessionId, personId, mobilePhoneNumber
    I-->>-P: Ответ на запрос создания сессии
    Note over P,I: resendAttemptsLeft, resendDelay
    I->>С: SMS с OTP
    С->>P: OTP
    P->>+I: Запрос на подтверждение SIM
    Note over P,I: productId, applicationId, confirmationSessionId,personId, confirmationCode
    I-->>-P: Ответ на запрос подтверждения
    Note over P,I: applicationStatus:PROCESSING_FINISHED
    P->>С: Коммуникация с клиентом

Важная информация

При реализации данного сценария необходимо учитывать существующие правила и ограничения.

Запросы описаны в документации Identification API.

Жизненный цикл заявки на идентификацию

В этом разделены описаны переходы заявки на полную идентификацию из одного состояния в другое. Полный список состояний (статусов) см. в документации Identification API.

Сокращения и обозначения:

  • ПИ — полная идентификация;
  • pез-т — результат.

stateDiagram-v2
    [*] --> IN_PROGRESS: Данные ОК
    [*] --> PROCESSING_FINISHED: Данные не ОК
        note left of [*]
            Получены данные
        end note
    IN_PROGRESS --> AWAITING_PASSPORT_CONFIRMATION: Проверки пройдены
    IN_PROGRESS --> PROCESSING_FINISHED: Проверки не пройдены
    AWAITING_PASSPORT_CONFIRMATION --> PROCESSING_FINISHED: Нет подтверждения
    state fork_state1 <<fork>>
    AWAITING_PASSPORT_CONFIRMATION --> fork_state1: Подтверждение
    fork_state1 --> AWAITING_SIM_CONFIRMATION: Успешно
    fork_state1 --> PROCESSING_FINISHED: Неуспешно, попытки исчерпаны
    AWAITING_SIM_CONFIRMATION --> PROCESSING_FINISHED: Нет подтверждения
    state fork_state2 <<fork>>
    AWAITING_SIM_CONFIRMATION --> fork_state2: Подтверждение
    fork_state2 --> IN_PROGRESS: Успешно, ждём рез-т ПИ
    fork_state2 --> PROCESSING_FINISHED: Неуспешно, попытки исчерпаны
    IN_PROGRESS --> PROCESSING_FINISHED: Есть рез-т ПИ
    PROCESSING_FINISHED --> [*]

БПА передаёт документы клиента в QIWI. Если они прошли проверки формата и могут быть сохранены, в сервисе идентификации создаётся заявка в одном из состояний:

  • IN_PROGRESS — когда получен полный набор данных и данные прошли валидацию;
  • PROCESSING_FINISHED — когда получен неполный набор данных или данные невалидны.

Из статуса IN_PROGRESS заявка переходит в:

  • AWAITING_PASSPORT_CONFIRMATION — когда данные прошли внутренние проверки и ожидается подтверждение основного документа;
  • PROCESSING_FINISHED — когда данные не прошли внутренние проверки (например на действительность основного документа).

После попытки подтвердить основной документ из AWAITING_PASSPORT_CONFIRMATION заявка переходит в одно из состояний:

  • AWAITING_SIM_CONFIRMATION — когда подтверждение основного документа завершилось успешно и ожидается подтверждение SIM-карты;
  • PROCESSING_FINISHED — когда подтвердить основной документ не удалось (переданы неверные данные) и использованы все возможные попытки. В этом случае сервис вернёт уровень идентификации клиента NOT_VERIFIED с кодом причины passport.confirmation.attempts.exceeded.

Обратите внимание

  • Заявка может находиться в статусе AWAITING_PASSPORT_CONFIRMATION или AWAITING_SIM_CONFIRMATION не более одного месяца. По истечении этого срока она переходит в статус PROCESSING_FINISHED.
  • Если попытка подтверждения основного документа или SIM-карты неуспешна, но общее количество доступных попыток ещё не исчерпано, статус заявки не меняется — остаётся AWAITING_PASSPORT_CONFIRMATION/AWAITING_SIM_CONFIRMATION до тех, пока попытки не закончатся.

После попытки подтвердить SIM-карту из AWAITING_SIM_CONFIRMATION заявка переходит в одно из состояний:

  • IN_PROGRESS — когда подтверждение SIM-карты завершилось успешно и данные проходят повторные внутренние проверки;
  • PROCESSING_FINISHED — когда подтвердить SIM-карту не удалось (переданы неверные данные) и использованы все возможные попытки. В этом случае уровень идентификации клиента принимает значение NOT_VERIFIED, а код причины — значение sim.confirmation.attempts.exceeded.

После успешного прохождения повторных внутренних проверок заявка из статуса IN_PROGRESS переходит в PROCESSING_FINISHED. В этом случае уровень идентификации клиента принимает значение FULL.

Чтобы узнать текущий уровень клиента и причину полученного уровня, необходимо выполнить запрос на получение персональных данных. Уровень хранится в атрибуте productIdentificationLevel, причина — в атрибуте productIdentificationLevelReason.