Как принимать платежи в мобильном приложении: токенизация, NFC, оптическое сканирование и другие плюшки в одном SDK / Хабр

Что такое бесконтактная оплата телефоном?

Говоря простым языком, NFC (расшифровывается, как Near Field Communication) – это бесконтактная оплата через мобильное устройство, другими словами оплата картой через телефон. Эта технология была представлена миру ещё в далёком 2004 году. Она представляет собой высокочастотную связь между устройствами с целью передачи каких-либо данных.

На первый взгляд, она похожа на уже знакомый многим Bluetooth, однако поддерживается эта связь только в пределах небольшого радиуса – не более 10 см. Одна из основных областей применения – оплата за товары или услуги смартфоном, без необходимости задействовать в процессе банковскую карту.

“квадратный кошелек”

“Квадратный кошелек”” работает как на платформах IOS, так и на Android. Платежное приложение NFC, которое работает удивительно быстро, Square Wallet можно связать с вашей кредитной карточкой. Кроме того, приложение основано на местоположении, что означает, что магазин, в котором вы пытаетесь сделать платеж, знает, что вы инициировали транзакцию, и будет взимать плату, связанную с вашей учетной записью Square.

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

Alipay

До конца 2022 года планируется внедрение в Россию платежной системы от известного китайского гиганта электронной коммерции Alibaba. Первым партнером сервиса в апреле текущего года успел стать «Модульбанк». Позднее планируется оснастить специализированными терминалами магазины, специализирующиеся на продаже люксовых товаров, а также зоны duty-free в столичных аэропортах.

Как принимать платежи в мобильном приложении: токенизация, NFC, оптическое сканирование и другие плюшки в одном SDK / Хабр
Некоторые программы для проведения бесконтактной оплаты через nfc сопряжены с системами электронных денег.

Android pay

Для владельцев остальных смартфонов подойдет это приложение от компании Google, которое действует в России с 23 мая. Данная технология доступна для любых устройств, отвечающих следующим характеристикам:

  • версия Android не ниже 4.4;
  • наличие чипа для nfc платежей;
  • возможность использования системы эмуляции карт HCE.

Apple pay

Если вы счастливый (или не очень) обладатель iPhone и прочей техники Apple – с большой вероятностью ваш выбор именно Apple Pay. Ничего особенного – эдакий аналог Google Pay во всем. Добавили карту и спокойно платите. Никаких отдельных фич, никаких недостатков, все почти идеально.

Blue nfc

Blue NFC — это небольшая бесплатная программа, отправляющая файлы через Bluetooth с использованием функций NFC. Запускается функция этой программы из контекстного меню файла, который вы собираетесь передать. Далее следует выбрать устройство, на которое хотите отправить файл и начать передачу.

Huawei pay

Приложением могут воспользоваться владельцы некоторых моделей телефонов Huawei и Honor с NFC. Можно расплачиваться картами UnionPay, выпущенными банками Газпромбанк, Россельхозбанк, Восточный банк и Солидарность.

При оплате не надо разблокировать телефон и запускать приложение Huawei кошелёк (не забудьте в настройках телефона выбрать данное приложение основным при оплате через NFC). Не требуется подключение к интернет.

  1. Открыть приложение.
  2. Нажать на значок “ ”.
  3. Отсканируйте карту.
  4. Следуйте инструкциям на экране.

Nfc actions

NFC Actions это приложение для Android, которое помогает готовить скрипты Quick and Cloud Actions для тэгов NFC. После того, как скрипт будет подготовлен, его можно использовать для того, чтобы в момент приближения к тэгу запускалось определенное действие — отправлялась электронная почта, открывался определенный сайт, осуществлялась проверка в Foursquare и т.д

Nfc tasks launcher

NFC Tasks Launcher — это одна из наиболее популярных программ, предназначенных для этих целей. Она обладает богатым набором настроек, что позволяет решить широкий круг задач. В ней вы можете настроить и легко переключаться между профилями «Машина», «Дом» и «Офис».

Вы можете поместить тэг NFC в свою машину, офис, дом, спальню или гостиную, и профиль смартфона будет автоматически сменяться, а также будут запускаться программы, которые вы зададите для конкретных мест. Программ поддерживает тэги NFC Forum Type 1, Type 2, Type 3 и Type 4, а также тэги сторонних разработчиков.

Samsung pay

Samsung Pay – выделенное решение для владельцев телефонов Samsung. Как по мне, аналогия предыдущего, но из-за аппаратной разницы в телефонах здесь есть поддержка платежей не только в терминалах для стандартной бесконтактной оплаты, но и через старые магнитные полосы (чип MST).

