К содержимому
Интеграции

Системная капча

Обновлено

Где выбрать провайдера

Откройте настройки плагина: «Магазин» → «Плагины» → «Капча в оформлении заказа». В блоке «Системная капча» нажмите «Изменить в системных настройках». Там задаются тип капчи и ключи провайдера.

Плагин использует системную конфигурацию Webasyst. Отдельных ключей и отдельного выбора типа капчи внутри плагина нет. Смена системного провайдера влияет и на другие формы установки, использующие системную капчу.

Тип в настройках плагина Подключение
Картинка Вебасиста Используется встроенная картинка Webasyst; ключи внешнего сервиса не нужны
Google reCAPTCHA Получите ключи для своего сайта у Google reCAPTCHA и заполните их в системных настройках Webasyst. Плагину нужны заполненные ключ сайта и секретный ключ
Yandex SmartCaptcha Получите ключи для своего сайта у Yandex SmartCaptcha и заполните их в системных настройках Webasyst. Плагину нужны заполненные ключ клиента и серверный ключ

Невидимый режим также задаётся в системе. Плагин использует системную разметку виджета и показывает признак «невидимая» рядом с его типом. Наличие заполненных ключей не подтверждает, что они действительны для текущего сайта: после подключения проверьте оформление на витрине.

Какие данные используются

Плагин передаёт вывод и проверку внешних капч штатным классам Webasyst. По проверенному коду системных классов:

Провайдер Данные серверной проверки Адрес проверки
Google reCAPTCHA Токен ответа, секретный ключ и IP-адрес посетителя https://www.google.com/recaptcha/api/siteverify
Yandex SmartCaptcha Токен ответа, серверный ключ и IP-адрес посетителя https://captcha-api.yandex.ru/validate

В браузер передаются публичный ключ и разметка системного виджета. Для работы внешней капчи браузер загружает её скрипты. Поля заказа плагин самостоятельно в сервисы капчи не отправляет; таблица описывает параметры серверной проверки, а не полный состав обмена браузерного виджета.

Картинка Вебасиста проверяется внутри установки с использованием сессии. Для неё плагин создаёт отдельный маршрут ordercaptcha/captcha/ относительно витрины и отдельный ключ сессии shop_ordercaptcha.

Предупреждение «Капча не настроена»

На странице настроек выводится причина:

Сообщение Что проверить в системных настройках
Ключ сайта reCAPTCHA не задан. Публичный ключ сайта Google reCAPTCHA
Секретный ключ reCAPTCHA не задан. Секретный ключ Google reCAPTCHA
Ключ клиента SmartCaptcha не задан. Клиентский ключ Yandex SmartCaptcha
Серверный ключ SmartCaptcha не задан. Серверный ключ Yandex SmartCaptcha

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

Пока капча не готова, плагин её не выводит и пропускает заказы без проверки. Если системную капчу удалось создать, но при проверке ответа возникло исключение, проверка считается неудачной: заказ блокируется с настроенным текстом ошибки.

Журнал для разработчика

Путь относительно корня установки:

wa-log/shop/plugins/ordercaptcha.log
Фрагмент записи Значение
orders are not checked, the system CAPTCHA is not configured При проверке заказа обнаружена неготовая системная капча
orders are not checked, the CAPTCHA could not be rendered Разметка капчи отсутствует; заказ пропущен без проверки
render failed Исключение при получении разметки
no storefront route for the CAPTCHA image Не удалось получить URL картинки для витрины
captcha image failed Ошибка формирования самой картинки
validation exception Исключение при проверке ответа

Для сообщений о неготовности, отсутствии разметки, маршрута и ошибках вывода предусмотрено ограничение: каждое такое сообщение записывается один раз за сессию посетителя. Поэтому число строк журнала не равно числу заказов без проверки. Исключения при проверке ответа записываются без этого ограничения.