Оплата токеном - это технология оплаты в магазинах и интернете с помощью некоторых мобильных устройств, основные производители которых предоставляют средства для проведения платежей через систему токенизации, например, Apple Pay, Samsung Pay или Google Pay.
Возможны 4 варианта проведения оплаты:
Ассист предоставляет возможности организовать приём платежей токенами по всем 4 вариантам. Однако, отдельные провайдеры токенов поддерживают не все варианты проведения платежей. В таблице ниже представлены возможные варианты организации платежей токенами с использованием разных провайдеров.
Провайдер токена | POS оплата | Оплата по кнопке в мобильном приложении (InApp) | Оплата в браузере на стороне АПК Ассист (Web) | Оплата в браузере на стороне магазина (Web) |
Apple Pay | Через приложение Assist.mPOS + считыватель карт | С использованием Assist.SDK для iOS или Apple Pay SDK + сервис TokenPay | Поддерживается только при платеже в браузере Safari на платформе MacOS | Только в браузере Safari на платформе MacOS, используя примеры работы с ApplePay JS API с сайта разработчиков Apple Pay и сервис TokenPay |
Samsung Pay | Через приложение Assist.mPOS+ считыватель карт | С использованием Samsung Pay SDK + сервис TokenPay | Через интеграцию с платежными страницами АПК Ассист или из мобильного приложения через WebView | Не поддерживается со стороны Samsung Pay |
Google Pay* | Через приложение Assist.mPOS+ считыватель карт | С использованием Google Pay API + сервис TokenPay | Платеж на мобильном устройстве, через браузер с поддержкой Payment Request API при переходе на платежную страницу Ассист с сайта магазина или из мобильного приложения магазина через WebView. | При платеже на мобильном устройстве, через браузер с поддержкой Payment Request API: используя примеры кода по работе с Payment Request API на сайте разработчиков Google и сервис TokenPay |
*В настоящий момент в рамках Google Pay поддерживается оплата только токенизированной картой (ранее такой метод оплаты имел название Android Pay). Оплата привязанными к аккаунту Google картами невозможна в связи с ограничениями банков.
Таким образом, для разработчиков мобильных приложений доступны следующие варианты проведения оплаты:
Для Apple Pay:
Для Google Pay:
Для Samsung Pay: только оплата по кнопке на платежной странице АПК Ассист:
Для приёма платежей токенами на web-сайте магазина доступны следующие варианты:
Для Google Pay: только при открытии платёжной страницы на мобильном устройстве в браузере с поддержкой Payment Request API:
Для Samsung Pay:
Для Apple Pay только при открытии платёжной страницы в браузере Safari на платформе MacOS::
При проведении оплаты токеном по кнопке в мобильном приложении выполняются следующие действия:
Действия с 2 до 6 могут быть выполнены однократным обращением к SDK Assist:
Если в мобильном приложении предприятия (магазина) SDK Assist не используется, то для создания шифрованного пакета с данными о платеже необходимо использовать соответствующий SDK – Apple Pay SDK для IOS или Google Pay API для Android. Созданный шифрованный пакет с данными о платеже затем должен передаваться в АПК Ассист через сервис TokenPay.
Для организации приема платежей через кнопку в мобильном приложении нужно выполнить следующие подготовительные шаги:
При проведении оплаты токеном по кнопке в мобильном приложении выполняются следующие действия:
Если в мобильном приложении предприятия (магазина) SDK Assist не используется, то для создания шифрованного пакета с данными о платеже необходимо использовать SDK Google Pay API для Android. Созданный шифрованный пакет с данными о платеже затем должен передаваться в АПК Ассист через сервис TokenPay.
При проведении оплаты токеном по кнопке в мобильном приложении выполняются следующие действия:
Если в мобильном приложении предприятия (магазина) SDK Assist не используется, то для создания шифрованного пакета с данными о платеже необходимо использовать SDK Google Pay API для Android. Созданный шифрованный пакет с данными о платеже затем должен передаваться в АПК Ассист через сервис TokenPay.
Внимание! В полученном ответе необходимо проверить значение параметра testmode. Если платеж был выполнен в тестовом режиме (testmode=1), то отгружать товар или оказывать услугу по текущему заказу не требуется. |
Пример результата запроса в формате JSON:
{"order": { "ordernumber":"26012015_4" ,"billnumber":"5899110210668265" ,"testmode":"0" ,"ordercomment":"тестовый платеж" ,"orderamount":"24.00" ,"ordercurrency":"RUB" ,"firstname":"" ,"lastname":"" ,"middlename":"" ,"email":"" ,"orderdate":"26.01.2015 17:25:39" ,"orderstate":"Timeout" ,"fraud_state":"" ,"fraud_reason":"" ,"checkvalue":"85C6C974AADC1CADFCFD195730ED090B" ,"operations":[ {"billnumber":"5899110210668265.1" ,"operationtype":"100" ,"operationstate":"TimeOut" ,"amount":"24.00" ,"currency":"RUB" ,"clientip":"10.20.10.85" ,"ipaddress":"0.0.0.0" ,"meantype_id":"61" ,"meantypename":"SamsungPay" ,"meansubtype":"" ,"meannumber":"" ,"cardholder":"" ,"issuebank":"UNKNOWN" ,"bankcountry":"UNKNOWN" ,"responsecode":"AS200" ,"message":"Data input timeout." ,"customermessage":"Data input timeout." ,"recommendation":"" ,"approvalcode":"" ,"protocoltypename":"NET" ,"processingname":"" ,"operationdate":"26.01.2015 17:25:39" ,"authresult":"" ,"authrequired":"" ,"slipno":""} ] } ,"packetdate":"26.01.2015 18:16:19" } |
Диаграмма оплаты по токену