Итого – если есть Samsung Pay, смело пользуйтесь им. Но некоторые предпочитают себе ставить через тот же Google Play стандартный Google Pay, т.к. и проще, и стал приниматься на сайтах. Оба приложения я бы не ставил, а выбрал что-то одно. Мой выбор по-прежнему за Google Pay.

Из явных плюсов именно этого приложения для оплаты через NFC – локальное хранение данных. Т.е. для создания карты и для оплаты интернет не нужен вообще. Т.е. в теории это может быть безопаснее хранения карты на Google серверах, при оплате за границей без интернета не возникнет проблему (Google Pay вроде как имел ограничение в 6 платежей без интернета).

Sberpay

SberPay, он же Сбербанк Пэй — система одноименного российского банка, которая работает только с его картами. Платежный сервис стал доступен в июле 2020 года и не имеет отдельного приложения, а интегрирован в программу мобильного банка Сбербанк Онлайн.

Чтобы привязать карту к SberPay, сделайте следующее: 

  • Откройте приложение мобильного банка и выберите свою карту.
  • Тапните по кнопке «Настройки».
  • Выберите опцию «Оплата телефоном SberPay» и подтвердите подключение. 
  • Если на смартфоне уже использовался другой сервис бесконтактной оплаты по умолчанию, например, Google Pay, приложение спросит, хотите ли вы изменить его на Сбер Пэй. 
  • Далее убедитесь, что включен NFC — и можете оплачивать покупки одним касанием.

ОБНОВЛЕНИЕ: с 10 марта добавить в SberPay можно только карты платежной системы МИР. 

Visa qiwi walle

При этом Киви сотрудничает с  прямыми конкурентами Mastercard — компанией Visa: партнеры начали сотрудничать еще в 2022 году, а в 2022 году запустили совместное приложение Visa PayWave, доступное на смартфонах с версией Android не ниже 4.4.

Если у Вас есть вопросы — Вы можете задать их в комментариях или подробнее почитать другую нашу статью по теме: «Что такое NFC в смартфоне и как им пользоваться«.

Бесконтактная оплата без nfc

Телефоны без функции NFC также можно использовать для бесконтактной оплаты. В этом случае платежи осуществляются по-другому. Оплата происходит по QR кодам. Приложение сканирует код и совершает перевод на указанные в нём реквизиты.

  1. Отсканируйте QR код.
  2. Введите необходимую сумму.
  3. Подтвердите операцию.

Перевод мгновенно поступит на счёт, так как обрабатывается через систему быстрых платежей (СБП).

Бесконтактных вам впечатлений!

Автор текста: Константин Савченко

Бесполезные приложения

Здесь я оставлю список приложений, которые активно упоминают другие обзорщики, но которое исключительно по моему мнению в наших русскоязычных странах являются бесполезными и не имеют какого-то будущего развития. Применять на свой страх и риск (возможно, этот список поможет тем, кто ограничен в Google сервисах или имеет странную платежную систему на борту околокитайского происхождения).

  • Visa PayWave (приложение NFC Payment) – требует снова привязаться к Google аккаунту.
  • MasterCard PayPass (не путать с их физическим PayPass).
  • PayPal (пользуюсь сервисом, но у нас функции NFC в нем не встречал, может просто горекопирайтеры писали обо всем для набивания знаков текста).
  • LifeLock Wallet.
  • Square Wallet (у одного человека в обзоре видел его переведенным – «Квадратный кошелек», смеялся 7 минут).

Большая тройка

Как бы мы не хотели написать здесь про что-то эксклюзивное, уйти от «большой тройки» приложений для NFC не получится. В любом случае лучшим решением для вас при доступности будут следующие:

  • Google Pay
  • Samsung Pay
  • Apple Pay

Начну с их краткого рассмотрения.

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

Для полного просветления читателя, к каждому приложению в этом разделе добавляю ознакомительное видео.

Взаимодействие смартфона и платформы tsm

Платформа TSM удаленно управляет чипами Secure Element в телефонах пользователей через безопасный канал связи, используя сам телефон в качестве модема. Ключи от Secure Element хранятся на специальных серверах HSM (Hardware Security Module), являющихся неотъемлемой частью TSM, и без участия последнего получить доступ к чипу невозможно.

На основании распоряжения поставщика услуги TSM записывает (или удаляет, например, в случае утери смартфона) данные карты в Secure Element, а также позволяет проводить удаленный аудит выпущенных карт или, например, просматривать актуальный баланс по картам оплаты проезда или картам лояльности для отображения на экране телефона.

Для какой именно выпущенной карты активировать режим оплаты выбирает пользователь, через пользовательское приложение «Кошелёк», которое отображает выпущенные и доступные для выпуска карты, а также принимает заявки на выпуск новых. Поставщик услуги, получая заявку на выпуск карты, передает эти данные Secure Element телефона через платформу TSM.

Достоинства и недостатки

