Сигнатура метода
Отображает диалог оплаты для конечного продукта. Для успешной оплаты серверный callback со стороны разработчика должен подтвердить оплату, иначе оплата закончится неудачей и средства будут возвращены пользователю. После успешного завершения транзакции приложение получит уведомление «ok» и JSON с amount как данные, иначе он получит уведомление «error».
Имя | Требуется | Тип | Описание |
---|---|---|---|
name | Да | String | Наименование продукта, например: 1 яблоня |
description | Да | String | Описание продукта, например: Золото позволяет покупать полезные вещи в игре |
code | Да | String | Идентификатор продукта, кодирующий продукты, сумму и т. п. в свободном формате |
price | Да | int | Общая стоимость в виртуальной валюте портала |
options | Нет | String | Устарело. Всегда null. |
attributes | Нет | String | Кодированные JSON пары ключей/значений, содержащие дополнительные параметры транзакции, которые будут переданы на сервер |
currency | Нет | String | Валюта платежа, на данный момент поддерживается только ok (по умолчанию) |
callback | Нет | String | false (по умолчанию) - обновить приложение после успешного выполнения транзакции, true - не обновлять приложение, а уведомить с помощью обратной связи (см. раздел API_callback) |
uiConf | Нет | String | Кодированные JSON пары ключей/значений, содержащие конфигурацию для отображения UI диалога оплаты. См. раздел «Возможные значения атрибута uiConf» ниже. |
Возможные значения атрибута uiConf
Ключ | Требуется | Тип | Описание |
---|---|---|---|
popLayer.payment.cards.mastercardOnly | Нет | Boolean | Указывает, требуется ли отображение инструкций о том, что оплата возможна только с помощью Mastercard |
popLayer.payment.custom | Нет | String | Имя относящегося к приложению заголовка и описание на экране платежа |
popLayer.payment.sms.enabled | Нет | Boolean | Указывает, требуется ли отображение способа оплаты через SMS, если для оплаты используется валюта RUR |
popLayer.payment.productHash | Нет | String | Валидационный хеш для защиты цены от подделки. Хеш должен быть сгенерирован только на сервере, поскольку секретный ключ приложения не должен быть доступен на клиенте. Валидация включается по запросу в поддержку |
productHash содержит шестнадцатеричное представление SHA-256 от UTF-8 строки code:price:secretKey
Например, для продукта Apple с ценой 5ОК и секретным ключом приложения 9DC54A7008D30D1E0E748F37:
popLayer.payment.productHash = SHA-256(“Apple:5:9DC54A7008D30D1E0E748F37”) = 00d8ff0c8c997fae89922dde39868da0fd4dedac8f18dfc1cced427b35c52155