Обращаем внимание!

При подключении интеграции на стороне Salebot (в разделе "Эквайринг") без указания значений в полях "Ставка НДС" и "Система налогообложения" платежная система работать не будет.

В случае, если у вас уже подключена интеграция, введите значения в указанные поля, иначе все платежи будут приостановлены!

Как подключить

Вам необходимо создать новый терминал. Нельзя использовать тот, который у вас подключен еще куда-то.

Для подключения интернет-эквайринга Т-банк в первую очередь нужно подать заявку и получить идентификатор терминала и пароль. Это можно сделать перейдя по ссылке.

После рассмотрения вашей заявки, вам выдадут тестовый терминал и пароль к нему.

Переходим в проект на salebot.pro и в разделе Эквайринг - Т-банк прописываем ключи тестового терминала.

поле Система налогообложения. Можно выбрать систему налогообложения, которая будет передана в чеке.

поле Ставка НДС. Необходимо указать подходящий код для передачи значения НДС. Например, none если без НДС или vat0 если ставка НДС 0% .

Обращаем внимание!

Без указания значений в полях "Ставка НДС" и "Система налогообложения" платежная система работать не будет.

В случае, если у вас уже подключена интеграция, введите значения в указанные поля, иначе все платежи будут приостановлены!

Далее вам в личном кабинете Т-банка нужно пройти тесты на формирование ссылки, чека и оплаты с тестовых карт банка.

Как протестировать платежи на стороне Т-банка, написано здесь.

Вкратце - внутри бота нужно указать данные тестового терминала и с помощью тестовых карт провести оплату как покупатель. Данные терминала и данные тестовых карт будут находиться у каждого клиента на магазине. Тестирование платежей это своего рода настройка и проверка интеграции вашего бота с нами.

Для совершения повторного платежа обязательно необходимо обнулить payment_sum, ранее сформированную ссылку и уже после переназначить переменную payment_sum для получения свежей ссылки. Можно указать предыдущее значение.

Обратите внимание на Тест 3 (отмена платежа) на рис. 6, вам нужен будет идентификатор платежа PaymentId, найти его можно после совершения платеж в переменной tinkoff_payment_id

Обращаем внимание!

Для корректной работы интеграции и отсутствия ошибок при подключении, после прохождения проверок (тестов) интеграции необходимо ПЕРЕПОДКЛЮЧИТЬ Т-банк на работающий терминал.

Как сформировать ссылку на оплату

Сформировать ссылку на оплату в блоке можно ОДНИМ ИЗ из доступных способов:

Кнопка с функцией Оплата

Ссылку на оплату можно создавать в кнопке с функцией "Оплата".

О том как создавать такую кнопку рассказано в статье "Кнопки".

Обязательные параметры кнопки Оплата для Т-банк

Для формирования ссылки на оплату в настройках кнопки необходимо указать обязательные параметры: Сумма и Описание товара.

поле Текст. Данный текст будет указан на кнопке с ссылкой на оплату в сообщении

поле Функция. Для создания кнопки для выдачи ссылки на оплату выбираем функцию Оплата

поле Платежная система. В списке отображаются подключенные к проекту платежные системы. Выбираем T-банк

Если к проекту не подключены платежные системы данный тип кнопок будет не доступен

поле Описание товара (обязательное). В данном поле нужно указать название товара. Максимально количество символов для данного поля: 250
Чем точнее указано описание товара, тем лучше. Например: не Телефон, а Смартфон Xiaomi модель

НЕЛЬЗЯ использовать двойные кавычки в описании товара: удалите или замените на одинарные кавычки.

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

чекбокс Автоплатеж. Для подключения автоплатежа включите в настройках платежной системы в Сейлбот ползунок и поставьте галочку в данном чек-боксе в настройке кнопки. По умолчанию, отключен.

меню Данные для формирования чека. При клике по данной кнопке откроются дополнительные обязательные и необязательные поля для формирования чека

Многие платежные системы поддерживают облачные онлайн-кассы, они необходимы по 54-ФЗ.
Прочитайте особенности формирования чеков на сайте выбранной платежной системы, чтобы не попасть в неловкую ситуацию с налоговой инспекцией.

  • Наименование товара
  • Цена за единицу товара в копейках
  • Количество
  • Произведение количества на цену за единицу товара
  • Способ расчёта
  • Предмет расчета
  • Переменная с email покупателя
  • Переменная с номером телефона покупателя

