Создание платежа (виджет)
Last updated
Was this helpful?
Last updated
Was this helpful?
Виджет - это всплывающее окно с формой оплаты.
Для использования виджета вам достаточно добавить его код на страницу сайта, настроить передачу параметров и создать событие его вызова (например, нажатие на кнопку).
Код примера и описание используемых параметров виджета расположены в личном кабинете Unitpay в настройках проекта на вкладке "Виджет оплаты" (на скриншоте ниже).
Обязательные параметры:
publicKey
строка
Публичный ключ проекта (PUBLIC KEY)
account
строка
Идентификатор абонента в вашей системе (например, email абонента или номер заказа)
sum
число
Сумма платежа (например, 10.00);
desc
строка
Описание заказа для покупателя
domainName
строка
unitpay.ru
signature
строка
Цифровая подпись запроса. Они защищает вас от злоумышленников - подмены описания или стоимости заказа, размещения ссылки на оплату на ресурсах мошенников.
Образуется как sha256( account + "{up}" + currency + "{up}" + desc + "{up}" + sum + "{up}" + secretKey)
, где sha256 - метод хеширования;
"{up}" - разделитель параметров в хеш-функции;
secretKey - секретный ключ проекта (доступен в личном кабинете)
Важно. Если вы не передаете currency на форму оплаты, то этот параметр не должен участвовать в формировании подписи.
Дополнительные параметры:
currency
строка
Валюта суммы оплаты, допустимые значения: "RUB", "UAH", "BYR", "EUR", "USD" (по умолчанию RUB). Если платежная система не поддерживает требуемую валюту, то сумма будет сконвертирована в валюту по умолчанию.
locale
ru, en
Принудительное назначение языка виджета.
paymentType
строка
subscription
true
subscriptionId
число
preauth
0,1
preauthExpireLogic
число
Поле для логики блокировки платежей с преавторизацией:
0 - При отсутствии запроса на подтверждение или отмену, платеж по истечении срока блокировки на стороне банка-эквайера (~114 часов после создания платежа) будет подтвержден;
1 - При отсутствии запроса на подтверждение или отмену, платеж по истечении срока блокировки на стороне банка-эквайера (~114 часов после создания платежа) будет отменен.
Если параметр не будет использован, платеж будет отменен по истечении срока.
hideMenu
true, false
Скрывает меню с выбором способов оплаты.
hideOtherMethods
true, false
Скрывает окно выбора других способов оплаты
Если вы подключили онлайн-кассу в личном кабинете Unitpay, то для формирования чеков необходимо дополнительно передать ряд параметров:
cashItems
строка
Может быть сформирован, как в примере или следующими способами:
btoa(unescape(encodeURIComponent(JSON.stringify([{"name":"Шаверма", "count": 1, "price":10.00, "type":"commodity"}]))))
________________________
const cashItems = [{ name: 'Shaverma', count: 1, price: this.amount, type: 'commodity' }]; btoa(JSON.stringify(cashItems))
customerEmail
строка
Электронная почта клиента, на которую будет отправлен чек
customerPhone
строка
Телефон плательщика в международном формате без "+" (чек на него не будет отправлен)
, через которую будет идти оплата.
Используйте данный флаг, если требуется создать подписку по карте плательщика. Идентификатор подписки (subscriptionId) будет передан в методе PAY на ваш . Использование подписок возможно только после согласования со Службой безопасности Unitpay.
Идентификатор , по которой требуется произвести списание средств. Данный параметр должен быть предварительно получен в методе PAY на ваш
Используйте этот флаг для создания платежа с , по умолчанию флаг выключен и значение равно 0
Подробнее