Модуль подключает эквайринг Т-Банка (бывший Tinkoff Bank) к интернет-магазину на 1С-Битрикс и закрывает всё, что обычно требует доработки: от корректного расчёта НДС в чеке до защиты от дублей банковских уведомлений.
Это базовая версия решения «Интернет-эквайринг Т-Банк приём платежей Про», которое продаётся с 2017 года и установлено почти тысячу раз. Код тот же — отличается только состав возможностей: здесь всё для обычного интернет-магазина, где покупатель платит за заказ, а магазин получает деньги и отправляет чек.
Способы оплаты✔ Банковские карты (Мир, Visa, MasterCard)
✔ СБП — оплата по QR-коду, в том числе во всплывающем виджете
✔ T-Pay, SberPay, Yandex Pay, MIR Pay
✔ Оплата во всплывающем виджете без перехода на сайт банка
✔ Автоматическое перенаправление на платёжную страницу после оформления заказа
✔ Возврат средств — полный и частичный, с автоматическим переводом заказа в нужный статус
✔ Частичные оплаты
✔ Шесть режимов формы оплаты на выбор, отдельно для каждой платёжной системы: на сайте можно держать и карты, и СБП, и T-Pay одновременно
Чеки и 54-ФЗ
✔ Печать чеков через Т-Банк с полным соответствием 54-ФЗ
✔ Все действующие ставки НДС, включая расчётные 22/122, 10/110, 7/107 и 5/105
✔ Все системы налогообложения (ОСН, УСН «доходы» и «доходы минус расходы», ЕСХН, патент)
✔ Полный справочник предметов расчёта и способов оплаты по ФФД, включая версию 1.2 (маркированные товары, взносы, агентские выплаты и т.д.)
✔ Коды маркировки «Честного ЗНАКа» в чеке: модуль берёт их из отгрузки заказа и передаёт по отдельной строке на каждую единицу товара — вводить ничего дополнительно не нужно, достаточно ФФД 1.2 и заполненных кодов в заказе
✔ Ставка НДС, которой касса не знает, не уходит в чек незаметно: модуль сообщает о таком товаре, чтобы ставку поправили в справочнике, а не искали расхождение в ОФД
✔ Закрывающие чеки — по факту отгрузки, оплаты или переводу заказа в заданный статус
✔ Отправка чека не спорит с кассой Битрикса. Чек уезжает банку, когда заполнены система налогообложения и ставка НДС, а если на сайте есть активная касса Битрикса, модуль предупредит об этом прямо в настройках платёжной системы
Двухстадийные платежи
✔ Холдирование средств — подтверждение оплаты в один клик прямо из карточки заказа в админке, либо автоматически по таймауту (в днях)
✔ Заказ помечается оплаченным только после подтверждения от банка: если списание не прошло, оператор видит причину и может повторить попытку, а не получает молча «оплаченный» заказ без денег
✔ Покупатель после оплаты с резервированием видит понятное сообщение — деньги зарезервированы на карте и спишутся, когда магазин подтвердит заказ, — а не «оплата не прошла»
✔ Автоматическое подтверждение зарезервированной оплаты по таймауту (в днях)
✔ Отмена заказа снимает резервирование
Автоматизация и гибкость
✔ Настраиваемые статусы заказа под каждое событие: оплата, частичная оплата, холдирование, возврат, отмена
✔ Кнопка «Отправить ссылку на оплату» в карточке заказа — если оплата ещё не прошла или завершилась ошибкой, которую можно исправить повторной попыткой, письмо со свежей ссылкой на оплату уходит покупателю в один клик. Шаблон письма свободно редактируется в админке; если он отсутствует, выключен или не привязан к сайту заказа, модуль скажет об этом сразу, а не после неудачной отправки
✔ Запоминание карт покупателя: оплатившему один раз банк предложит сохранённую карту. Привязка сохранённых карт — общая или по каждому сайту отдельно, на выбор
✔ Гибкие шаблоны ссылки на заказ в личном кабинете покупателя
✔ Платёжная система создаётся при установке — модуль заводит её сам и сразу открывает её настройки, остаётся ввести терминал и пароль
✔ Переход с модуля банка без перенастройки: если на сайте установлен официальный модуль приёма платежей Т-Банка, платёжную систему можно создать на основе его настроек — терминал, пароль и параметры чека переносятся автоматически, прежняя платёжная система выключается
✔ Готовые иконки для каждого способа оплаты — карты, СБП, T-Pay и всплывающих виджетов
Оповещения о сбоях
✔ Модуль сообщает администратору о проблемах, которые иначе заметны только в логе: сумма платежа не совпала с подтверждённой банком, отклонено уведомление банка, не отправился закрывающий чек, не подтвердилось или не снялось резервирование средств, деньги вернулись покупателю, а заказ не отменился, у товара ставка НДС, которой нет у кассы, покупатель увидел ошибку вместо формы оплаты
✔ Две независимые галочки: критичные сбои приходят немедленно, ошибки покупателей группируются — при сбое на стороне банка почта не превращается в поток одинаковых писем
✔ Доставку берёт на себя бесплатный модуль «Оповещения об ошибках» (rover.notifier, требует PHP 8.2) — на почту, по СМС или в мессенджер (Telegram / WhatsApp / MAX). Без него модуль работает как прежде, просто не отправляет оповещения
✔ Проверка подписи уведомлений банка: уведомление с неверным Token отклоняется, и об этом приходит оповещение — именно так видно попытку подделки
✔ Защита от дублирования чеков при повторных уведомлениях от банка
✔ Ограничение приёма нотификаций по белому списку IP Т-Банка
✔ Ротация и автоматическая очистка логов. Каталог логов закрывается от скачивания из браузера файлом .htaccess; на серверах, где статику отдаёт nginx, он не читается — там каталог нужно закрыть правилом в конфигурации сервера, и модуль говорит об этом в документации
✔ Состояние платежей хранится в собственной таблице модуля, а не в настройках сайта: на магазине с десятками тысяч оплат эти данные больше не читаются целиком при каждом обращени
✔ Журнал операций по платежам ведётся всегда, независимо от логирования: уведомления банка и их отклонения, смены статуса заказа, подтверждение резервирования, отправка закрывающего чека — с источником события и без персональных данных покупателя в записи. Глубина хранения настраивается, старые записи удаляются автоматически
✔ Фоновое автоподтверждение зарезервированных оплат не останавливается на первой ошибке
✔ Отдельная вкладка «Отладка» в настройках модуля: логирование и оповещения не мешают основным настройкам
Младшая версия обновляется тем же кодом и теми же правками, что старшая: переход на Про — это установка старшего модуля, а не переезд на другое решение.
Поддержка
Полная документация по установке и настройке — Перед покупкой и после неё доступна бесплатная консультация: помощь с подключением, настройкой и тестовыми платежами. Поддержку ведёт человек, а не скрипт и не обезличенная «первая линия» — если попадается нестандартный случай, ответ уточняется напрямую у разработчика модуля, а не теряется в очереди тикетов.
Для поиска: Тинькофф, Tinkoff, ТБанк, Т-банк, t-bank, tbank
Кнопка «Установить» на этой странице ставит решение сразу. Второй путь — из админки сайта: Настройки → Marketplace → Установить решение, поиском по названию или по коду rover.tbank. Скачанное решение попадает в Настройки → Marketplace → Установленные решения, и установка запускается уже оттуда.
До того как что-то изменить на сайте, установщик проверяет окружение: версию PHP, версию «Главного модуля», наличие модуля «Интернет-магазин» нужной версии и расширения curl. Если чего-то не хватает — он скажет, чего именно, и остановится, не тронув сайт.
Первый шаг: два вопроса
— На каких сайтах принимаем оплату. Отмеченным сайтам установщик положит страницу, на которую банк возвращает покупателя после оплаты — /personal/order/tbank_success.php. Имя с префиксом взято не случайно: если на сайте уже работает другой платёжный модуль со своей success.php, ничего не перезапишется и его возврат покупателя не сломается. Не отметите ни одного сайта — модуль встанет, но страницу придётся завести руками.
— Платёжная система. Три варианта на выбор:
Созданная платёжная система выключена. Это сделано нарочно: терминал и пароль ещё не введены, принять оплату она всё равно не сможет, а в оформлении заказа покупатель уже увидел бы её в списке.
Установщик:
Последний шаг установки показывает все платёжные системы модуля со ссылками на их настройки и отмечает выключенные.
Магазин → Настройки → Платёжные системы, дальше в созданную платёжную систему.
Терминал. «Идентификатор терминала» и «Пароль» берутся в личном кабинете эквайринга. Пока они не заполнены, модуль к банку не обращается вовсе.
Способ оплаты. У одной платёжной системы он один и выбирается там же, где обработчик: карта на странице банка, карта во всплывающем виджете, СБП по QR-коду, СБП во всплывающем виджете, T-Pay, T-Pay во всплывающем виджете. Чтобы покупатель выбирал сам, заведите по платёжной системе на каждый нужный способ — в оформлении заказа они встанут отдельными вариантами оплаты.
Адреса. «Адрес для получения http-нотификаций», «Страница успеха» и «Страница ошибки» заполнены сразу и правки не требуют. Адрес уведомлений модуль передаёт банку в каждом платеже, поэтому прописывать его ещё и в личном кабинете не нужно.
Тип оплаты — в группе «Статусы и флаги». Одностадийная списывает деньги сразу, двухстадийная сначала резервирует их на карте, а списывает после подтверждения. Оставленное пустым поле отдаёт решение терминалу: тип берётся из его настроек в банке. Заполняйте, только если нужно переопределить терминал со стороны сайта — например, держать на одном терминале оба режима. Рядом задаётся, через сколько дней резерв подтверждается сам.
Чеки. «Система налогообложения» и «НДС» заполняются всегда: по ним собираются данные чека, которые уходят в банк вместе с платежом, и боевой терминал без них вернёт ошибку. Там же — НДС доставки, версия ФФД, предмет и способ расчёта, получатель чека и момент отправки закрывающего чека. Если фискализировать через банк не нужно, касса отключается на его стороне, а не пустыми полями здесь.
Чек кассой самого сайта — это отдельная галочка «Разрешить печать чеков» у платёжной системы: по ней ядро Битрикса ставит платёж в очередь своих кассовых чеков. На то, что уходит в банк, она не влияет, и следить надо за другим: чек должен пробивать кто-то один. Когда работают обе кассы, в ОФД уходит два чека на один платёж. Про включённую кассу сайта модуль предупредит прямо в настройках.
Статусы заказа задаются под каждое событие: резервирование, оплата, частичная оплата, возврат. Там же — отменять ли заказ при возврате и снимать ли резерв при отмене заказа.
Когда поля заполнены, включите платёжную систему и загляните в её ограничения. Выключенная платёжная система или ограничение по сайту, типу плательщика либо сумме — самая частая причина того, что способ оплаты не появился в оформлении заказа.
| Для корректной работы необходимо, чтобы в разделе «Настройка обработчика ПС» на вкладке «По умолчанию» все галочки «По умолчанию» были сняты. |
Кнопки СБП и T-Pay рисует сам банк, поэтому нужный способ должен быть включён в личном кабинете эквайринга: Магазины → Приём оплаты → Кнопки быстрой оплаты. Выключенный способ банк пропускает молча — ни кнопки, ни ошибки, — и через три секунды модуль показывает вместо кнопки ссылку «Перейти к оплате» на платёжную форму банка. Оплата при этом не срывается, но способ стоит всё же включить.
Если на сайте настроен CSP, скрипту банка нужны домены *.tinkoff.ru, *.tcsbank.ru, *.tbank.ru, *.nspk.ru, *.t-static.ru.
ПроверкаОформите тестовый заказ и оплатите его — на тестовом терминале или минимальной суммой на боевом.
| Тестовая карта номер 4300 0000 0000 0777 срок 11/30 код 111 |
Что ответил банк, видно в карточке заказа, в блоке оплаты: код и описание статуса, сумма, время ответа и получатель платежа. Кнопка «Получить» рядом со способом оплаты спрашивает банк заново — полезно, когда уведомление задержалось или не дошло.
Если оплата не доходит, причину обычно видно сразу:
Подробности пишутся в лог: включается он на вкладке «Отладка» в настройках модуля (Настройки → Настройки продукта → Настройки модулей → Интернет-эквайринг Т-Банк приём платежей). Там же настраиваются оповещения о сбоях — письмо приходит раньше, чем о проблеме сообщит покупатель.
УдалениеНастройки → Marketplace → Установленные решения → удалить. На первом шаге стоит галочка «Сохранить данные о платежах»: таблицы с журналом и состоянием платежей останутся на месте. Снимать её стоит осознанно — в них лежит отметка о том, что закрывающий чек уже отправлен, и без неё после повторной установки чек может уйти в ОФД второй раз.
Платёжную систему модуль за собой не убирает, и это тоже сделано нарочно. В ней хранится всё настроенное руками: терминал, пароль, параметры чека, статусы заказа, ограничения. Удаление унесло бы их вместе с ней, а оплаты прежних заказов остались бы со ссылкой на платёжную систему, которой больше нет. Поэтому модуль, снятый на время или переставляемый заново, её не трогает.
Чтобы просто перестать принимать платежи, платёжную систему достаточно выключить: покупатель её не увидит, а в старых заказах останется видно, чем они были оплачены. Удалить её можно в любой момент вручную — Магазин → Настройки → Платёжные системы.
Настройка по шагам и ответы на частые вопросы — в документации по модулю. По подключению, настройке и тестовым платежам доступна бесплатная консультация — напишите в поддержку. Отвечает человек, а не скрипт: нестандартный случай уточняется напрямую у разработчика модуля.
ТребованияВ php.ini должна быть включена директива allow_url_fopen = On, а с сервера должен быть доступ к securepay.tinkoff.ru по порту 443. Проверяется командой:
telnet securepay.tinkoff.ru 443 |