ДостоинстваНедостатки
Плата за установку не взимаетсяСовместима только с устройствами на iOS
Нет дополнительных комиссий за операцииОграниченное количество банков-партнёров
Интуитивный интерфейс (много языков)Поддерживаются не все виды платёжных инструментов
Безопасность: Touch ID, Face ID, парольЛимит на регистрацию (8–12)
Совместимость с Apple WatchРаботает только на бесконтактных терминалах
Расширенные возможности управления сопряжёнными гаджетами
Быстрота обработки операций
Не передаёт личные финансовые данные на терминалы

Эппл Пэй доступен через софт Wallet.

Запись платежной карты в телефон

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

Первыми в РФ попытались перенести карту в телефон сотовые операторы, например, «МТС» и банк «Русский Стандарт», «Мегафон» и транспортная карта в г. Екатеринбург, «Билайн» и транспортная карта в г. Казань и т.п. Чтобы сделать это, им понадобилось закупить специальные SIM-карты с Secure Element, договориться с транспортной компанией или банком о записи на эти карты платежного приложения, осуществить процесс «контактной персонализации», а затем обменивать старые SIM-карты абонентов на новые.

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

Защита от приближения

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

Инициирование пользователя

Клиенты должны активно инициировать бесконтактный процесс оплаты, чтобы начать каждую транзакцию. Обычно это включает запуск соответствующего приложения NFC в телефоне для настройки соединения между устройством и читателем продавца. Таким образом, даже если злоумышленник становится достаточно близко, они не могут нанести вред в режиме ожидания.

Как привязать?

Нет, в этой статье я не хочу останавливаться на подробных инструкциях по привязке карт, тем более на нашем сайте уже есть такие:

Как происходит бесконтактная оплата

  1. При покупке включите телефон и приблизьте его к терминалу.
  2. Через пару секунд платёж будет обработан.

Как устроены пластиковые карты

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

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

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

Для пластиковой карты была важна определенная стандартизированная форма, чтобы карта могла быть считана в любом терминале, но с переходом к бесконтактным картам форма перестала иметь значение, что дает возможность использовать в качестве «носителя» карты (микропроцессора с платежным приложением) практически любой объект, будь то браслет, часы, брелок, пластиковую карту или телефон.

Кейс 1. привязываем карту клиента к бэкенду для регулярных списаний или платежей в 1 клик.

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

Для этого вам необходимо осуществить через мобильное приложение первый платеж с участием клиента, и желательно с 3D-Secure, заблокировав на карте небольшую сумму, например 1 единицу валюты. 3D-secure в данном случае необходим в первую очередь, чтобы обезопасить себя, как торговую точку, от финансовых претензий (чарджбеков) по будущим рекурентным списаниям, а во вторую очередь — чтобы улучшить конверсию, так как например по картам Сбербанка в России и Приватбанка в Украине в большинстве случаев транзакция без 3D-Secure не пройдет.


Итак, чтобы получить токен карты, необходимо передать параметры

requiredRecTokenverification

(более подробно как создать мобильное приложение смотрите в статье, ссылку на которую я указал в начале, а также в коде

на github):

order.setRequiredRecToken(true)
order.setVerification(true)

Параметр

requiredRecToken

требует возвратить токен карты при успешной авторизации карты, а

verification

— что средства с карты списывать не нужно, а достаточно их заблокировать, а потом вернуть (платежный шлюз возвращает их автоматически).


В ответ платежный шлюз вернет параметры

recToken

— токен карты,

recTokenLifeTime

— срок действия токена (по сути срок действия карты) и maskedCard — маскированный номер карты, который необходимо привязать в бекенде к токену для дальнейшего отображения клиенту при выборе способа оплаты.


Теперь, имея токен карты вы можете в любой момент по требованию клиента или при наступлении срока оплаты, вызвать метод

через server-to-server API и списать необходимую сумму.

Подводные камни:

По нашей статистике у довольно значимой части картодержателей не получается оплатить через 3DSecure на мобильном устройстве по ряду причин, от него и шлюза не зависящих:

— может не приходить SMS, или пользователь переключаясь между SMS-приложением и вашим, потерял форму с вводом пароля 3D-Secure, так как она открывается в WebView или системном браузере

— полезла верстка 3D-Secure страницы банка на смартфоне или планшете (банки очень редко адаптируют такие страницы)

— веб-сервер банка отключил поддержку небезопасного протокола TSL 1.0, что делает 3D-Secure недоступным для Android версии <4.1

Лайфхак:


Мы на платежном шлюзе умеем включать/отключать налету 3D-Secure, и если все-таки у клиента не получается оплатить, мы под него подстраиваемся, и пытаемся сделать оплату без 3D-Secure пароля.

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

Кейс 2. кастомизируем верстку формы ввода номера карты.

