Как работает SberPay под капотом
Как вы думаете, когда и чем впервые оплатил человек?
Вряд ли это была знакомая всем карта с чипом и магнитной полосой во времена до нашей эры…
Конечно, альтернатива наличке появилась еще за пару тысяч лет до этого…
Началось все со старого доброго бартера, когда люди обменивались не QRами, чтобы деньги перевести по телефону, а реальными вещами/товарами, равноценными друг другу.
И так продолжалось очень долго, уровень бартера вышел на международный. Все товары для каждого участника торговли были по разному ценны, значит нужна валюта, которая устроит всех!
Первыми на полку пошли слитки из драгоценных металлов со своим весом и формой, но и их спустя много лет заменили на монеты. Попробуй так в магазин со слитком сходить! Неудобно…
Чеканные монеты постепенно вытеснили бартер и сделали торговлю с обменом быстрее и проще.
Но больше всего не везет купцам. Хоть монеты явно удобнее слитков, их же нужно охранять, перевозить, помимо всего товара в повозке.
Так человечество пришло к первым бумажным деньгам. И тут купцы заликовали. Ведь вместо телеги с металлоломом, они ходили уже с добротной «котлетой».
Не много, не мало, а прошла тысяча лет от появления налички до пластиковой карты с магнитной полосой.
Потом карта обзавелась сначала контактным чипом (микросхемой), улучшив свою безопасность в разы, потом дуальным чипом с поддержкой контактного и бесконтактного интерфейса.
Так, эволюционным путем, мы пришли к бесконтактной оплате телефоном, которая на научном языке называется Оплата через NFC. И с 2011 года успешно ей пользовались, вплоть до текущего момента.
Но!! С небольшим перерывом, пока мы в поте лица чуть больше полугода восстанавливали SberPay.
Но, что это такое, из-за чего же все «поломалось», и как все «починилось» ? Как раз об этом я и расскажу вам дальше.
Давайте разберёмся, как устроена бесконтактная оплата телефоном с помощью SberPay и как добавить его поддержку в Android-приложение.
Глава 1. Бесконтактная оплата
Платить телефоном можно при помощи технологии NFC (Near Field Communication). Это такой чип (микросхема), который позволяет двум устройствам передавать/получать данные на небольшом расстоянии в 10 см.
Для оплаты нужно всего-то несколько участников:
Телефон с поддержкой NFC
POS терминал с NFC (сейчас они все снабжены модулем для приема бесконтактных платежей)
Чуть ниже процесс отображен на схеме.
Раньше для оплаты было множество сервисов: Apple Pay, Google Pay, Samsung Pay, Mir Pay, SberPay. Но в России из-за санкций международные платёжные системы Visa и Mastercard (далее МПС) ушли, ведь именно платёжные системы создают токены и генерируют ключи, которые так нужны нам для оплаты. А за МПС ушли и привычные для нас сервисы токенизации карт.
Глава 2. Почему не работает оплата на iOS
У Android-приложений есть доступ к модулю NFC, с помощью которого телефон взаимодействует с терминалом и обменивается данными с приложением, а в iPhone такого доступа нет. В iOS за безопасность этих взаимодействий отвечает Secure element — микросхема в совокупности с программным обеспечением. Она сертифицированна по стандарту EMVco, по которому также проходят сертификацию производители микросхем для банковских карт. Через эту микросхему проходят все команды, связанные с платёжной функцией телефона по обмену данными между терминалом и приложением. И, конечно, доступ к нему имеет лишь одно приложение — Apple Pay. А так как Apple Pay ограничен в части использования для NFC-платежей в России, то.
Какие платёжные средства для бесконтактной оплаты сейчас доступны на iOS?
• Платёжные стикеры. Кстати, кто не знает, недавно наши друзья по цеху запустили стикеры с героями Союзмультфильма.
• Оплата улыбкой. Если увидите терминал с камерой, скажите кассиру, что хотите оплатить по биометрии, и посмотрите в камеру.
А теперь мы с вами подробнее рассмотрим этапы добавления поддержки бесконтактной оплаты в Android-приложение: токенизацию, оплату и синхронизацию данных.
Глава 3. Токенизация
Токенизация карты — это технология преобразования конфиденциальных данных банковской карты в специальный токен, с помощью которого можно оплачивать покупки. Схематично токенизация и оплата выглядят так:
Как проходит токенизация:
Аттестация устройства. Перед началом токенизации мобильное приложение аттестует устройство. Если проверка на доступность и безопастность успешна, то функциональность становится доступна, в противном случае мы скрываем точки входа. Со стороны Android-приложения работа с токенами, хранение и обновление данных в БД реализовано в SDK, который подключается к проекту.
Регистрация кошелька. Чтобы токенизировать карту, сначала нужно зарегистрировать кошелёк. В мобильном приложении определённым алгоритмом генерируется идентификатор кошелька. После этого инициализируются ключи шифрования и приходит сертификат от SDK. Данные отправляются в бекенд, в SDK для аутентификации кошелька с учётом данных о самом устройстве. И если всё в порядке, то кошелёк активируется с ещё одной итерацией взаимодействия с бекендом. Этот процесс выполняется только один раз. То есть, если кошелёк ранее уже был активирован, то при токенизации карт берутся готовые данные о кошельке.
После регистрации кошелька происходит токенизация карты, привязываемой к кошельку.
Запрос на токенизацию. Когда пользователь добавляет карту МИР в мобильное приложение, оно отправляет запрос на токенизацию в TSP (Token Service Provider). В запросе указываются данные о карте и мобильном устройстве, после чего идёт запрос в платёжную систему (ПС),
Создание токена. После получения запроса ПС проверяет возможность токенизации этой карты у банка-эмитента: нет ли ограничений, не заблокирована ли карта и т.д. При успешном ответе ПС создаёт уникальный токен и связывает его с соответствующей картой.
Далее ПС создаёт пачку платёжных ключей — обычно десяток (на одну транзакцию каждый раз тратится один ключ) — и отправляет в TSP. А сервис пересылает эти ключи с ID токена на хранение в мобильное приложение.
Хранение токена. Кошелёк и мобильное приложение хранят ID токена в своей защищенной базе данных вместо реальных данных карты с пачкой ключей и данными об устройстве.
Теперь мы знаем что такое такое токен, и как он попадает к нам в телефон. Но как проходит оплата? Погружаемся.
Глава 4. Оплата
При проведении транзакции через мобильное устройство приложение общается с POS-терминалом через SDK и передаёт ID токена вместо реальных данных карты, с одним платежным ключом на терминал. Затем платёж проходит через стандартную цепочку участников: банк-эквайер → платёжная система → банк-эмитент и обратно.
Получив команду APDU (Application Protocol Data Units), ожидаемую для старта оплаты от удалённого устройства (терминала), мы вызываем обработку в SDK. Все APDU определены в спецификации ISO/IEC 7816-4, это пакеты уровня приложения, которыми обмениваются считыватель NFC и сервис HostApduService. Такой протокол является полудуплексным, то есть считыватель NFC отправляет вам команду APDU и ждёт APDU-ответ.
Взаимодействия между терминалом и сервисом NFC в приложении должно быть максимально быстрым. Весь процесс оплаты выглядит так:
Обратный вызов от SDK.
Отображение экрана результата.
Платить можно без интернет-соединения, но до тех пор, пока в запасе есть платёжные ключи. Для их обновления потребуется выйти в интернет.
А чтобы все данные, которые лежат в кошельке, в TSP, в Платежной системе были одинаковые, необходимо обеспечить их синхронизацию.
Для обновления данных по токенам и кошельку необходима синхронизация с бекендом. Она выполняется при авторизации пользователя в приложении. В нашем приложении нужна ещё и фоновая синхронизация, для этого мы использовали workManager. Задача на синхронизацию ставилась в том числе и при оплате с соблюдением определённых условий.
Глава 5. Аутентификация CDCVM
Самое важное в процессе оплаты это что? Правильно. Б – безопасность.
А как сделать оплату NFC максимально безопасной, чтобы злоумышленник, приложив POS терминал к вашему карману, где лежит телефон, не смог списать какую-то крупную сумму, пока вы с ним третесь в час пик в метро?
Для этого используется технология CDCVM, которая расшифровывается как Consumer Device CVM. В этом случае пользователь вводит отдельный код доступа к платёжному приложению. Для запуска аутентификации на Android используется BiometricPrompt [2], с помощью которого выполняется системный запрос аутентификации с использованием одной из поддерживаемых биометрических технологий: отпечаток пальца или кодом.
Но и об удобстве не стоит забывать! Дополнительно, мы реализовали возможность оплачивать заблокированным телефоном. При этом можно даже выбрать сумму для оплаты, если вы этого сами хотите, без подтверждения отпечатком пальца или кодом: 100, 250, 500 или 1000 рублей.
Резюме
Мы обсудили базовые понятия бесконтактной оплаты на стороне мобильных приложений. Рассмотрели основные компоненты поддержки бесконтактных платежей в Android-приложении и основные этапы процесса оплаты.
И вот, что у нас получилось:
Оплата одним касанием (в прошлой версии SberPay был заточен под двойное касание). Так удобнее всего для быстрой оплаты: махнул по терминалу, забрал покупки и пошёл по делам дальше.
Индивидуальный и Живой дизайн для Сберкарт. Просто небольшое отличие от всех остальных кошельков, чтобы порадовать глаз. Выбрав любимую картинку для Сберкарты в приложении, мы автоматически поставим ее на экран оплаты в SberPay.
Отображение баланса карт во время оплаты.
Оплата в пределах выбранной суммы без разблокировки телефона.
Как установить и пользоваться СберПэй в магазине на Андроид
Сбер – самый популярный банк России, количество клиентов которого приближается к отметке в 100 миллионов человек. Денежно-кредитная организация предоставляет пользователям массу сервисов, упрощающих взаимодействие с банком. Один из них – SberPay. Учитывая его востребованность, предлагаем разобраться, что собой представляет данный сервис, и как пользоваться СберПэй на операционной системе Андроид в магазине.
Что это такое
Как правило, клиенты Сбербанка являются держателями кредитных и дебетовых карт. Это основной продукт организации, который позволяет расплачиваться за покупки. Но порой клиенту при походе в магазин приходится брать с собой сразу несколько карт, занимающих место в кошельке или в кармане.
В этой связи денежно-кредитная организация предлагает отказаться от использования физических карточек, поскольку в качестве платежного средства может выступать смартфон, который работает на операционной системе Android. Тогда для оплаты товара понадобится просто поднести мобильное устройство к терминалу, после чего произойдет транзакция.
Безопасно ли это
Поскольку речь идет о реальных деньгах, которые пользователь будет тратить при помощи мобильного устройства, важно отдельно остановиться на безопасности сервиса СберПэй. Банк заявляет, что при совершении транзакций все данные карты остаются в Сбере и не передаются на терминал. Кроме того, оплата товара возможна только после подтверждения через отпечаток, лицо или пароль. При желании вы всегда сможете отключить лишние варианты защиты.
Как настроить
Разобравшись с вводными данными касательно SberPay, можно переходить к практической части. Нам предстоит выяснить, как настроить работу сервиса, и что для этого понадобится.
Установка
Первым делом необходимо установить приложение, которое предлагает доступ к SberPay. В отличие от других платежных сервисов, для него не предусмотрено отдельной программы. СберПэй работает через фирменное приложение Сбер, доступное для скачивания в большинстве магазинов. Следовательно, в качестве первого этапа вам понадобится:
- Запустить Google Play Маркет или любой другой магазин приложений.
- При помощи поисковой строки найти «Сбер».
- На странице приложения нажать кнопку «Установить» и дождаться завершения инсталляции.
Обращаем ваше внимание, что в 2022 году приложение Сбербанка было удалено из магазина Play Маркет. Поэтому для загрузки софта придется использовать альтернативный магазин или устанавливать программу вручную при помощи APK-файла. Выполняя установку через APK, убедитесь, что файл был загружен с официального сайта. В противном случае никто не сможет гарантировать отсутствие вирусов в приложении.
Если вы успели загрузить приложение через Play Маркет до весны 2022 года, то оно продолжит работать, и вам не придется заморачиваться относительно его повторной установки.
Привязка карты
Зарегистрироваться в приложении Сбера может любой обладатель банковской карты этой денежно-кредитной организации, воспользовавшись следующей инструкцией:
- Запустите приложение после предварительной установки.
- Нажмите кнопку «Войти в Сбербанк Онлайн», а затем – «Нет логина или идентификатора».
- Введите номер банковской карты или отсканируйте ее.
- Придумайте пароль и при необходимости зарегистрируйте отпечаток.
Поскольку приложение Сбербанка регулярно обновляется, названия некоторых пунктов меню могут отличаться. Однако в любом случае принцип регистрации будет один и тот же. Вам понадобится указать данные банковской карты, после чего придумать пароль для доступа к сервису.
Подключение SberPay
После того, как вы добавили банковскую карту в приложение Сбера, необходимо активировать сервис SberPay. Для выполнения операции понадобится сделать несколько простых шагов:
- Запустить программу.
- Нажмите на одну из подключенных карт.
- Откройте «Настройки».
- Перейдите в раздел «Подключить SberPay».
- Нажмите кнопку «Подключить».
Если все сделано верно, то на экране появится сообщение об успешном подключении опции. Услуга является бесплатной, а ее подключение требуется только для того, чтобы подтвердить использование смартфона в качестве платежного средства.
Создание ярлыка
Для быстрого доступа к сервису вы можете создать ярлык на рабочем столе, который будет соседствовать с иконкой основного приложения Сбербанка. Предложение о создании ярлыка появляется сразу после подключения SberPay, а пользователю необходимо просто с ним согласиться.
Если предложение не появилось, или вы пропустили этот этап, то добавить ярлык можно постфактум:
- Найдите иконку Сбера на рабочем столе.
- На пару секунд задержите на ней палец.
- Выберите иконку SberPay и перетащите ее в любую свободную область экрана.
Данный способ работает на устройствах с Android 9 и более новой версией операционной системы. Если в диалоговом окне не отображается иконка СберПэй, понадобится переподключить сервис по инструкции, рассмотренной ранее.
Настройка телефона и NFC
Добавление банковской карты, а также подключение SberPay – это еще не конец настройки. Далее нужно настроить сам смартфон. Во-первых, предлагается сделать СберПэй платежным сервисом по умолчанию:
- Откройте настройки устройства.
- Перейдите в раздел «Подключение и общий доступ», а затем – «NFC».
- Откройте вкладку «Бесконтактные платежи», после чего – «Оплата по умолчанию».
- Среди предложенных вариантов выберите «SberPay».
Кроме того, не забудьте активировать датчик NFC. Сделать это можно через шторку уведомлений (центр управления), а также в одноименном разделе настроек смартфона.
Как оплачивать телефоном
Теперь можно перейти к описанию процесса оплаты. Совершение транзакций выполняется по инструкции, содержание которой будет напрямую зависеть от того, сделали ли вы SberPay платежным сервисом по умолчанию. Если да, то просто поднесите смартфон к терминалу и подтвердите совершение транзакции паролем или отпечатком.
Если в качестве приложения для оплаты был выбран другой сервис, вам придется воспользоваться ярлыком SberPay. Тапните по нему, а затем поднесите мобильное устройство к терминалу и подтвердите платеж. Также обращаем ваше внимание, что в обоих случаях предварительно требуется разблокировать смартфон.
Возможные проблемы
Сбербанк постарался сделать свой сервис максимально комфортным и понятным. Однако вы можете столкнуться с одной из следующих проблем:
- Не удается подключить SberPay к банковской карте. С 2022 года платежный сервис поддерживать только карты платежной системы МИР. Подключить СберПэй к Visa и MasterCard не получится.
- Не срабатывает оплата по умолчанию. Проверьте активацию SberPay, а также убедитесь в том, что сервис был выбран в качестве стандартного.
- Не срабатывает оплата внутри приложения. Проблема может заключаться как в деактивации датчика NFC, так и в неправильно выставленных настройках SberPay. Проверьте, что к сервису подключена рабочая карта.
Если вы столкнулись с проблемой, которая не была описана выше, для устранения неисправности обратитесь в службу поддержки Сбербанка. Сделать это можно на специальной странице, доступной на сайте организации.
Спустя полгода: бесконтактная оплата SberPay для смартфонов Android вернулась в строй
Команда СберБанка поделилась долгожданной хорошей новостью — снова начал работать сервис бесконтактной оплаты для владельцев Android-смартфонов с помощью сервиса SberPay.
С помощью SberPay теперь можно оплачивать покупки в магазинах и снимать наличные в банкоматах одним касанием телефона. Чтобы пользоваться сервисом, достаточно подключить к нему любую карту «Мир» в приложении «СберБанк Онлайн». Дополнительных приложений устанавливать не требуется. Для оплаты пользователю потребуется разблокировать телефон и поднести его к терминалу.
Сервис доступен на всех Android-смартфонах с поддержкой NFC и операционной системой версии 8.1 или выше. Чтобы начать пользоваться SberPay NFC, необходимо обновить приложение «СберБанк Онлайн» до версии 14.5.
Напомним, использование карт в электронном кошельке SberPay было временно ограничено в апреле 2022 года. Пользователям Сбера оставалась доступна оплата покупок на сайтах и в приложениях с картами СберБанка Mastercard, Visa и «Мир», а также такие способы бесконтактной оплаты, как «Плати QR» и «Оплата одним взглядом». С 14 июня СберБанк был отключён от международной системы передачи межбанковских платежей SWIFT.
SberPay – оплата телефоном от Сбербанка: как установить, как пользоваться?
9 июля 2020 года Сбербанк запустил свою платёжную систему, которая позволяет оплачивать покупки телефоном с NFC вместо карты. Как установить и как пользоваться SberPay, и что это вообще такое?
Что такое SberPay?
SberPay – это платёжная система для онлайн-покупок и для оплаты смартфоном вместо банковской карты. Популярные аналоги – Google Pay, Apple Pay и Samsung Pay.
При покупке в онлайн-магазинах или сервисах Вы сможете выбрать SberPay, войти в приложение «Сбербанк Онлайн» и нажать «Оплатить». Больше не нужно будет вводить номер карты и код подтверждения из смс-сообщения.
Также платёжная система SberPay позволяет оплачивать покупки в магазинах смартфоном вместо банковской карты, но для этого гаджет должен быть оснащён чипом NFC.
Помимо этого, SberPay позволяет снимать деньги с банкоматов без использования банковской карты. Для это также понадобится чип NFC в смартфоне. Подробнее об NFC Вы можете узнать в отдельной статье.
Как установить SberPay?
Платёжная система SberPay встроена в мобильное приложение «Сбербанк Онлайн» — дополнительно ничего устанавливать не нужно. Если же у Вас нет этого приложения, то можете ознакомиться с гайдом по его установке и подключению – здесь.
Также стоит отметить, что платёжные системы работают только с защищёнными смартфонами. Так что, если у Вас нет разблокировки телефона по паролю, графическому ключу, отпечатку пальца или скану лица – установите. Лично я предпочитаю отпечаток пальца + пароль в виде запасного способа.
Подключение SberPay в приложении «Сбербанк Онлайн»:
- Зайдите в приложение «Сбербанк Онлайн».
- Выберите одну из Ваших карт (с 10 марта 2022 из-за санкций принимаются только карты МИР) и в открывшемся окне в блоке «Платите смартфоном» нажмите на «Подключить SberPay».
- Ознакомьтесь с преимуществами SberPay и нажмите на кнопку «Подключить». Приложение проверит карту, подключит её к платёжной системе и предложит поставить SberPay системой бесконтактных платежей по умолчанию. Выберите вариант «Да». С номера 900 придёт смс-уведомление о том, что Ваша карта привязана к SberPay.
- Приложение предложит Вам включить NFC. Это важно, так как с выключенным NFC оплата смартфоном на кассе не пройдёт. Нажмите «В настройки», найдите NFC и включите эту функцию.
- Вернитесь назад в приложение «Сбербанк Онлайн» и нажмите на кнопку «Вернуться на главный».
Дополнительная информация:
- Зайдите в приложение «Сбербанк Онлайн».
- Выберите одну из Ваших карт и в открывшемся окне перейдите в «Настройки».
- Выберите SberPay, бесконтактную оплату от Сбербанка.
- Для повышения уровня безопасности используется виртуальный номер. Здесь указаны последние 4 цифры на тот случай, если у Вас их спросят при оплате.
- Чтобы ознакомиться с инструкцией по оплате покупки смартфоном, нажмите на значок с буквой «i» в правом верхнем углу.
Как пользоваться SberPay? Как оплатить покупку на кассе?
Есть два варианта – с минимальным количеством действий в приложении и двумя прикладываниями смартфона к терминалу оплаты или с активацией SberPay в приложении и одним прикладыванием смартфона к терминалу.
- Откройте приложение «Сбербанк Онлайн».
- Поднесите смартфон к терминалу.
- Разблокируйте устройство.
- Поднесите смартфон к терминалу ещё раз для совершения оплаты.
- Откройте приложение «Сбербанк Онлайн».
- Перейдите в «Платежи».
- Выберите «Оплата SberPay».
- Разблокируйте устройство.
- Поднесите смартфон к терминалу для совершения оплаты.
Мне первый вариант показался менее удобным, так как лучше заранее всё настроить и приложить смартфон для оплаты всего один раз. С другой стороны, при первом варианте после первого прикладывания смартфона на экране отобразится сумма, которая будет списана со счёта после второго прикладывания.
Кстати, если Вы надумаете отключить разблокировку телефона по паролю, то SberPay автоматически отключится, так как это обязательное требование безопасности. После этого активировать платёжную систему и добавлять карты придётся заново.
Также Вы можете ознакомиться с более свежим обзором настройки сервиса SberPay (с добавлением карт МИР): здесь. Возможно, там будут интересующие Вас детали, так как со временем приложение претерпело изменения.
Личное мнение
Я бы выделил следующие плюсы и минусы платёжной системы SberPay.
- Подключение банковских карт МИР от Сбербанка. Возможность добавлена в июне 2021 года.
- Безопасность. Кому-то понравится то, что на NFC записывается виртуальный номер карты, а не настоящий, а кому-то – то, что для оплаты обязательно нужно войти в приложение и разблокировать SberPay. Например, в Google Pay для оплаты покупки до 1000 рублей нужно просто приложить смартфон к терминалу, при этом смартфон может оставаться заблокированным.
- SberPay работает только с картами Сбербанка. Но на официальном сайте написано, цитирую, «Пока SberPay работает только с картами Сбербанка». Что может намекать на то, что в скором времени он может заработать и с картами других банков. Из-за неопределённости – минус.
- Долго и неудобно. Этот минус проистекает из второго плюса. Из-за нескольких разблокировок (вход в приложение, активация SberPay) нужно либо заранее подготавливать устройство, либо немного потупить в телефоне у терминала оплаты.
В целом же, я считаю, что дополнительный вариант при выборе платёжной системы для бесконтактной оплаты не повредит. Тем более, что есть такие люди, которые доверяют только Сбербанку, поэтому не добавляют данные своих карт, например, в Google Pay.
Обновление. Также рекомендую ознакомиться и с другой платёжной системой — МИР ПЭЙ.