Вопросы про плагину оплаты
В процессе разработки плагина оплаты возникли следующие вопросы (используется дистрибутив http://www.webasyst.com/download/framework/shop/)
1. При возврате от платёжной системы в callback* методах не цепляются настройки плагина (т.е. в settings.php указан 'shopId', в методе payment видно его значение, в callbackInit/callbackHandler - нет). В чём может быть ошибка?
2. Возможно ли и как прописать требования к наличию soap и openssl в файле requirements.php?
3. Есть ли возможность запустить метод плагина оплаты из скрипта по cron'у? Есть ли cron или его подобие в облаке?
4. Как получить заказ и изменить его статус по id?
1. При возврате от платёжной системы в callback* методах не цепляются настройки плагина (т.е. в settings.php указан 'shopId', в методе payment видно его значение, в callbackInit/callbackHandler - нет). В чём может быть ошибка?
2. Возможно ли и как прописать требования к наличию soap и openssl в файле requirements.php?
3. Есть ли возможность запустить метод плагина оплаты из скрипта по cron'у? Есть ли cron или его подобие в облаке?
4. Как получить заказ и изменить его статус по id?
6 ответов
В методе callbackHandler уже должны быть доступны настройки (если они заданы). Подробнее: http://www.webasyst.ru/developers/docs/plugins/payment-plugins/
2. Да, но правильней на случай отсутствия soap можно использовать какую-либо библиотеку, реализующую этот протокол (пример - оплата Qiwi). openssl - указать как 'php.openssl'. Подробнее: http://www.webasyst.ru/developers/docs/basics/system-requirements/
3. Крон доступен, но запуск
4. А это уже забота приложения — плагин должен лишь сообщить статус заказа, а обработчик в приложении на основе этих данных добавит комментарий/сменит статус заказа.
В методе callbackHandler уже должны быть доступны настройки (если они заданы). Подробнее: http://www.webasyst.ru/developers/docs/plugins/payment-plugins/
2. Да, но правильней на случай отсутствия soap можно использовать какую-либо библиотеку, реализующую этот протокол (пример - оплата Qiwi). openssl - указать как 'php.openssl'. Подробнее: http://www.webasyst.ru/developers/docs/basics/system-requirements/
3. Крон доступен, но запуск
4. А это уже забота приложения — плагин должен лишь сообщить статус заказа, а обработчик в приложении на основе этих данных добавит комментарий/сменит статус заказа.
Подозреваю, что вы могли инициализировать приложение из плагина явно (что неправильно) и в этом случае пути для шаблонов ведут в директорию приложения.