В этой статье пошагово рассмотрено подключение Точка Банк к Сейлбот. Вы узнаете, какие настройки необходимо выполнить, как правильно привязать банк к проекту и обеспечить корректный прием платежей через платформу.
Настройки в ЛК банка
Для подключения интеграции понадобятся следующие данные:
- JWT токен
- clientID
- customerCode
- merchantId
Шаг 1. Как получить JWT-токен
Чтобы получить JWT-токен перейдите в личный кабинет в Точка Банк, далее во вкладку "Сервисы", затем во вкладку "Интеграции и API".
Во вкладке "Интеграции и API" нажмите на JWT-ключи:
Нажмите на плашку и далее кликните по кнопке «Сгенерировать JWT-ключ». Тогда откроются настройки ключа, где необходимо выбрать доступы:
Выберите следующие доступы:
- "Создание платежей",
- "Создание ссылки на оплату картой и через СБП"
- "Создание и получение вебхуков"
Далее пропишите название ключа (например, "Salebot"), затем придет sms с кодом для подтверждения.
Шаг 2. Как получить client_id
client_id находится внутри сгенерированного JWT-ключа (Точка Банка отобразит client_id после генерации JWT-ключа)
Шаг 3. Как получить siteUid (merchant_id) и customerCode
siteUid (merchant_id) - это идентификатор торговой точки в интернет-эквайринге (ID мерчанта)
customerCode — это ваш уникальный код клиента.
Для получения siteUid (merchant_id) необходимо обратиться в чат технической поддержки Точка Банка с запросом "Нужен siteUid (merchant_id) для интеграции интернет-эквайринга с внешним сервисом". После обращения, техническая поддержка направит уникальный идентификатор торговой точки.
Аналогично можно обратиться с запросом о customerCode.
Подключение в Salebot
В Salebot в разделе "Эквайринг" найдите Точка Банк и нажмите "Подключить":
В открывшемся окне укажите свои уникальные данные JWT токен, clientID, customerCode, merchantId в соответствующих полях:
Затем при необходимости укажите систему налогообложения и ставку НДС.
Интеграция готова к работе.
Формирование ссылки на оплату
Для формирования ссылки на оплату используется функция get_tochka_bank_payment_url
get_tochka_bank_payment_url(amount, description, recurrent, products_for_receipt, customer_email, customer_phone, full_name, expired, twostage)
Описание параметров
Пример формирования ссылки без чека:
Пример формирования ссылки с чеком:
Обработка результата
В диалоге с клиентом при оплате автоматически придет колбек, который состоит из 10 символов clientID платежной системы, слова _success и через пробел сумма платежа.
Например: ovg58keefc****_success**** 1999, где:
- ovg58keefc : первые 10 символов секретного ключа платежной системы
- _success : результат обработки запроса (успешный платеж)
- 1999 : сумма платежа
Обращаем внимание!
Колбек о неуспешном платеже от Точка Банка НЕ приходят!
Для использования в настройках схемы достаточно скопировать колбек и вставить его в строку "Условие":
- Можно указать в условии полный текст колбека (тогда укажите выбор соответствия "Полное совпадение):
- Либо часть колбека (тогда необходимо указать выбор соответствия "По наличию ключевых слов"):
Аналогично можно использовать колбек с блоком "Не состояние с условием", если вы не хотите выбивать клиента из основной воронки:
- Часть колбека в условии:
- Весь текст колбека в условии:
Либо продолжить вашу воронку и прописать текст колбека в условиях стрелки:
Обращаем внимание
Также после успешного платежа, у клиента появится переменная tochka_bank_operation_id, которая может пригодиться для использования в функциях калькулятора.
Например, при возврате платежа.
Возврат платежа
Чтобы вернуть платеж, воспользуйтесь функцией tochka_bank_refund_payment(amount, operation_id)
Обращаем внимание!
Возврат возможен только по успешный подтвержденным платежам (по которым пришел коллбек "_success")
Двухстадийная оплата (холдирование)
Чтобы использовать двухстадийную оплату (холдирование), в параметры функции get_tochka_bank_payment_url нужно передать соответствующий параметр twostage.
Внимание!
Описание параметров указано выше в параграфе "Формирование ссылки на оплату".
Если это кнопка для оплаты, то нужно поставить галочку "Двухстадийная оплата".
Теперь после успешной оплаты сначала придет коллбэк вида "eyJhbGciOi_authorized 10".
Также у клиента в этот момент появится переменная "tochka_bank_operation_id_hold" - она пригодится, если нужно будет подтвердить оплату через бота:
- чтобы подтвердить оплату и списать захолдированные средства, нужно использовать функцию "tochka_bank_capture_payment(self, operation_id)"
В параметр payment_id передается ранее сохраненный "tochka_bank_operation_id_hold". Также можно параметр не передавать, тогда он будет взят из переменной клиента tochka_bank_operation_id_hold
После подтверждения платежа уже придет привычный коллбэк "ovg58keefc_success 10"
Если платеж не подтвердить, он со подтверждается автоматически со временем со стороны Банка.
Рекуррентные платежи
После успешного платежа с включенным параметром recurrent или галочкой "Автоплатеж" в настройке кнопки, можно совершить повторный платеж
Для этого нужно воспользоваться функцией tochka_bank_recurrent_payment(amount, operation_id)
amount - сумма платежа
operation_id - id платежа из tochka_bank_operation_id. Необязательный параметр, если не указать, данные будут взяты из переменной tochka_bank_operation_id
Если платеж выполнен успешно, в ответе функции вернется "True".