меню Дополнительная информация. При клике по данной кнопке откроются дополнительные поля для формирования ссылки

  • Язык страницы оплаты

чекбокс С уведомление о клике. Для отслеживания перехода по ссылке для оплаты можно поставить галочку. В таком случае, при клике по кнопке в диалог с клиентом в Сейлбот придет уведомление о том, что был совершен переход по ссылке

На данное уведомление можно настраивать дальнейшую логику работы бота.

Дополнительные параметры для формирования чека и ссылки

выпадающее меню "Данные для формирования чека"

поле Наименование товара . В данном поле нужно указать название товара. Чем точнее указано название товара, тем лучше. Например: не Телефон, а Смартфон Xiaomi модель ххх

НЕЛЬЗЯ использовать двойные кавычки в Наименовании товара: удалите или замените на одинарные кавычки.

поле Цена за единицу товара в руб. Обратите внимание, в данном поле указывается цена в рублях.

поле Количество. Количество или вес товара. Передать можно целое или дробное число через точку. Пример, 5 или 10.3

поле Произведение количества на цену за единицу товара. В данном поле необходимо указать сумму равную произведению количества на цену за единицу товара. Например, если Цена за единицу товара в руб равна 5000 и количество товаров 1, то Сумма заказа 5000 руб,

поле Способ расчёта. Можно передать одно из значений признака способа расчета:

поле Предмет расчёта. Дополнительно можно передать предмет расчета (если не передать, будет commodity (товар)).

Может принимать следующие значения:

Поле Переменная с email покупателя (необязательный, если передан Номер телефона) В данном поле указывается Email пользователя (клиента). Можно указывать переменную, в которой хранится email пользователя.

Например, #{email}

Поле Переменная с номером телефона покупателя (необязательный, если передан Email). В данном поле можно указать переменную, в которой записан номер телефона покупателя в формате 79000000000
Например, #{phone}

Обязательно должен присутствовать email и/или телефон

выпадающее меню "Дополнительная информация"

поле Язык страницы оплаты. По умолчанию, язык страницы оплаты русский. Можно изменить на английский

поле Время жизни ссылки — по умолчанию поле пустое, но указав в нем значение в виде дд.мм.гггг, --:-- (в виде даты и времени), можно установить до какого момента времени клиент сможет осуществить платеж по данной ссылке.

Переменные клиента

Как только пользователь получит блок с кнопкой "Оплата" автоматически будут созданы переменные клиента:

Служебная переменная клиента __payments , которая хранит сумму, идентификатор созданной ссылки, нужна для идентификации хука от платежной системы.

Служебную переменную клиента __payments НЕЛЬЗЯ удалять или изменять!

Переменная клиента error_payment_button создается, если при формировании кнопки возникла ошибка.

В значение переменной error_payment_button запишется либо текст ошибки, либо ответ платежной системы с ошибкой.

Значение переменных становятся актуальными при переходе в следующий блок

Страницы завершения оплаты

После завершения оплаты клиенту по умолчанию будет предложено перейти обратно в чат с ботом. При этом клиент узнаёт о статусе платежа только по сообщению в чате.

Обычно содержание такого сообщения формируется в зависимости от типа колбека, который вы получили от Т-банка Касса.

Иногда колбек приходит с задержкой, поэтому в таких случаях у вас не получится моментально информировать клиента.

Чтобы избежать подобных ситуаций, отключите функцию перехода в бот в оплатах по ссылкам, сформированным через:

  • переменную payment_sum - перед указанием payment_sum, присвойте переменной apply_redirects значение 0 (ноль);
  • функцию get_tinkoff_payment_url - последним параметром укажите значение 0 (ноль);

При отключенной функции Тинькофф использует свои страницы завершения оплаты с информацией об успешном или неудавшемся платеже клиента.

Обработав колбек, вы можете дополнительно сообщить клиенту о статусе его платежа.

Как обработать результат

Успешный платеж.

в бота АВТОМАТИЧЕСКИ придет КОЛБЭК, который состоит из 10 символов секретного ключа платежной системы, слова _success и через пробел сумма платежа.
&#xNAN;Для использования в настройках схемы достаточно его скопировать.

Например: ovg58keefc_success 44, где:

ovg58keefc : первые первые 10 символов секретного ключа платежной системы

_success : результат обработки запроса (успешный платеж)

44 : сумма платежа

Колбеки (уведомления) от платежной системы пользователь НЕ ВИДИТ. Они отображаются только во вкладке Клиенты и видны оператору.

Пример использования:
Шаг 1. В блоке "с кнопкой Оплата" добавляем кнопки с функцией Оплата.

Шаг 2. В поле Условие соединения от этого блока к блоку "Успешная оплата" указываем колбэк. Аналогично работает, если указать колбэк об успешной оплате в поле Условие блока Первостепенной проверки условия.

Важно: выбор соответствия Полное совпадение. Также можно использовать По наличию ключевых слов, если указать часть колбэке без сумм оплаты

Отличие примера № 1 (рис. 12) и примера № 2 (рис. 13) в том, что при использовании блока "Не состояние с условием" клиент не переходит в блок не состояние и не выбивается из основной воронки. Это удобно, например, если вы хотите продолжать вести клиента далее по воронке.

Подробнее о том, как использовать условные блоки в Сейлбот рассказали в статье "Блоки с условием".

Платеж с ошибкой

При ошибке проведения оплаты в бота АВТОМАТИЧЕСКИ придет КОЛБЭК, который состоит из 10 символов секретного ключа платежной системы, слова _fail и через пробел сумма платежа

Например, ovg58keefc_fail 44 , где

ovg58keefc : 10 символов секретного ключа платежной системы

_fail : результат обработки запроса - платеж не выполнен или с ошибкой.

44 : сумма платежа

Зависит от платежной системы. Не все платежные системы присылают колбэк об ошибке платежа.

Если сумма указанная в настройках кнопки отличается от суммы, которую клиент оплатил, то АВТОМАТИЧЕСКИ придет КОЛБЭК, который состоит из 10 символов секретного ключа платежной системы, слова _different_amounts и через пробел уникальный ID платежа

Например: ovg58keefc_different_amounts 123456 , где:

ovg58keefc : 10 символов секретного ключа платежной системы

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

123456 : уникальный ID платежа

Функция get_tinkoff_payment_url в Калькуляторе

Для формирования ссылки на оплату можно воспользоваться функцией get_tinkoff_payment_url в Калькуляторе блоке.

В поле Калькулятор переменной присвоим значение функции get_tinkoff_payment_url

Название переменной задаете самостоятельно. На скринах примеры названия переменных.

В эту переменную запишется ссылка на оплату. Переменную можно вывести на экран ссылкой в сообщении или разместить в кнопке с текстом, например, "Оплатить".

ПРИМЕР ссылки на оплату: https://securepay.tinkoff.ru/new/xoYnWrb6

Многие платежные системы поддерживают облачные онлайн-кассы, они необходимы по 54-ФЗ.
Прочитайте особенности оформления чеков на сайте выбранной платежной системы, чтобы не попасть в неловкую ситуацию с налоговой инспекцией.

Калькулятор

Пример 1:

Пример 2:

Описание параметров

link = get_tinkoff_payment_url(amount, description, recurrent, products_for_receipt, customer_phone, customer_email, expired, taxation, language, extra_params, apply_redirects)

Параметры функции:

Пример кода для копирования

Пример 1: Ссылка на оплату без чека

link_tinkoff = get_tinkoff_payment_url(1200, 'Купи меня')

Пример 2: Ссылка на оплату с чеком

extra_params = {"IP": "66.249.72.248"}

receipt = [{"name":"ТОВАР1","price":"1200","quantity":"1","amount":"1200","vat_code":"2","method":"full_payment","object":"commodity"}]

link_tinkoff = get_tinkoff_payment_url(1200, 'Купи меня', '', receipt, '77777777777', 'exam@mail.com', '28.03.2023 14:25', '2', 'en', extra_params)

Пример 3: Ссылка на оплату с чеком + Автоплатеж

receipt = [{"name":"ТОВАР1","price":"1200","quantity":"1","amount":"1200","vat_code":"2","method":"full_payment","object":"commodity"}]

link_tinkoff = get_tinkoff_payment_url(1200, 'Купи меня', '1', receipt, '77777777777', 'exam@mail.com', '28.03.2023 14:25', '2')

