Точка Банк
В этой статье пошагово рассмотрено подключение Точка Банк к Сейлбот. Вы узнаете, какие настройки необходимо выполнить, как правильно привязать банк к проекту и обеспечить корректный прием платежей через платформу.
Настройки в ЛК банка
Для подключения интеграции понадобятся следующие данные:
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)
Описание параметров
amount
сумма платежа
description
описание платежа
recurrent
включить рекуррентные платежи. Если параметр включен, после успешной оплаты будет возможность провести повторный платеж. Необязательный параметр
products_for_receipt
данные для формирования чека. Необязательный параметр Пример данных, передаваемых в products_for_receipt: [{"name": "Тестовая услуга", "price": "100", "quantity": "1", "method": "full_prepayment", "object": "goods"}]
name
Название товара/услуги. Обязательный параметр при формировании чека
price
цена за единицу. Обязательный параметр при формировании чека
quantity
количество. Обязательный параметр при формировании чека
method
тип оплаты. full_payment — полная оплата, full_prepayment — полная предоплата. Необязательный параметр, по умолчанию full_payment
object
признак предмета расчёта. goods — товары, service — услуги, work — работа. Необязательный параметр, по умолчанию service
customer_email
email клиента. Обязательный параметр при передаче products_for_receipt.
customer_phone
телефон клиента. Необязательный параметр, может использоваться при передаче products_for_receipt
full_name
имя клиента. Необязательный параметр, может использоваться при передаче products_for_receipt
expired
время жизни ссылки в минутах. От 1 до 44 640 минут, по умолчанию 10080. Необязательный параметр
twostage
Включить двухэтапную оплату. Не работает при передаче recurrent. Необязательный параметр
Пример формирования ссылки без чека:

Пример формирования ссылки с чеком:

Обработка результата
В диалоге с клиентом при оплате автоматически придет колбек, который состоит из 10 символов clientID платежной системы, слова _success и через пробел сумма платежа.

Например: ovg58keefc_success 1999, где:
ovg58keefc : первые 10 символов секретного ключа платежной системы
_success : результат обработки запроса (успешный платеж)
1999 : сумма платежа
Для использования в настройках схемы достаточно скопировать колбек и вставить его в строку "Условие":
Можно указать в условии полный текст колбека (тогда укажите выбор соответствия "Полное совпадение):

Либо часть колбека (тогда необходимо указать выбор соответствия "По наличию ключевых слов"):

Аналогично можно использовать колбек с блоком "Не состояние с условием", если вы не хотите выбивать клиента из основной воронки:
Часть колбека в условии:

Весь текст колбека в условии:

Либо продолжить вашу воронку и прописать текст колбека в условиях стрелки:

Обращаем внимание
Также после успешного платежа, у клиента появится переменная tochka_bank_operation_id, которая может пригодиться для использования в функциях калькулятора.
Например, при возврате платежа.
Возврат платежа
Чтобы вернуть платеж, воспользуйтесь функцией tochka_bank_refund_payment(amount, operation_id)
amount
сумма возврата. Не может быть больше суммы платежа.
operation_id
id платежа из tochka_bank_operation_id.
Необязательный параметр, если не указать, данные будут взяты из переменной tochka_bank_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".
Last updated