Настройка cron-job
Cron-job для рекуррентов
Настройка cron-job обязательна, если вы хотите принимать рекуррентные платежи через Юкассу, Сбербанк-эквайринг, Робокассу. Это процедура, которая активизирует снятие средств по активной подписке.
Настройка вызова процедуры возможна двумя способами:
- По PHP-скрипту через абсолютный файл процедуры. Мы рекомендуем именно этот способ — особенно для тех, у кого много пожертвований.
- По URL.
Настройка популярных хостингов по PHP-скрипту (рекомендуемый способ)
- Найдите абсолютный адрес файла процедуры
В админке настроек платежного оператора в Лейке поставьте чекбокс “доступны ежемесячные рекуррентные пожертвования”.
Скопируйте абсолютный адрес файла процедуры из соответствующего блока:
2. Создайте задание на хостинге по инструкции ниже.
Хостинг Timeweb
- Зайдите в раздел Инструменты — «Crontab»
2. Добавьте новую задачу.
3. Параметры задачи:
- Поле «Название»: понятное вам обозначение задачи. Например, «Рекурренты для ЮКассы — Лейка»
- Поле «Исполнитель»: Укажите сценарий PHP более 7, но не более 8.
- В поле “путь до файла” кликните на выпадающий список и найдите скрипт, оканчивающийся на leyka-active-recurring.php у нужного сайта.
- Поле «Периодичность»: раз в день
- Поле «Время выполнения»: 3 или 4 часа ночи.
4. Сохраните изменения.
Если у вас несколько сайтов с хостингом на Таймвебе нужно проследить, чтобы путь относился в нужному сайту. В этом случае процедуру может понадобиться прописать вручную.
Nic.ru
1. Зайдите в Планировщик заданий, создайте новую задачу.
2. Укажите параметры задачи:
- укажите название команды
- тип файла «Тип файла: PHP»
- в поле «Команда или путь к файлу» укажите абсолютный адрес файла процедуры
- период: раз в день
- время запуска (4 часа ночи)
- впишите ваш сайт.
3. Сохраните изменения.
Хостинг Reg.ru
1. Перейдите в панель управления хостингом:
2. Нажмите на ссылку в поле «Адрес панели управления хостингом» и перейдите в панель управления ISPmanager.
3. Для входа в ISPmanager введите логин и пароль из блока «Доступ к FTP» из панели управления хостингом.
4. В ISPmanager зайдите в раздел «Планировщик CRON»
5. Создайте новое задание.
6. Заполните информацию в полях:
- Команда: wget -q -O/ абсолютный адрес файла процедуры
- Описание: понятное вам описание команды. Например, Списание рекуррентов.
- Поставьте галочку «Включено»
- Расписание: базовый режим
- Время выполнения: ежедневно
- Выполнить в: 4 часа
7. Нажмите «Создать».
8. Свяжитесь с поддержкой хостинга и уточните, корректно ли настроен крон.
Хостинг Beget
1. В Меню перейдите в раздел CronTab:
2. Через мастер заданий создайте cron-job:
3. В настройках укажите:
- Команда: PHP
- Команда для выполнения (поле справа от «Команды»): абсолютный адрес файла процедуры
- «Каждый день»
- «В указанные часы» поменяйте на 4.
4. Нажмите «Добавить задание».
Настройка cron-job на популярных хостингах по URL
1. Создайте новую задачу. Тип задачи выберите «Запрос по протоколу HTTPS».
2. В адресе процедуры подставьте нужный url в одинарные кавычки ‘https://’, а именно ‘http://your-site.org/leyka/service/do_recurring/’
Обратите внимание:
- вместо «your-website.org подставьте адрес вашего сайта.
- если у вас http, в процедуре должно стоять http. Если https, то https.
Проверка работы крона
Для проверки работы рекомендуем:
1. Проверить, корректно ли создаются подписки (переходят ли в статус оплачено):
Зайдите в раздел «рекуррентные пожертвования» в админке Лейки
Если на данное число нет активных рекуррентных подписок, создайте тестовую подписку (например, на 1 рубль). если другие подписки на это число есть, выберите для проверки число без других подписок.
В разделе Настройки — Разработчикам — Дополнительно включите «Режим отладки»
Вызовите процедуру списания рекуррентов вручную: site.org/leyka/service/do_recurring (результат — белая страница)
Проверьте, появилось ли в админке новое оплаченное рекуррентное пожертвование по новой тестовой подписке.
Выключите режим отладки
Если подписки создаются корректно, в админке появится автосписание.
2. Проверить, проходит ли автосписание:
Зайдите в настройки крона на хостинге.
Укажите время срабатывания скрипта на пару минут в будущем от момента тестирования.
Подождите списания.
Если появляется еще одно списание по тестовой подписке, то автосписания в другое время тоже будут срабатывать.
Если автосписания не появилось, значит крон настроен некорректно. Возможные шаги:
1) Время указано неправильно. Надо узнать у хостинга, по какой часовой зоне работает их крон.
2) Время указано правильно, неправильно указан путь до файла в настройках крона. Напишите в поддержку хостинга, сообщие им абсолютный адрес процедуры из админки Лейки и уточните, какие корректные параметры нужно ввести.
3. Написать в поддержку хостинга и узнать, срабатывает ли крон.
Настройка cron-задания для работы с Google Data Studio
1. Настройте задание по вызову файла с процедурой (с помощью php) 1 раз в сутки, желательно ночью.
2.2. Укажите путь до скрипта процедуры. Это значение указано напротив пункта Путь до скрипта процедуры в настройках расширения. Обычно это /home/dev/web/your-site.ru/public_html/wp-content/plugins/leyka/extensions/gds-integration/leyka-gds-data-preparation.php (где your-site.ru это адрес вашего сайта)
Как это будет выглядеть в панелях управления самых популярных хостингов (подсказки с принскринами панелей хостингов смотрите в инструкции выше):
Timeweb:
Во вкладке Crontab перейдите по кнопке Добавить новую задачу.
Настройте задачу, выберите исполнителем “Сценарий PHP”, укажите периодичность “Раз в день”, а также отметьте время выполнения. В поле “Путь до файла” укажите путь до скрипта процедуры (значение из пункта 2.2).
Reg.ru:
Из панели Reg.ru надо перейдите в панель управления ISPmanager.
В разделе «Главное» перейти в подраздел «Планировщик».
В поле команда вписываем wget и путь до скрипта процедуры (значение из пункта 2.2). Например, wget /home/dev/web/your-site.ru/public_html/wp-content/plugins/leyka/extensions/gds-integration/leyka-gds-data-preparation.php (где your-site.ru это адрес вашего сайта).
Beget:
Перейдите в раздел CronTab Планировщик заданий.
Выберите тип выполняемой операции (PHP-скрипт). «В указанные часы» поменяйте на 4, «в указанные минуты» можно оставить как есть (1) или поменять на 0. Добавьте в поле Команда для выполнение путь до скрипта процедуры (значение из пункта 2.2).
Nic.ru:
Зайдите в Планировщик заданий.
Выберите тип файла «Команда» и приведите ее к следующему виду:
php $HOME/dev/web/your-site.ru/public_html/wp-content/plugins/leyka/extensions/gds-integration/leyka-gds-data-preparation.php (где your-site.ru это адрес вашего сайта)