Переменную можно вывести на экран ссылкой в сообщении или разместить в кнопке с текстом, например, "Купить".

Если в блоке несколько функций для получения ссылки и допущена ошибка, то значение ошибки будет записано в переменной error_payment_func


Ошибка запишется по последней функции в Калькуляторе.

После успешной оплаты в бота АВТОМАТИЧЕСКИ придет КОЛБЭК, который состоит из 10 символов секретного ключа платежной системы, слова _success и через пробел сумма платежа.
&#xNAN;Для использования в настройках схемы достаточно его скопировать.

Например: ovg58keefc_success 44, где:

ovg58keefc : первые первые 10 символов секретного ключа платежной системы

_success : результат обработки запроса (успешный платеж)

44 : сумма платежа

Сплитование платежей в Т-банк и работа с ними

Для старта работы нам потребуется выполнить четыре шага:

1. Переходим по ссылке
2. Оставляем заявку менеджеру и ожидаем связи от него.
3. Заключаем договор с банком и запрашиваем в банке логин и пароль
4. Получаем токен через функцию tinkoff_sm_register_get_token()

tinkoff_sm_register_get_token(username, password, test) - функция токена

Функция принимает три параметра:

Обязательные параметры:
username - логин
password - пароль
Необязательный параметр:
test - параметр на случай если проводите настройки в тестовой среде, в параметр можно передать 1 и запрос будет отправлен в тестовую среду. Если не используете такой тип настройки, проигнорируйте данный параметр НЕ указывая его в функции.

ВАЖНО! Если у вас возникают сложности на этапе получения токена, то добавьте список IP адресов salebot в белый лист, запросить адреса можно в службе поддержки на сайте или мессенджере.

После того как вы получили токен, необходимо сделать запрос на регистрацию точки с указанием всех необходимых параметров, включая данные банка и лицевого счета (счета физлиц не поддерживаются) через функцию tinkoff_sm_register_get_shop_code в ответ приходит помимо прочего "shopCode", который необходим для дальнейшей работы.

tinkoff_sm_register_get_shop_code(token, org_data, address, ceo, bank_acc)
token - полученный на шаге выше токен
org_data - словарь с данными о вашей организации (вид показан в примере ниже)
address - юридический адрес организации
ceo - данные владельца организации
bank_acc - реквизиты

Пример использования функции:

При формировании ссылки на оплату указываете переменную, сформированную по принципу:

shop="Shops":[{"ShopCode":"????????","Amount": "1000"}]
link=get_tinkoff_payment_url(10,'', '', '','+79099999999','','', 1, '', shop)

В переменной shop поле Amount содержит сумму в копейках, которая будет отправлена этому продавцу. Нужно чтобы сумма в первом параметре функции была не меньше, чем сумма по всем получателям.

Для указания нескольких получателей указываем так:

shop="Shops":[{"ShopCode":"???????1","Amount": "1000"},{"ShopCode":"???????2","Amount": "2000"}]

в данном примере общая сумма 30 рублей или 3000 копеек

Создание ссылки с помощью переменной payment_sum и дополнительных параметров

В калькуляторе блока присваиваем переменной payment_sum значение равно сумме к оплате.
Например,
payment_sum = 150 или
payment_sum = 100.55 (через точку!)).

Сразу после этого появится переменная tinkoff_pay_url. Эту переменную можно вывести на экран ссылкой или разместить на кнопке с текстом "Оплатить".

ПРИМЕР ссылки на оплату:
https://securepay.tinkoff.ru/new/xoYnWrb6

Также В Калькуляторе блока до установки значения переменной payment_sum, можно задать следующие необязательные переменные, для настройки платежа.

  • payment_description – описание заказа
  • language - Язык страницы оплаты en, ru. Если не передан, то страница оплаты на русском языку.
  • expiration_date - дата и время окончания жизни заказа. Формат: дд.мм.гггг чч:мм (например: 25.01.2021 12:23) По умолчанию 24 часа;
  • apply_redirects - индикатор необходимости перенаправить клиента в бота после нажатия на кнопку "Оплатить". Ожидаемые значения 0 (ноль) или 1 (один, по умолчанию): 0 (ноль) - оставить клиента в виджете оплаты, применяются стандартные страницы завершения платежа Тинькофф Касса; 1 (один) - немедленно перенаправить в бота после нажатия на кнопку "Оплатить". О статусе платежа можно сообщить в ответ на колбек.