Часто возникает необходимость разместить поля для ввода номера карты, срока действия и cvv2 в другой последовательности, чем это предусмотрено стандартным layout в SDK. Но из-за требований PCI DSS вы не можете просто взять, и заменить поле ввода номера карты на стандартный компонент EditText.

Для этих целей мы разработали flexible layout. Flexible layout наследует стили вашего мобильного приложения и позволяет располагать элементы формы в любой последовательности и в любом дизайне и при этом предотвращает случайную передачу карточных данных на сторону вашего бекэнда.

Для организации ввода карты в SDK есть два механизма:CardInputView — готовый view для использования;CardInputLayout — лишь layout wrapper для потроение view в собственном стиле разметки.

По сути CardInputView = CardInputLayout CardNumberEdit CardExpMmEdit CardExpYyEdit CardCvvEdit.Упрощенную структуру CardInputView в XML можно запиться так:

Следовательно можно абсолютно свободно кастомизировать и располагать элементы ввода на сколько хватит фантазии. Есть лишь одно правило которое нужно соблюдать — каждый из элементов ввода (CardNumberEdit,CardExpMmEdit,CardExpYyEdit,CardCvvEdit) должен быть в CardInputLayout один раз, при этом не играет роли уровень вложенности View.
Вот как это может выглядеть:
Как принимать платежи в мобильном приложении: токенизация, NFC, оптическое сканирование и другие плюшки в одном SDK / Хабр
Подводные камни:
Кастомизируя поля ввода стоит помнить:
— cvv2 может быть длиной как 3, так и 4 символа
— номер карты может быть от 14 до 19 символов
— можно добиться максимально точной кастомизации к вашему дизайну, сделав форк SDK и внеся изменения уже в своей реализации layout (это не запрещено делать, если вы не начинаете пропускать реквизиты карты через свой бэкенд). Но сделав форк вы теряете поддержку обновлений SDK со стороны шлюза и интеграцию новых фич
Лайфхак:
Часто можно встретить на форме ввода реквизитов карты инпуты для ввода имени и фамилии картодержателя и его ZIP кода. Для платежей по СНГ нет практической необходимости это делать в 99% случаев — только некоторые банки США, Канады и Великобритании поддерживают эту технологию, которая называется Address Verification System, при этом чтобы проверка сработала, ее должны поддерживать как банк-эквайер, так и банк-эмитент
Как принимать платежи в мобильном приложении: токенизация, NFC, оптическое сканирование и другие плюшки в одном SDK / Хабр

Кейс 3. подключаем возможность сканирования карты через камеру и nfc

Функция оптического сканирования карты реализована для Android в библиотеке

, для iOS в библиотеке

с использованием


NFC сканирование реализовано при помощи библиотек

и доступно только для Android. Хотя Apple и

сторонним разработчикам возможность читать RFID метки, но чтение EMV тегов с банковских карт по прежнему остается недоступным.

Пример демо-приложения для использования NFC


package com.cloudipsp.nfcexample;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Patterns;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.Toast;

import com.cloudipsp.android.Card;
import com.cloudipsp.android.CardInputView;
import com.cloudipsp.android.Cloudipsp;
import com.cloudipsp.android.CloudipspWebView;
import com.cloudipsp.android.Currency;
import com.cloudipsp.android.Order;
import com.cloudipsp.android.Receipt;
import com.cloudipsp.nfc.NfcCardBridge;

public class MainActivity extends Activity implements View.OnClickListener {
    private static final int MERCHANT_ID = 1396424;

    private EditText editAmount;
    private Spinner spinnerCcy;
    private EditText editEmail;
    private EditText editDescription;
    private CardInputView cardInput;
    private CloudipspWebView webView;

    private Cloudipsp cloudipsp;
    private NfcCardBridge nfcCardBridge;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        nfcCardBridge = new NfcCardBridge(this);

        findViewById(R.id.btn_amount).setOnClickListener(this);
        editAmount = (EditText) findViewById(R.id.edit_amount);
        spinnerCcy = (Spinner) findViewById(R.id.spinner_ccy);
        editEmail = (EditText) findViewById(R.id.edit_email);
        editDescription = (EditText) findViewById(R.id.edit_description);
        cardInput = (CardInputView) findViewById(R.id.card_input);
        cardInput.setHelpedNeeded(true);
        findViewById(R.id.btn_pay).setOnClickListener(this);

        webView = (CloudipspWebView) findViewById(R.id.web_view);
        cloudipsp = new Cloudipsp(MERCHANT_ID, webView);

        spinnerCcy.setAdapter(new ArrayAdapter<Currency>(this, android.R.layout.simple_spinner_item, Currency.values()));

