Как подключить онлайн-оплату -- ЮKassa, Т-Банк, CloudPayments, Payselection

Онлайн-оплата позволяет гостю пополнить депозит прямо из Gizmo Client — картой, через СБП или другими способами, которые поддерживает платёжный сервис. Онлайн-способом также можно оплатить продажу или бронирование в Gizmo Manager. Инструкция описывает подключение четырёх провайдеров, которые работают в России.

Что нужно заранее

  • Учётная запись у платёжного провайдера.

  • Gizmo Server доступен из интернета: белый статический IP-адрес или доменное имя, проброс порта на роутере и, для большинства провайдеров, доступ по https. Подробнее — в разделе «Что нужно для онлайн-оплаты» инструкции «Как настроить способы оплаты» и в статье «Проброс портов -- как и зачем».

Платёжный сервис сообщает серверу Gizmo о каждой оплате на callback-адрес такого вида:

https://<адрес сервера>:<порт>/api/payments/<провайдер>/callback

где <адрес сервера> — белый IP-адрес или доменное имя сервера, <порт> — внешний порт, проброшенный на Gizmo Server, а <провайдер> — yookassa, tinkoff, cloudpayments или payselection.

Шаг 1. Настройте магазин в личном кабинете провайдера

Для клиентов Gizmo у ЮKassa есть специальные условия по комиссии — они действуют при регистрации по партнёрской ссылке.

Сервер должен быть доступен из интернета по https; для проброса подходят порты 443 и 8443.

  1. Создайте магазин по инструкции ЮKassa. Если у клуба есть сайт или страница в соцсети с тарифами, укажите, что платежи принимаются «на сайте», иначе — «другое».

  2. Откройте Интеграции → HTTP-уведомления, нажмите Изменить настройки и укажите callback-адрес https://<адрес сервера>:<порт>/api/payments/yookassa/callback. Отметьте все события и сохраните.

  3. Откройте Интеграции → Ключи API, нажмите Выпустить ключ и следуйте подсказкам. Сохраните ключ в надёжном месте — ЮKassa показывает его только один раз. Перепишите и shopId магазина.

  4. Чтобы принимать оплату через СБП, откройте Организация → Реквизиты и договор и проверьте в разделе Комиссии подключённые способы оплаты. СБП по умолчанию выключен — подключите его по ссылке в этом разделе или через менеджера ЮKassa.

Сервер должен быть доступен из интернета по https. Если сервер за NAT, внешний порт пробрасывается на порт Gizmo Server; Т-Банк принимает порты 80, 82, 443, 5000, 8080, 8081, 885, 9443, 1444 и 9090.

  1. Войдите в личный кабинет Т-Банка и откройте Интернет-эквайринг → Магазины. Нажмите Создать магазин и заполните поля. В поле Сайт укажите ссылку на страницу с правилами и тарифами клуба.

  2. Откройте Магазины → Терминалы, перейдите в настройки тестового терминала и укажите callback-адрес https://<адрес сервера>:<порт>/api/payments/tinkoff/callback.

  3. Перепишите TerminalID и пароль тестового терминала и укажите их в Gizmo — см. шаг 2 ниже.

  4. Пройдите обязательное тестирование: Интернет-эквайринг → Магазины → Терминалы → Тестировать и выполните все тесты по подсказкам в кабинете. Для тестов пополняйте депозит гостя из Gizmo Client на игровом пк. После успешных тестов станет доступен рабочий терминал.

  5. Нажмите Настроить у рабочего терминала и укажите тот же callback-адрес.

  6. Перепишите TerminalID и пароль рабочего терминала и замените ими данные тестового терминала в Gizmo.

Оплата через СБП. Если в магазине настроен СБП, при оплате гость сразу попадает в приложение своего банка по QR-коду или кнопке. Если СБП не настроен, открывается стандартная платёжная страница Т-Банка с вводом карты, T-Pay и другими способами. Чтобы включить СБП:

  1. Откройте Интернет-эквайринг → Магазины → Интернет-магазины и выберите магазин.

  2. Перейдите в Приём оплаты, выберите Своя платёжная форма и нажмите Настроить.

  3. Включите нужные способы оплаты — как минимум СБП.

Если онлайн-оплаты через Т-Банк не проходят с ошибкой SSL-соединения, установите на сервер российские корневые сертификаты — см. «Онлайн-платежи не проходят -- как установить российские корневые сертификаты».

  1. Войдите в личный кабинет CloudPayments, откройте Сайты и нажмите Добавить сайт.

  2. Заполните поля:

    • Название сайта — понятное название, например название и адрес клуба, если клубов несколько;

    • Адрес — доменное имя или белый IP-адрес сервера клуба;

    • включите Не проверять доступность сайта.

  3. Нажмите Добавить, затем откройте настройки созданного сайта (значок шестерёнки).

  4. Включите уведомления Pay и Fail и в их поля Адрес введите callback-адрес https://<адрес сервера>:<порт>/api/payments/cloudpayments/callback. CloudPayments принимает и адрес с http://, если сервер доступен из интернета только по http.

  5. При желании включите приём оплаты через Yandex Pay — опция внизу страницы.

  6. Нажмите Сохранить уведомления и перепишите Public ID и пароль для API.

  1. Зарегистрируйтесь в Payselection и войдите в личный кабинет.

  2. В поле URL оповещения укажите callback-адрес https://<адрес сервера>:<порт>/api/payments/payselection/callback.

  3. Перепишите ID сайта и секретный ключ.

Шаг 2. Создайте онлайн-способ оплаты в Gizmo

  1. Откройте Настройки → Финансовый → Способы оплаты, в блоке Дополнительные способы оплаты нажмите + Создать способ оплаты и выберите В сети.

  2. На странице Провайдеры платежей нажмите на карточку провайдера: YooKassa, Tinkoff, Cloud Payments или Pay Selection.

  3. Заполните поля провайдера значениями из личного кабинета:

    Провайдер

    Поля

    YooKassa

    shopId, secretKey; Поддержка СБП — включите, если принимаете оплату через СБП; Только СБП — включите, если гостю нужно оставить только СБП

    Tinkoff

    TerminalID, Пароль; Только СБП — включите, если гостю нужно оставить только СБП

    Cloud Payments

    Public ID, Пароль

    Pay Selection

    ID сайта, Секретный ключ

  4. Заполните общие поля способа оплаты:

    • Имя — как способ оплаты будет называться в интерфейсе;

    • Менеджер и Клиент — где способ доступен;

    • Фискальный и Вид платежа фискального чека — нужно ли пробивать чек кассой клуба (см. шаг 3).

  5. Сохраните.

Поля всех провайдеров — в статье «Карточка способа оплаты».

Шаг 3. Настройте фискализацию онлайн-платежей

Решите, кто пробивает чек по онлайн-платежу: касса клуба или облачная касса провайдера. Как настроить каждый вариант — в разделе «Фискализация онлайн-платежей» статьи «Фискализация чеков в РФ».

Шаг 4. Настройте пополнение депозита в клиентской оболочке

Задайте минимальную и максимальную сумму пополнения и суммы-шаблоны — см. шаг 4 инструкции «Как настроить способы оплаты».

Результат

Гость пополняет депозит из Gizmo Client через выбранный платёжный сервис, а Gizmo получает подтверждение оплаты по callback-адресу и зачисляет деньги на депозит.

Если оплата не проходит, проверьте:

  • callback-адрес в кабинете провайдера: адрес сервера, порт и название провайдера в пути;

  • проброс порта и доступность сервера из интернета по https;

  • значения полей провайдера в Gizmo — их легко перепутать при копировании.