Payselection
Платежная система для бизнеса
Last updated
Платежная система для бизнеса
Last updated
Зайдите в Платежные системы - Payselection и заполните форму в Salebot.pro:
Чтобы найти нужные для работы интеграции данные, зайдите в личный кабинет Payselection в раздел Сервис
Нужный идентификатор клиента (Client ID) можете увидеть в левой части таблицы
Для получения секретного ключа нажмите на редактирование и откроется окно настроек:
В нем вы найдете секретный ключ, а также можете сразу указать ссылку для отправки уведомлений о действиях клиентов:
Секретный ключ будет в поле, которое на скриншоте закрашено красным. Тут же поставьте галочку в пункте Оповещения вкл, а в URL оповещения скопируйте ссылку: https://chatter.salebot.pro/payselection_callback/result После того как скопируете необходимые данные в соответствующие поля для активации, можно сразу приступать к использованию платежной системы.
Обратите внимание: переменной payment_sum присваивается значение последней, после необязательной переменной currency
Для генерации ссылки на оплату вам необходимо установить значение переменной payment_sum, сразу после этого появится переменная payselection_pay_url.
Эту переменную можно вывести на экран ссылкой или разместить на кнопке с текстом "Оплатить".
Ссылка имеет вид: https://webform.payselection.com/pay/421092b3-40c5-404e-afe0-1417cf64538b
Также до установки значения переменной payment_sum, можно задать необязательную переменную currency -> для настройки платежа.
currency - Валюта по стандарту ISO в буквенном обозначении (USD, EUR и т.д.). По умолчанию будут установлены рубли (RUB)
После успешной оплаты в бот придут колбэки, по которым вы сможете понять, что была успешная оплата. Эти колбэки в системе вы видите как сообщения от пользователя. Чтобы их не мог отправить пользователь, они состоят из 7 первых символов секретного ключа и приписки.
Например: DLx7yvm_success - в случае успеха или DLx7yvm_fail - в случае провала оплаты
Эти колбэки НЕ ВИДИТ пользователь - они отображаются только оператору.
Тип сравнения должен быть "Полное совпадение"
Также после успешной оплаты переменная payselection_payment_completed устанавливается в True.
Например, можно сделать обработку результата оплаты блоком с условием и вывести соответствующее сообщение пользователю.
В случае провала оплаты добавится переменная payselection_payment_informations с причиной неоплаты.
После завершения оплаты клиенту добавится переменная payselection_callback_data, содержащая данные ответа платежной системы по совершенной операции. Из полученного словаря можно извлечь необходимые данные при помощи метода get.
Для совершения повторного платежа обязательно необходимо обнулить payment_sum, ранее сформированную ссылку и уже после переназначить переменную payment_sum для получения свежей ссылки. Можно указать предыдущее значение.
Для проведения тестовых платежей используйте список карт для тестирования:
5500081528083771 3DS SUССESS PAYMENT, SUССESS PAYOUT, SUCCESS REBILL 4021050993225905 3DS FAIL PAYMENT, FAIL PAYOUT 4129436949329530 non3DS SUССESS PAYMENT, SUCCESS PAYOUT, FAIL REBILL 5120196445879588 non3DS FAIL PAYMENT, FAIL PAYOUT
Просто используйте данные карты с любым именем, CVC кодом и сроком, превышающим текущую дату для получения желаемого результата.
Если что-то будет работать не так, как ожидалось, проверьте список карт по ссылке: https://api.payselection.com/#section/Testirovanie
Для создания ссылки на оплату
payselection_create_pay_url(amount, currency, description)
amount | сумма платежа currency - валюта (необязательный параметр, по умолчанию будут рубли) |
description | описание (необязательный параметр) вернет ссылку на оплату |
Для создания ссылки на оплату подписки:
payselection_create_subscription_pay(amount, interval, period, max_periods, start_date, currency, description)
amount | сумма платежа interval - количество заданных периодов до очередного списания |
period | периодичность списаний (необязательный параметр, по умолчанию "day"), возможные варианты "day", "week", "month". если в interval передать 3 и в этом параметре указать "week", то списание будет раз в 3 недели |
max_periods | максимальное количество списаний после которого повторных списаний не последует (по умолчанию ограничения не будет) |
start_date | Дата и время начала списаний, по умолчанию с текущего момента, необязательный параметр. передавать в формате '11.06.2024' или '11.06.2024 15:40'. Если указать только дату, время начала списаний будет установлено автоматически во время выполнения функции |
currency | валюта (необязательный параметр, по умолчанию будут рубли) |
description | описание (необязательный параметр) вернет ссылку на оплату после оплаты будет добавлена переменная payselection_recurring_id в которой содержится id подписки |
Для отмены подписки
payselection_cancel_subscription(payselection_recurring_id) в параметр нужно передать id подписки из переменной payselection_recurring_id и подписка будет отменена