        if (savedInstanceState == null) {
            processIntent(getIntent());
        }
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_amount:
                fillTest();
                break;
            case R.id.btn_pay:
                processPay();
                break;
        }
    }

    private void fillTest() {
        editAmount.setText("1");
        editEmail.setText("test@test.com");
        editDescription.setText("test payment");
    }

    private void processPay() {
        editAmount.setError(null);
        editEmail.setError(null);
        editDescription.setError(null);

        final int amount;
        try {
            amount = Integer.valueOf(editAmount.getText().toString());
        } catch (Exception e) {
            editAmount.setError(getString(R.string.e_invalid_amount));
            return;
        }

        final String email = editEmail.getText().toString();
        final String description = editDescription.getText().toString();
        if (TextUtils.isEmpty(email) || !Patterns.EMAIL_ADDRESS.matcher(email).matches()) {
            editEmail.setError(getString(R.string.e_invalid_email));
        } else if (TextUtils.isEmpty(description)) {
            editDescription.setError(getString(R.string.e_invalid_description));
        } else {
            final Currency currency = (Currency) spinnerCcy.getSelectedItem();
            final Order order = new Order(amount, currency, "vb_"   System.currentTimeMillis(), description, email);
            order.setLang(Order.Lang.ru);
            final Card card;
            if (nfcCardBridge.hasCard()) {
                card = nfcCardBridge.getCard(order);
                cardInput.display(null);
            } else {
                card = cardInput.confirm();
            }

            cloudipsp.pay(card, order, new Cloudipsp.PayCallback() {
                @Override
                public void onPaidProcessed(Receipt receipt) {
                    Toast.makeText(MainActivity.this, "Paid "   receipt.status.name()   "nPaymentId:"   receipt.paymentId, Toast.LENGTH_LONG).show();
                }

                @Override
                public void onPaidFailure(Cloudipsp.Exception e) {
                    if (e instanceof Cloudipsp.Exception.Failure) {
                        Cloudipsp.Exception.Failure f = (Cloudipsp.Exception.Failure) e;

                        Toast.makeText(MainActivity.this, "FailurenErrorCode: "  
                                f.errorCode   "nMessage: "   f.getMessage()   "nRequestId: "   f.requestId, Toast.LENGTH_LONG).show();
                    } else if (e instanceof Cloudipsp.Exception.NetworkSecurity) {
                        Toast.makeText(MainActivity.this, "Network security error: "   e.getMessage(), Toast.LENGTH_LONG).show();
                    } else if (e instanceof Cloudipsp.Exception.ServerInternalError) {
                        Toast.makeText(MainActivity.this, "Internal server error: "   e.getMessage(), Toast.LENGTH_LONG).show();
                    } else if (e instanceof Cloudipsp.Exception.NetworkAccess) {
                        Toast.makeText(MainActivity.this, "Network error", Toast.LENGTH_LONG).show();
                    } else {
                        Toast.makeText(MainActivity.this, "Payment Failed", Toast.LENGTH_LONG).show();
                    }
                    e.printStackTrace();
                }
            });
        }
    }

    @Override
    public void onBackPressed() {
        if (webView.waitingForConfirm()) {
            webView.skipConfirm();
        } else {
            super.onBackPressed();
        }
    }

    @Override
    public void onNewIntent(Intent intent) {
        super.onNewIntent(intent);

        processIntent(intent);
    }

    private void processIntent(Intent intent) {
        if (nfcCardBridge.readCard(intent)) {
            Toast.makeText(this, "NFC Card read success", Toast.LENGTH_LONG).show();
            nfcCardBridge.displayCard(cardInput);
        }
    }
}

Отличается от обычной реализации наличием NfcCardBridge и навешиванием Intent на него для ожидания события, что карта прочитана (readCard)

Подводные камни:


Хотя считывание карты и выполняется посредством NFC, протоколом финансовой авторизации карты по-прежнему служит обычный card not present. Т.е. для полноценной работы этой функциональности, карта должна быть открыта для платежей в интернет.

Лайфхак:

Написав простое приложение, вы сможете использовать его для перевода средств с чужой карты на свою, поднеся чужую карту к телефону. Например это может быть удобно, если вам необходимо списать небольшую сумму с друга в счет карточного долга. С одной стороны это будет практично и удобно, с другой — вполне эффектно.

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

Ключевой функционал android pay

К наиболее популярным функциям относятся:

  • эмуляция банковских карт (Visa, MasterCard);
  • регистрация карт лояльности, бонусных систем, транспортных;
  • осуществление бесконтактных платежей в супермаркетах, магазинах, на заправках, в кафе и ресторанах;
  • возможность интернет-платежей (на сайтах, где есть специальная пометка).

Кошелек pay

Еще один сервис для бесконтактной оплаты интегрирован в приложение для хранения дисконтных карт Кошелек. В него также можно добавить банковскую карточку и оплачивать ей покупки через NFC. Подробнее о том, как это работает, мы рассказывали в отдельной статье, но вкратце опишем главные особенности приложения.

Во-вторых, платежный сервис поддерживает только карты Mastercard или Visa. Если ваша основная карточка выпущена в системе МИР, используйте Mir Pay. 

Добавить карту в приложение и сделать его основным способом бесконтактной оплаты довольно просто: 

  • На главном экране нажмите на плюсик в правом верхнем углу.
  • В разделе «Добавить свое» выберите «Банковская карта».
  • Введите реквизиты карты вручную или прислоните ее к смартфону, чтобы приложение считало ее номер и срок действия. 
  • Примите условия приложения и введите проверочный код, который придет в SMS от банка. 
  • Кошелек спросит, хотите ли вы использовать его как основной способ оплаты. Подтвердите действие — и сможете оплачивать покупки смартфоном.

С Кошелек Pay уже работают многие популярные банки: Альфа, Тинькофф, Райффайзен, Газпромбанк, Русский Стандарт. Однако сервис не принимает карточки Сбера — что довольно логично, ведь у этого банка есть свой собственный SberPay. 

Любая карта в любом телефоне

Платежные карты в телефон не переносятся, не привязываются и не дублируются, а именно выпускаются. Для выпуска карты поставщик услуги должен подключиться к TSM, а TSM должен иметь доступ к Secure Element. Поэтому на сегодня пока еще невозможно выпустить любую карту в любой телефон, но движение идет именно в этом направлении.

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

Насколько безопасны платежи nfc?

Мобильные платежи NFC, включающие платежные приложения, динамически шифруются, что делает их одним из самых безопасных способов оплаты. Вся цель платежей и приложений NFC, разработанных компаниями-разработчиками, заключается в том, чтобы сделать платежи легко и безопасно, заменив ваши карты мобильным кошельком, который вы не можете легко потерять или украсть. Технология NFC почти гарантирует безопасность платежей, обеспечивая следующее:

Настройка nfc для оплаты

Как же установить настройки так, чтобы можно было платить телефоном с nfc без помощи банковской карты? Для смартфонов на ОС Android необходимо сначала зайти в главное меню, затем в раздел настроек. Там выбрать “Беспроводные сети”, далее нажать “Ещё”.

Для гаджетов от компании Apple никаких подобных действий не требуется. Пункта в меню, выделенного специально для NFC, вы не найдёте. Для активации этой функции надо только установить эппл пэй и зарегистрировать карту.

Первичная настройка

  1. Установите одно из приложений для бесконтактной оплаты (ссылки ниже).
  2. Активируйте функцию NFC в настройках телефона. Там же выберите приложение, которое будете использовать (раздел может называться “Бесконтактная оплата”, “Платёж одним касанием” или др.).
  3. Добавьте платёжную карту в приложении.

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

Для того чтобы воспользоваться мобильным телефоном в качестве носителя платежных карт, в него необходимо установить похожий микропроцессор, куда можно будет записывать платежные приложения. Такой микропроцессор в телефоне называется Secure Element, а NFC-модуль выполняет функции контроллера.

Secure Element может быть либо встроенным в материнскую плату телефона, либо находиться на отделяемом модуле: SIM-карте или SD-карте.

В новой версии OS Android 4.4. KitKat появилась возможность выполнения «карточных» приложений без использования Secure Element благодаря Host Card Emulation (HCE). Таким образом сама операционная система позволяет эмулировать карты, данные которых, в свою очередь, могут храниться либо в ней же (допустимо для карт лояльности и скидочных карт, не требующих высокой степени безопасности), либо все в том же Secure Element (для банковских и транспортных карт, требующих надежного хранилища), либо даже на сервере в интернете (однако в таком случае для совершения платежа потребуется быстрый и стабильный интернет).

Плюсы и минусы оплаты через телефон

К несомненным плюсам использования этой технологии можно отнести:

  1. Безопасность. Соединение между устройствами устанавливается всего на долю секунды, а радиус воздействия составляет всего несколько сантиметров. Благодаря этому, можно, например, оплачивать покупки в магазине и не беспокоиться о сохранности своих данных.
  2. Удобство. Технология работает таким образом, чтобы вмешательство в процесс было минимальным. К примеру, банковская карта привязывается к телефону один раз и впоследствии вносить никаких данных для оплаты не требуется.
  3. Небольшой размер. Чип NFC очень небольшой и никак не влияет на размер гаджета или его вес.
  4. Экономия энергии. Сам по себе этот чип не требует больших затрат энергии, а значит существенно на время работы смартфона это не отразится.
  5. Не требует доплат. У NFC нет никаких абонентских плат или других периодичных платежей.
  6. Скорость покупок. Искать карту в сумке или карманах, а затем набирать пин-код нет необходимости, а значит совершить оплату можно немного быстрее.

Но всё же стоит обратить внимание на некоторые нюансы, которые следует сразу запомнить:

  1. Не все смартфоны имеют чип-NFC. Эта технология довольно распространена и встречается на мобильных устройствах самых разных производителей, но всё же на данный момент не каждый телефон поддерживать функцию бесконтактной оплаты.
  2. Чип работает за счёт питания смартфона, а значит если телефон будет выключен или у него сядет батарейка – оплату произвести не получится.
  3. Некоторые компании и учреждения не используют технологию в своих заведениях. Иными словами, не во всех платёжных терминалах стоит чип, благодаря которому можно расплатиться только смартфоном.
  4. Так как у технологии низка скорость передачи – не рекомендуется с её помощью пересылать крупные файлы, такие как фото, видео, аудио.

Стоит отметить, что последний пункт не столь критичен, ведь чаще всего NFC всё-таки используют для оплаты товаров или услуг.

Приложение «кошелёк»

Приложение «Кошелёк» не является электронным кошельком или платежной системой, как скажем, многим известный Visa QIWI Wallet и аналоги. «Кошелёк» — это в первую очередь универсальный интерфейс к приложениям (картам) в Secure Element. Благодаря такому подходу, телефон становится «универсальной интерактивной пластиковой картой».

Основная роль приложения заключается в отображении выпущенных или доступных к выпуску карт и обеспечении канала связи между Secure Element и TSM. Также «Кошелёк» дает пользователю возможность интерактивно управлять картами, загруженными в Secure Element.

Приложение предустанавливается на совместимые телефоны на производстве или добавляется с обновлением программного обеспечения таких телефонов (на момент написания текста это HTC One, Philips W8555 и Philips Xenium W336, а в ближайшее время добавятся HTC One Dual SIM, HTC One Max, HTC One SV, HTC Desire 500 и HTC Desire 600). Другие модели и производители появятся позже.

Первая карта, которая доступна в «Кошельке» уже сегодня — предоплаченная банковская карта «ТКС Банка». «Предоплаченная» означает, что карта выпускается без заключения письменного договора с банком, не связана с вашими другими картами в банке, а также в соответствии с законодательством РФ имеет ограничения на одну операцию (не более 15 000 рублей) и общую сумму операций за месяц (не более 40 000 рублей). При выполнении заявки пользователя на выпуск, карта доставляется в телефон в среденем в течение 10 минут.

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

Приложения nfc, необходимые для безопасных транзакций

Приложения NFC позволяют пользователям платить напрямую со своих смартфонов после того, как они запрограммировали свои банковские реквизиты. Примерами этих приложений являются Apple Pay и Android Pay. В то время как Apple Pay и Android Pay являются самыми популярными приложениями для платежей NFC, они не являются единственными приложениями NFC, которые вы можете использовать для безопасных транзакций.

Приложения NFC, необходимые для безопасных транзакций

Приложения для оплаты с nfc

Оплата происходит телефоном с функцией NFC. Несколько платежей можно совершить без подключения к интернет. В приложении привязывается платёжная карта.

Проверка безопасности

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

Создание меток nfc

Технология NFC разрешает создавать и читать различные метки. Суть работы данной функции напоминает работу QR-кода, но при этом используется не камера, а чип-метка небольшого размера, что встраивается куда угодно: на этикетки, ценники, визитки и другие предметы.

Метка необходима, чтобы задавать устройству определенные действия: отправить сообщение или письмо по электронной почте, позвонить определенному контакту, открыть приложение, настроить будильник т др.

Чтобы настроить данную функцию, необходимо:

  • купить NFC метку;
  • считать ее своим гаджетом;
  • внести информацию о том, какое действие нужно выполнить;
  • разместить метку в любом удобном месте.

Когда устройство попадет в радиус ее действия, оно считает задачу, и технология автоматически начнет ее выполнение.

Технология nfc или оплата картой через телефон

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

Это очень экономит время, а также снимает необходимость носить всегда карту с собой. Одной из важнейших характеристик NFC можно назвать высокую скорость её работы – 0,1 секунды, при чём для активации не требуется совершать никаких дополнительных действий. Достаточно просто поднести свой смартфон к платёжному терминалу и контакт между двумя гаджетами установится автоматически.

Так как радиус действия этой технологии невелик – на планшетах и других крупногабаритный устройствах обычно клеится специальная наклейка с указанием местоположения чипа.

Режим работы у NFC-чипа бывает двух видов:

  1. Активный. Режим взаимного обмена файлами между двумя устройствами.
  2. Пассивный. Режим приёма или передачи файлов без учёта обратной связи ( чаще всего такой режим используется как проездной или пропуск).