Также можно использовать стандартные переменные, например зададим время действия ссылки 2 дня от текущей даты до 12:00:
&#xNAN;date = current_date + 2
expiration_date = "#{date} 12:00"

Еще пример время действия ссылки 30 минут:
&#xNAN;time = current_time + 30
expiration_date = "#{current_date} #{time}"

Если в настройках вы включили автоматические платежи, то после успешной оплаты у клиента появится переменные tinkoff_rebill_id и tinkoff_recurrent_id, которые нужны для проведения автоплатежей и идентификации вебхука.
Удалять их нельзя, при удалении tinkoff_rebill_id невозможно будет провести автоплатеж и нужно заново формировать ссылку на оплату, при удалении tinkoff_recurrent_id - клиент не получит колбек об оплате.

Нельзя удалять tinkoff_rebill_id и tinkoff_recurrent_id.


При удалении tinkoff_rebill_id невозможно будет провести автоплатеж и нужно заново формировать ссылку на оплату, при удалении tinkoff_recurrent_id - клиент не получит колбек об оплате.

Рис. 18. Переменные в карточке клиента

Обратите внимание: переменной payment_sum присваивается значение последней, после необязательных переменных payment_description, language и т.д.

Пример формирования ссылки на оплату

Создадим ссылку на оплату в размере 100р (в магазине по умолчанию рубль)

Обратите внимание:
- Сначала указываете необязательные параметры payment_description и т.д.
- И последней присваиваем значение переменной payment_sum

Далее в сообщении нужно вывести переменную tinkoff_pay_url, в которой содержится ссылка (см. рис. 19).

Как обработать результат

После успешной оплаты в бот придут колбеки, по которым вы сможете понять что была успешная оплата. Эти колбеки в системе вы видите как сообщения от пользователя, чтобы их не мог отправить пользователь, они состоят из 10 первых символов секретного ключа и приписки success, например: 869e5us32x_success

В случае неудачной оплаты, придет колбек с припиской 869e5us32x_fail

Эти колбеки НЕ ВИДИТ пользователь, они отображаются только оператору.

Колбеки от Тинькофф Касса могут приходить с задержкой.

Если в течение часа вам не пришёл колбек, пожалуйста, обратитесь в поддержку salebot.

Тип сравнения должен быть "Полное совпадение"

Также после успешной оплаты переменная tinkoff_payment_completed устанавливается в True.

Например, можно сделать обработку успешной оплаты блоком с условием и вывести соответствующее сообщение пользователю:

Шаг 1. Копируем колбек об успешной олпате:

Шаг 2. Создаем блок с условием (Стартовое условие или Не состояние с условием) и указываем в поле "Условие" колбек:

Отличие примера № 1 (рис. 12) и примера № 2 (рис. 13) в том, что при использовании блока "Не состояние с условием" клиент не переходит в блок не состояние и не выбивается из основной воронки. Это удобно, например, если вы хотите продолжать вести клиента далее по воронке.

Подробнее о том, как использовать условные блоки в Сейлбот рассказали в статье "Блоки с условием".

После завершения оплаты клиенту добавится переменная tinkoff_callback_data, содержащая данные ответа платежной системы по совершенной операции. Из полученного словаря можно извлечь необходимые данные при помощи метода get.

Как работать с чеками

Для формирования чека онлайн-кассы необходимо при формировании ссылки на оплату передать дополнительные параметры.

Каждый товар имеет вид:

{"name": "Наименование товара", "quantity": "Количество товара", "price": "Цена за единицу товара в копейках", "amount": "Стоимость товара в копейках", "tax": "Ставка НДС"}

  1. name - Наименование товара
  2. quantity - Количество или вес товара (целое или дробное число через точку)
  3. price - Цена за единицу товара в копейках
  4. amount - Стоимость товара в копейках. Произведение Quantity и Price
  5. tax - cтавка НДС:

Дополнительно можно передать предмет расчета payment_object (если не передать, будет commodity (товар)), может принимать следующие значения:

После определения переменных платежа, определяем переменную payment_sum, после которой сразу появится ссылка на оплату.

Общая стоимость всех товаров должна быть равной переменной payment_sum в рублях!

Пример:

[{"name": "Наименование товара", "quantity": "2", "price": "1000", "amount": "2000", "tax": "none"}, {"name": "Наименование товара 2", "quantity": "3", "price": "500", "amount": "1500", "tax": "none"}]

Как сделать автоплатежи в Т-банке

Провести тестовые платежи

В личном кабинете Тинькофф нужно пройти тесты подключения автоплатежей с тестовых карт банка.

Чтобы пройти тесты подключения автоплатежей:

1. Создаём ссылку на оплату get_tinkoff_payment_url.
В параметре recurrent передайте значение равное 1, пример кода есть в описании функции
2. Оплачиваем ее тестовой картой из Тест №5, приходит уведомление от платежной системы об успешной оплате.
3. Для этого же клиента вызываем функцию рекуррентного платежа tinkoff_recurrent_payment.
4. В кабинете Тинькофф нажимаем Проверить. Тесты пройдены

Провести установочный платеж

Для создания ссылки на первый установочный платеж можно воспользоваться функцией get_tinkoff_payment_url в Калькуляторе блоке.

receipt = [{"name":"ТОВАР1","price":"1200","quantity":"1","amount":"1200","vat_code":"2","method":"full_payment","object":"commodity"}] 
link_tinkoff = get_tinkoff_payment_url(1200, 'Купи меня', '1', receipt, '77777777777', 'exam@mail.com', '28.03.2023 14:25', '2')

Важный параметр данной функции для проведения установочного платежа recurrent.

Если автоплатеж включен, то передайте значение 1, если отключен передайте значение None или ""

После успешной оплаты придет уведомление (callback), а у клиента появится переменная tinkoff_rebill_id. Эта переменная нужна для повторных автосписаний. Если её удалить, то повторные автосписания провести не получится.

Провести повторный автоплатеж

От блока, который реагирует на колбэк об успешной оплате создаем стрелку с таймером (задержкой) через какой период необходимо повторить списание.

Будьте внимательны и настройте возможность отменить подписку,чтобы случайно не списать с карты пользователя все средства.

Далее для проведения автоплатежа, нужно вызвать функцию:

tinkoff_recurrent_payment(сумма, 'описание')

Первым параметром передаем сумму, которую нужно списать, вторым - описание платежа, если не передать, то будет пустое.

Рис. 28. Редактор блока -> Калькулятор -> функция для проведения автоплатежа

Если подключена онлайн-касса, то при автосписании нужно формировать чек.
Чтобы это сделать, перед списанием нужно создать переменные:

Как заполнять products_for_receipt_recurrent читайте в параграфе выше "Функция get_tinkoff_payment_url в Калькуляторе".

Отменить автоплатежи

Для того, чтобы отменить автосписания настроим блок для удаления переменной tinkoff_rebill_id

Провести обычный платеж, если включены рекуррентные платежи.


Если в настройках включен бегунок рекуррентные платежи, но нужно провести обычный платеж без сохранения карты для подписки, присвойте переменной tinkoff_manual_recurrent_disable любое значение перед объявлением payment_sum.
При таких настройках платеж будет обычным.

Пример:

tinkoff_manual_recurrent_disable = 1

Если при автосписании нужен чек, то до вызова функции нужно определить переменную products_for_receipt_recurrent, которая заполняется так же как и для чеков в обычном платеже.

Прием платежей для курсов через Т-банк

Шаг 1. В платежных системах подключаем прием платежей через Т-банк Эквайринг

Шаг 2. В настройках курса выбираем платежную систему

Шаг 3. Создаем тариф

Шаг 5. В личном кабинете Тинькофф в настройках терминала обязательно включаем уведомления по HTTP и вставляем ссылку: https://chatter.salebot.pro/tinkoff\_callback/result

Обращаем внимание!

Пропуск 5 шага приведет к некорректной работе интеграции!
Пожалуйста, ВКЛЮЧАЙТЕ уведомления по HTTP и ВСТАВЬТЕ ссылку в соответствующее поле URL (ссылка для уведомлений): https://chatter.salebot.pro/tinkoff\_callback/result

Также после прохождения всех проверок и тестирования корректной работы платежной системы, не забывайте ПЕРЕПОДКЛЮЧАТЬ платежную систему на РАБОЧИЙ терминал!

На странице курса будет отображаться тариф с кнопкой для оплаты:

Далее ученику нужно будет ввести свои данные: