Платежный виджет
Установка виджета
Для установки виджета необходимо прописать на сайте скрипт в раздел head:
<script type="text/javascript" src="//bundle.gbpayments.io/js/widget"></script>
Для появления платежной формы зарегистрировать функцию для вызова методов charge или auth:
function widget() {
GP.widget.auth({
siteId: 'site_0000000000000000001', // Идентификатор из личного кабинета
formId: 1003, // Идентификатор платежной формы
formData: {}, // Данные формы
amount: 100, // Сумма платежа в копейках
currency: 'RUB', // Код валюты
orderId: 1, // Идентификатор заказа в системе продавца
description: 'Оплата заказа', // Описание платежа
accountId: 'user10', // Идентификатор пользователя в системе продавца
email: 'user@domain.com', // Адрес почты пользователя
emailRequired: false, // Обязательность e-mail, по умолчанию - true
applePay: true, // Включить возможность оплаты через Apple Pay
googlePay: true, // Включить возможность оплаты через Google Pay
}).success(function(options) { // успешная оплата
// действие при успешной оплате
// options содержит параметры переданные при вызове виджета
}).fail(function(reason, options)) { // ошибка при совершении платежа
// reason содержит строку с ошибкой
// options содержит параметры переданные при вызове виджета
});
}
Описанную функцию можно использовать, например при нажатии на кнопку:
$('#button').click(widget);
Демонстрация работы виджета представлена в нашем демо-магазине. Для тестирования можно использовать данные любой карты. Списания денежных средств не произойдет.
Параметры
Вызов функции charge или функции auth определяет схему проведения оплаты:
- charge - для одностадийной,
- auth - для двухстадийной.
Параметр | Формат | Обязательный | Описание |
---|---|---|---|
siteId | string | Да | Идентификатор сайта из личного кабинета |
formId | int | Нет * |
Идентификатор платежной формы |
formData | object | Нет | Данные формы по умолчанию |
amount | int | Нет * |
Сумма платежа в копейках |
currency | string | Нет | Код валюты: RUB (по умолчанию) |
orderId | string|int | Нет * |
Идентификатор заказа в системе продавца |
description | string | Нет | Описание платежа |
accountId | string|int | Нет | Идентификатор пользователя в системе продавца |
string | Нет | Адрес почты пользователя, который будет указан в поле по умолчанию | |
emailRequired | bool | Нет | Обязательно ли указывать e-mail. Если параметр не указан - обязательно. |
applePay | bool | Нет | Разрешить пользователю использовать Apple Pay для оплаты. Параметр будет обработан только в том случае, если в настройках сайта подключен Apple Pay. По умолчанию: true |
googlePay | bool | Нет | Разрешить пользователю использовать Google Pay для оплаты. Параметр будет обработан только в том случае, если в настройках сайта подключен Google Pay. По умолчанию: true |
*
- если параметрformId
не указан, параметрыamount
иorderId
являются обязательными.
Вызов метода (auth или charge) возвращает объект, с доступными методами success, fail, которые информируют об успешности или неуспешности платежа.
var result = GP.widget.auth({});
result.success(function(options) {
// Действие в случае успешной оплаты
});
result.fail(function(reason, options) {
// Действие в случае ошибки при совершении оплаты
});