Сценарии использования

Использование Cardsmobile Digital Product Delivery API для выпуска и обслуживания экземпляра банковского продукта

Можно выделить три базовых сценария взаимодействия платформы Cardsmobile и эмитента: выпуск продукта эмитентом для пользователя приложения «Кошелёк», доставка выпущенного продукта в «Кошелёк» пользователя, получение клиентом информации о продукте, выпущенном для него эмитентом.

1. Выпуск продукта

Выпуск продукта инициируется пользователем, который выбирает интересующий его банковский продукт в каталоге приложения. После этого пользователь принимает условия выпуска продукта и заполняет анкету. Анкета может быть заполнена пользователем как в приложении, так и на стороннем ресурсе (например — на веб-сайте эмитента).

1.1. Запрос выпуска продукта со стороны Cardsmobile

Запрос на выпуск продукта передается со стороны Cardsmobile путем передачи эмитенту запроса API requestProduct.

Запрос на выпуск продукта

1.2. Ответ на запрос выпуска продукта со стороны эмитента

В случае успешной обработки запроса, со стороны эмитента производится передача запроса notifyRequestProductResult.

Ответ на запрос выпуска продукта со стороны эмитента

Ответ notifyRequestProductResult содержит в себе поле status, определяющее результат обработки запроса эмитентом. Это поле может содержать следующие статусы:

  • APPROVED (Одобрено) — эмитент одобрил выпуск экземпляра продукта в «Кошелёк» пользователя, можно переходить к процедуре доставки.

  • DECLINED (Отказано) — эмитент не одобрил выпуск в «Кошелёк» пользователя экземпляра выбранного продукта. Следует повторить процедуру запроса.

  • AUTHENTICATION_REQUIRED (Требуется аутентификация) — для выпуска экземпляра продукта в «Кошелёк» пользователь должен пройти процедуру аутентификации любым из предложенных эмитентом методов.

1.3. Аутентификация пользователя эмитентом

В случае если ответ эмитента на запрос выпуска продукта содержит статус AUTHENTICATION_REQUIRED, платформа Cardsmobile должна произвести аутентификацию пользователя любым из методов аутентификации, перечень которых возвращается эмитентом в сообщении.

Аутентификация пользователя эмитентом

Метод аутентификации, выбранный пользователем из предоставленных эмитентом, передается эмитенту платформой Cardsmobile в запросе selectedMethod.

Методы аутентификации IN_CALL, OUT_CALL, WEB_LINK и MOBILE_LINK предусматривают аутентификацию пользователя эмитентом вне API Cardsmobile. Для метода OTP_CODE, предполагающего отправку эмитентом пользователю одноразового кода аутентификации, введенный пользователем код передается платформой Cardsmobile эмитенту путем отправки запроса authenticate.

В случае успешного прохождения пользователем аутентификации со стороны эмитента, платформа может переходить к этапу доставки выпущенного продукта в «Кошелёк» пользователя.

2. Доставка продукта пользователю

Доставка пользователю экземпляра выпущенного эмитентом продукта осуществляется, если на предыдущем шаге от эмитента по API был получен ответ notifyRequestProductResult с полем status в значении APPROVED. При этом продукт эмитента может быть выпущен пользователю как в приложение «Кошелёк», так и в приложение Apple Wallet (для устройств на платформе iOS).

Доставка пользователю экземпляра выпущенного продукта

2.1. Запрос доставки продукта пользователю со стороны Cardsmobile

Запрос доставки экземпляра выпущенного продукта пользователю передается со стороны Cardsmobile путем передачи эмитенту запроса API provisionRequest.

Если предполагается загрузка экземпляра продукта в приложение Apple Wallet, запрос обязательно должен содержать заполненное поле appleWalletProvisionRequest.

2.2. Ответ на запрос доставки продукта со стороны эмитента

В случае успешной обработки запроса, со стороны эмитента производится передача запроса provisionResult. Если экземпляр продукта должен быть загружен в приложение Apple Wallet, запрос обязательно должен содержать заполненное поле appleWalletProvisionResponse.

Запросы provisionRequest и provisionResult содержат зашифрованные данные.

3. Информационное обслуживание выпущенного экземпляра продукта

После того, как экземпляр продукта успешно выпущен в «Кошелёк» пользователя, платформа Cardsmobile и эмитент обеспечивают информационное обслуживание пользователя выпущенного экземпляра продукта. Оно может включать в себя следующие процессы:

  1. Запрос пользователем у эмитента данных по выпущенному продукту, доставляемых по альтернативному (вне «Кошелька») каналу.

  2. Оповещение пользователя со стороны эмитента об изменении статуса выпущенного экземпляра продукта (например — уведомление о блокировке).

  3. Запрос пользователем действия по изменению статуса выпущенного экземпляра продукта (например — блокировка).

  4. Запрос пользователем истории транзакций и баланса выпущенного продукта.

  5. Уведомление пользователя о транзакции, совершенной при помощи выпущенного экземпляра продукта.

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

3.1. Запрос пользователем данных по выпущенному продукту

Запрос пользователя на получение от эмитента сведений о продукте, выпущенном в «Кошелёк» пользователя, реализуется путем отправки со стороны Cardsmobile эмитенту запроса API requestProductInfo.

Запрос данных по выпущенному продукту

В случае успешной обработки запроса эмитент отправит пользователю сведения о продукте с использованием указанного канала связи (СМС и т.п., согласуется с эмитентом отдельно).

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

Оповещение пользователя эмитентом об изменении статуса продукта, выпущенного в «Кошелёк» пользователя, реализуется путем отправки со стороны эмитента запроса API notifyProductInstanceUpdated.

Оповещение пользователя об изменении статуса продукта

3.3. Запрос пользователем изменения статуса продукта

Эмитент может предоставить пользователю возможность запрашивать действия по изменению статуса экземпляра продукта, выпущенного в «Кошелёк» пользователя. Запрос пользователя на изменение статуса экземпляра продукта реализуется путем отправки эмитенту со стороны Cardsmobile запроса API сhangeProductInstanceRequest.

Запрос изменения статуса продукта пользователем

В случае успешной обработки запроса эмитент должен отправить платформе Cardsmobile запрос API notifyProductInstanceUpdated (см. выше).

3.4. Запрос пользователем баланса продукта

Эмитент может предоставить пользователю возможность запрашивать текущий баланс продукта, выпущенного в «Кошелёк» пользователя. Запрос пользователем баланса продукта реализуется путем отправки эмитенту со стороны Cardsmobile запроса API statusRequest.

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

Запрос баланса продукта

В случае успешной обработки запроса эмитент должен отправить платформе Cardsmobile запрос API notifyStatusDetails.

3.5. Получение сведений о транзакциях

Эмитент может предоставить пользователю возможность запрашивать историю транзакций экземпляра продукта, выпущенного в «Кошелёк» пользователя. Запрос пользователем истории транзакций реализуется путем отправки эмитенту со стороны Cardsmobile запроса API getTransactionHistory.

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

Получение сведений о транзакциях

В случае успешной обработки запроса эмитент должен отправить платформе Cardsmobile запрос API notifyTransactionHistory.

3.6. Информирование пользователя о транзакциях

Эмитент может оперативно оповещать пользователя о каждой транзакции, совершенной экземпляром продукта, выпущенного в «Кошелёк» пользователя. Оповещение пользователя о транзакции реализуется путем отправки эмитентом запроса API notifyActualTransaction.

Информирование пользователя о транзакциях