Ошибки
-
У меня ошибка 404 при попытках пожертвований. Как починить?
Если у вас выводится пустая (без дизайна вашего сайта) страница при попытке пожертвовать (на url Лейки вида mysite.ru/leyka-process-donation, либо в момент событий check или pay), то это значит, что запрос не доходит до Лейки. Ваш веб-сервер не передаёт управление к WordPress и сам показывает страницу с ошибкой 404.
Чтобы такой ошибки не возникало, сайт должен иметь возможность самостоятельно обрабатывать кейс «несуществующей страницы» (404). То есть нужно, чтобы открывалась не страница сервера, а страница сайта «ничего не найдено». Настроить её поможет техническая поддержка вашего хостинга.
-
После проведения платежи статус «Попытка пожертвовать» не переходит в статус «Оплачено». В чём проблема?
Главная проблема может заключаться в том, что вы не настроили коллбэки Лейки. Коллбэки – это специальные адреса вашего сайта, через которые платёжный оператор сообщает Лейке о завершённых платежах. Поэтому если коллбэки не настроены, платёж будет проходить, но Лейка не будет об этом «знать». Ей будет известно только о попытке платежа.
Настройка коллбэков разная для каждого платёжного оператора. Детали обычно есть в документации по соответствующему оператору на сайте Лейки (https://leyka.org/instruction/). Например, для CloudPayments коллбэки – это:
- «Настройки Сheck уведомления». Ссылка: http://vashdomen.ru/leyka/service/cp/check/, где http://vashdomen.ru/ — это адрес вашего сайта.
- «Настройки Pay уведомления». Ссылка: http://vashdomen.ru/leyka/service/cp/complete/, где http://vashdomen.ru/ — это адрес вашего сайта.
- «Настройки Fail уведомления». Ссылка: http://vashdomen.ru/leyka/service/cp/fail/, где http://vashdomen.ru/ — это адрес вашего сайта.
Для Яндекс.Кассы коллбэк (адрес для http—уведомлений) выглядит так: https://your-site.ru/
leyka/service/yandex/process/ Для других платёжных систем будут свои коллбэки.
-
После ввода имени и почты всё виснет, в консоли показывается admin-ajax.php 500 (Internal Server Error), а в статусе пожертвовании написано «Ответа от платёжной системы не получено».
Проверьте, нет ли конфликта с другими плагинами. Деактивируйте другие плагины и проверьте работоспособность.
Известны случаи конфликта со следующими плагинами:
— Ultimate Form Builder Lite (https://ru.wordpress.org/plugins/ultimate-form-builder-lite/)
-
У меня установлены другие плагины WordPress, и Лейка работает неправильно. С какими плагинами могут быть конфликты?
Замечены конфликты со следующими плагинами:
1. WP Fastest Cache и другими плагинами, которые сохраняют копии страниц сайта.
Как проявляется: при отправке формы возможны ошибки вида «Данные формы некорректны».
Почему: Плагин кэширует (т.е. сохраняет копии) страницы сайта, включая значения скрытых nonce-полей. Однако значения таких полей должны быть уникальны при каждом запросе страницы. Бэкенд WP на это ругается.
Использование nonce-полей во фронт-формах — это не необходимая практика для обеспечения безопасности сайта (это рекомендации самого WordPress). Такая проблема может возникнуть не только с Лейкой, а вообще с любой фронт-формой, отвечающей стандартам безопасности WP.
Решение: кэшировать не с помощью сохранения копий страниц (page cache), а, например, с помощью объектного кэшинга (object cache). Это может потребовать установки специального ПО на сервере (redis, memcached или какой-то аналог).3. Header Footer Code Manager
Как проявляется: не работает форма (неактивна кнопка «Пожертвовать»).
Почему: несовместим с javascript-кодом Лейки.
Решение: использовать другие плагины.4. Metronet Tag Manager
Как проявляется: сбор данных через DataLayer не работает при установке тега GTM через этот плагин.
Решение: использовать другие плагины или вставить тег напрямую.5. Any Mobile Theme Switcher
Как проявляется: не проходят тестовые платежи в CloudPayments.
Решение: использовать другие плагины.6. WPFront Scroll Top
Как проявляется: многочисленные дублирующиеся письма об успешном пожертвовании через CloudPayments (т.к. плагин добавляет разметку внутрь коллбэков).
Решение: не использовать плагин.7. Popups – WordPress Popup
Как проявляется: на странице пожертвований исчезает кнопка «Экспорт (CSV)»8. Polylang
Как проявляется: не работает локализация Лейки (отдельные элементы формы отображаются на английском языке).
Решение:
1. Перейдите в настройки Лейки.
1.1. Измените значения всех настроек во вкладках «Вид» и «Валюта» с русскоязычных значений на англоязычные. Например, для параметра «Текст на кнопке отправки пожертвования» нужно изменить значение с «Пожертвовать» на «Donate».
1.2. На каждой вкладке сохраните изменения.
2. Перейдите в Languages -> String translations.
2.1. Вы видите список всех значений настроек ядра, всех тем и плагинов на сайте. Отфильтруйте этот список по домену «leyka» (вы получите все настройки Лейки).
2.2. В полученном списке найдите значения всех настроек, которые вы перевели на англ. язык на шаге 1.1 и 1.2.
2.3. Для каждой такой настройки в самом правом столбце списка укажите перевод на русский. Например, для параметра «Текст на кнопке отправки пожертвования» нужно указать перевод на русский «Пожертвовать».
2.4. Сохраните изменения.
После этого все переведённые вами поля настроек на всех формах для пожертвований будут на корректном текущем языке. -
Доноры не получают письма от Лейки, что делать?
По умолчанию письма отправляются с помощью встроенной функции wp_mail. В большинстве случаев доставка писем будет работать правильно, но некоторые хостинги в целях борьбы со спамом не дают работать встроенной функции wp_mail. В таком случае письма могут попадать в папку «Спам» или полностью блокироваться.
Решить эту проблему можно путём настройки Simple Mail Transfer Protocol (SMTP). Отправку через SMTP вы можете настроить с помощью любого популярного WordPress-плагина (мы рекомендуем WP Mail SMTP). При выборе плагина обратите внимание на количество активных установок, оценки и частоту обновлений.
Помимо установки плагина для SMTP вам нужно выбрать сервис для отправки писем и указать в плагине его настройки. Многие пользователи предпочитают бесплатные решения (например, Gmail SMTP), но при работе с ними следует помнить об ограничениях на количество отправляемых писем. Например, для Gmail лимит составляет 100 писем за 24 часа.
Если вы принимаете много пожертвований и Лейка отправляет много писем, то бесплатные решения могут не справляться с нагрузкой. В этом случае рекомендуем использовать платные сервисы для доставки писем (Mailgun, Amazon SES, SendPulse и прочие).
-
В Лейке не отображаются старые рекуррентные подписки из CloudPayments
Если первый платеж по рекуррентной подписке был проведен не через Лейку (например, сначала вы принимали платежи напрямую через CloudPayments, а Лейка была установлена и подключена к CP позже), может срабатывать следующий сценарий:
СР отправляет в Лейку данные о списаниях по рекуррентным подпискам, но Лейка не учитывает такие списания в своей базе, потому что в ней нет данных об этих подписках (т.к. они выполнялись ещё до её появления).
Чтобы решить эту проблему необходимо импортировать подписки из CloudPayments в Лейку.
Импорт подписок из Cloudpayments в Лейку
- Зайдите в ЛК СР.
- Перейдите в раздел «Подписки».
- В полях фильтров выберите:
«сайт» — выбрать тот, на котором установлена Лейка,
«статус подписки» — выбрать «активна».
Далее нажать «найти», затем «экспорт в EXCEL».
В результате ваш браузер загрузит файл «Подписки.csv» (название примерное).
- Подключитесь к сайту по FTP, зайдите в папку Лейки (в папке сайта /wp-content/plugins/leyka/).
- Загрузите в папку Лейки файл «Подписки.csv», сохраненный в п.3
ВАЖНО: убедитесь, что после загрузки файл называется именно «Подписки.csv».
- Откройте в браузере адрес your-website.ru/leyka/service/procedures/import-recurring-subscriptions-cp/ (где «your-website.ru» — корневой адрес вашего сайта).
- Убедитесь, что процедура импорта прошла без ошибок. Для этого зайти в админ. раздел сайта, далее на страницу «Лейка — Рекуррентные подписки» и проверить, что в списке появились новые активные подписки.
-
Не работает check-уведомление в CloudPayments, в чём причина?
Если check-уведомления в СloudРayments не проходят (возникает ошибка {«code» :»10″}), надо проверить, что и сайт, и коллбэки в настройках СР работают по одному и тому же протоколу. Если сайт через HTTPS, то и коллбэки должны быть с HTTPS (и наоборот).
-
Ошибка «Данные формы некорректны»
Если у вас установлены плагины для кеширования страниц, например, WP Fastest Cache, добавьте страницы кампаний Лейки в исключения.
Плагин кэширует (т.е. сохраняет копии) страницы сайта, включая значения скрытых nonce-полей. Однако значения таких полей должны быть уникальны при каждом запросе страницы.
Использование nonce-полей во фронт-формах — это не необходимая практика для обеспечения безопасности сайта (это рекомендации самого WordPress). Такая проблема может возникнуть не только с Лейкой, а вообще с любой фронт-формой, отвечающей стандартам безопасности WP.
-
Ошибка Receipt is missing or illegal (Юкаssа)
У вас подключена Юкаssа, но при попытке платежа возникает ошибка: «ОШИБКА ПРИ ОБРАБОТКЕ ПЛАТЕЖА: RECEIPT IS MISSING OR ILLEGAL. ERROR CODE: INVALID_REQUEST. PARAMETER NAME: RECEIPT».
Такое сообщение значит, что у вас в ЮКаssе включены чеки. Лейке они не нужны, и она их не поддерживает, поэтому если чеки включены, возникает ошибка.
Чеки можно выключить двумя способами:
- В ЛК Юкаssы, в настройках фискализации.
- Через запрос к менеджеру ЮКассы.
-
Статусы платежей отображаются некорректно (Tinkoff)
Если вы используете Tinkoff Эквайринг, у вас настроены коллбэки, но статусы платежей в Лейке отображаются некорректно, проверьте ваш протокол SSL.
На момент июня 2023 с платежной системой работал только Mozilla Intermediate. Mozilla Modern security входил в конфликт в Лейкой.
-
Не списываются рекуррентные платежи
В первую очередь, пожалуйста, проверьте настроен ли cron-job (если для вашей платежной системы это необходимо) по инструкции или по инструкции по настройке вашей платежной системы. Если все настроено верно, ошибка может воспроизводиться по двум причинам:
1. Если все платежи в статусе «Попытка пожертвовать», Лейка не получает данных об итоговом статусе платежа. Пожалуйста, проверьте настройки уведомлений по инструкции по настройке вашей платежной системы.
2. Если настройки уведомлений настроены верно, и есть платежи, которые получают верный статус, вероятнее всего не срабатывает крон. Пожалуйста, замените команду и укажите:
- Тип запроса — php-скрипт
- Команда — абсолютный адрес файла процедуры
[путь к папке с сайтом]/public_html/wp-content/plugins/leyka/procedures/leyka-active-recurring.php
уточнить адрес файла процедуры можно в настройках платежного оператора в Лейке в соответствующем блоке: - Периодичность выполнения cron-job — раз в сутки, в 4 часа утра по часовому поясу вашего сайта.
-
При оплате возникает ошибка “Неверный номер заказа” (CloudPayments)
Часто такая ошибка возникает, если в настройках уведомлений (пункты 3,4,5 и 6 инструкции по подключению CloudPayments) неверно указан протокол — например, http://vashdomen.ru вместо https://vashdomen.ru. Если сайт через HTTPS, то и в настройках необходимо указать сайт с HTTPS (и наоборот).
Если этот параметр указан верно, но ошибка все равно возникает, напишите нам. Мы все проверим.