Stripe
Как подключить
Чтобы подключить платёжную систему Stripe, вам нужен секретный API-ключ и ключ webhook.
Вы можете скопировать секретный API-ключ в разделе Developers -> API key и скопировать Secret key.

Далее нужно указать URL для Callbacks. Это необходимо, чтобы бот получал уведомления об оплате.
Перейдите в раздел Webhooks и добавьте адрес для webhooks.

укажите URL: https://chatter.salebot.pro/stripe_callback/result
и выберите событие:
checkout.session.completed

Сохраните и перейдите на страницу с установленным webhook, скопируйте ключ webhook (Signing secret) (в поле salebot — Webhook key):
после нажатия Reveal key откроется Webhook, который будет начинаться с whsec_...

После получения ключей переходим к настройкам в Salebot.
В salebot откройте раздел платёжных систем, выберите Stripe. На странице подключения нужно ввести полученные данные.


Как получить ссылку на оплату
Чтобы сгенерировать ссылку на оплату, нужно установить значение переменной payment_sum (например, 150 или 100.55 (через точку!)), после чего появится переменная stripe_pay_url. Эту переменную можно вывести ссылкой или разместить на кнопке с текстом "Pay".
Ссылка имеет вид:
https://checkout.stripe.com/pay/cs_test_a17mskKFFRwEuo3WgBSAUjfk7xaZZIrct9B3Ds2AdODVq1I8aRiqYEBdrU#fidkdWxOYHwnPyd1blpxYHZxWjA0TGFsVzFPVmpmMzJAbVYzUkp1Y0lLYDVgfzR2Q0NxcWZBNUNnTnRSVVRJSGFobEB1UExSczRMMTc8PWRLMGBddl8xalxyPDRoUGhnZm9xXXZANDZyaF0wNTVBVExsPHZyfycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl
По умолчанию установлен USD (доллар), если вам нужна другая валюта, нужно указать значение переменной currency
Также перед установкой значения payment_sum можно указать следующие необязательные переменные для настройки платежа.
currency - валюта заказа. Допустимые значения - https://stripe.com/docs/currencies
payment_description - описание заказа
Пример ссылки на оплату
Создать ссылку на оплату EUR 2 (по умолчанию доллар)

Обратите внимание:
Сначала укажите необязательные параметры first_name, payment_description и т. д.
И последним присвойте значение переменной payment_sum
Обратите внимание, сначала мы задаём дополнительные переменные для настроек, затем payment_sum. Вы можете определять переменные раньше в цепочке, а не в одном блоке, это пример.
Далее в нужном месте мы выведем переменную stripe_pay_url, которая содержит ссылку, в блоке или на кнопке

Страница с примером оплаты

Как обработать результат
После успешной оплаты в бот придут callbacks, по которым можно понять, что оплата прошла успешно. Эти callbacks в системе вы видите как сообщения от пользователя, поэтому они не могут быть отправлены пользователем; они состоят из первых 20 символов секретного ключа и account success, например: sk_live_d35gky6d8ers_success
Эти callbacks пользователь НЕ ВИДИТ, они отображаются только оператору.
Тип сравнения должен быть "Full match"
Также после успешной оплаты переменной stripe_payment_completed присваивается значение True.
Например, можно сделать блок обработки успешной оплаты с условием и вывести пользователю соответствующее сообщение:

После завершения оплаты клиенту будет добавлена переменная stripe_callback_data, содержащая данные ответа платёжной системы по завершённой транзакции. Необходимые данные можно извлечь из словаря с помощью метода get.
Чтобы выполнить повторную оплату, нужно сбросить payment_sum, ранее сгенерированную ссылку, а после сброса переменной payment_sum получить новую ссылку. Можно указать предыдущее значение.
Как протестировать платежи
Для тестирования интеграции можно использовать секретный ключ из тестовой среды. Для этого в личном кабинете в меню Stripe справа нужно переключиться в тестовую среду.

Далее настройте конфигурацию, описанную в начале этой инструкции. Введите тестовый секретный ключ и добавьте адрес для webhooks в тестовую среду.
Номер тестовой карты
4242 4242 4242 4242
любая будущая дата
CVC — любые три цифры
Если что-то не работает, сравните данные с данными на официальном сайте: https:/stripe.com/docs/testing#regulatory-cards
Последнее обновление