Payselection

Платежная система для бизнеса

Как подключить платежную систему к Salebot

Зайдите в Платежные системы - 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

Функции

  1. Для создания ссылки на оплату

payselection_create_pay_url(amount, currency, description)

amount

сумма платежа currency - валюта (необязательный параметр, по умолчанию будут рубли)

description

описание (необязательный параметр) вернет ссылку на оплату

  1. Для создания ссылки на оплату подписки:

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

Дата и время начала списаний в UTC, по умолчанию с текущего момента, необязательный параметр. передавать в формате '%d.%m.%Y %H:%M или '%d.%m.%Y'

currency

валюта (необязательный параметр, по умолчанию будут рубли)

description

описание (необязательный параметр) вернет ссылку на оплату после оплаты будет добавлена переменная payselection_recurring_id в которой содержится id подписки

  1. Для отмены подписки

payselection_cancel_subscription(payselection_recurring_id) в параметр нужно передать id подписки из переменной payselection_recurring_id и подписка будет отменена

Last updated