Тинькофф

Для быстрой оплаты по QR коду надо войти в приложение. Далее раздел “Платежи”. Находим и нажимаем пункт “Оплатить по QR или фото”.

Наводим камеру на код. На экране появятся реквизиты организации. В нижней части есть поле для ввода суммы платежа (вписываем нужную сумму) и жмём “Перевести”.

Топ-функционал системы

Наиболее важные функции:

  • оплата в магазинах, приложениях, онлайн;
  • регистрация платёжных, подарочных, скидочных карт;
  • возможность пополнения банковских карт знакомых, родственников (пока есть только в США);
  • оплата проезда в транспорте;
  • работа с NFC метками (автоматизация устройства и других сопряжённых гаджетов);
  • управление другим оборудованием (например, авто).

Удаленная загрузка карт

К счастью, телефон является интерактивным устройством, которое всегда на связи. Следовательно, в него можно удаленно записывать платежные карты и именно тех поставщиков услуг, которые нужны конкретным пользователям. Для осуществления этой функции была сформулирована роль TSM (Trusted Service Manager), который объединяет с одной стороны поставщиков услуг (Service Provider TSM), а с другой стороны чипы Secure Element в любых форма-факторах (Secure Element Issuer TSM).

TSM позволяет владельцам Secure Element не интегрироваться с каждым поставщиком услуг и не отвозить к ним всем «носители карт» для контактной персонализации, а поставщикам услуг не подключаться ко всем операторам и производителям телефонов. Сотовым операторам, производителям телефонов и поставщикам услуг достаточно подключиться к TSM по стандартному протоколу и они одновременно интегрируются с множеством партнеров.

Управление картами

Любое из приложений даёт своим пользователям возможность добавить несколько карт. Эти карты могут быть выпущены разными банками. По умолчанию основной картой для оплаты является та, данные которой внесли в первую очередь. Однако, это можно скорректировать в настройках установленного приложения.

Технология nfc проста и удобна в использовании. За весь период её существования она по достоинству оценена как владельцами современных смартфонов, так и различных коммерческих заведений. Бесконтактная оплата в ускоренном темпе внедряется в самых разных сферах, так как это позволяет выстраивать более позитивную и продуктивную коммуникацию между компаниями и их клиентами.

Функции и суть работы nfc

«Технологии NFC» в переводе означает – коммуникация рядом находящегося поля. То есть, два устройства, поддерживающих данную функцию, могут контактировать, когда находятся поблизости. NFC в смартфонах также позволяет обмениваться ссылками и файлами, а если установить специальное приложение, можно создавать метки.

Суть работы данной технологии напоминает Bluetooth, но NFC имеет несколько преимуществ. Она позволяет совершать бесконтактные платежи и имеет небольшой радиус действия, что исключает возможность перехвата денежных средств. Соединение между двумя устройствами происходит намного быстрее, чем  при использовании Bluetooth.

Samsung указывает надпись NFC прямо на аккумуляторе смартфонов, Sony размещает эту информацию на корпусе устройства.  Но самый удобный способ проверить наличие данной функции – через меню. Для этого необходимо:

  • открыть настройки своего гаджета;
  • зайти в раздел беспроводных сетей и выбрать «Еще»;
  • здесь появится пункт настройки NFC.

Безопасность – одно из главных преимуществ NFC технологии. Доступ к устройству работает только в радиусе 10 см. Гаджеты соединяются практически мгновенно, исключением могут быть только устройства с разным расположением NFC, им понадобится 5–10 секунд времени. При передаче информации таким образом тратится минимальное количество энергии.

Рисунок 1. Поиск и настройка NFC на андроиде.

Юмани

С кошельком юмани можно оплачивать товары через телефон, используя бесконтактные платежи. Сам кошелёк пополняется разными способами, включая карты Visa, Mastercard, МИР, UnionPay, наличными в банкоматах, быстрыми платежами СБП и др.

  1. Установите приложение.
  2. Зарегистрируйтесь в нём.
  3. Зайдите в раздел “Карты”.
  4. Выберите пункт “Бесконтактная бесплатно”.
  5. Далее жмём “Получить мгновенно”.
  6. Приложение предложит выбрать его основным для оплаты. Нажимаем “Да”.
  • Без подключения к интернет можно совершить 10 операций. Далее потребуется подключение к сети.
  • Пополнить кошелёк без комиссии можно через Сбербанк.
  • Для пополнения кошелька можно привязать карты разных платёжных систем.
  • При оплате используется подтверждение платежа паролем либо отпечатком пальца.

Яндекс.деньги

Поддерживают данную технологию с апреля 2022 года, сотрудничая с Mastercard. С их помощью легко осуществлять оплату в магазинах, паркоматах, железнодорожных вокзалах и метро.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector