Deprime
@Deprime
web-developer

Как настроить автоматическое изменение статуса заказа в minishop при оплате?

Создан сайт на ModX Revo. Сайт должен обеспечивать платную подписку на его закрытые разделы.
Подключены следующие компоненты:
  • minishop2
  • msProfile
  • mspYaCassa
  • PayAndSee

Пользователь регистрируется, затем пополняет себе счет. Пополнение счет происходит через оплату виртуального товара. То есть, создается заказ - в статусе Новый с этим самым виртуальным товаром.
После перехода к оплате/пополнению - пользователь улетает в выбранный вариант платежной системы. После того как он оплатил, он прилетает на сайт и оплата проходит успешно (тестил на Яндекс.Деньгах), но вот статус заказа остается все тот-же - Новый.

Как сделать автоматический переход из статуса Новый в статус Оплаченный?

ПС: насколько я разобрался - нужно дополнительно указать вариант оплаты и метод доставки. Но в форме пополнения счета у msProfile нет этих моментов. Либо я их проглядел.
  • Вопрос задан
  • 1269 просмотров
Пригласить эксперта
Ответы на вопрос 1
lexikon
@lexikon
Оповещение системой должно быть об успешной оплате, обычно такой файл идёт вместе с модулем оплаты для modx, в вашем случае mspYaCassa.
Смотрите в /core/components/minishop2/custom/payment/*
А так нужно расширять класс mspaymenthandler.class.php, в котором в методе receive() должен содержаться код вида
switch ($params['Status']) {
            case 'CONFIRMED':
                $this->changeOrderStatus($order, 2);
                break;
            case 'REJECTED':
                $this->changeOrderStatus($order, 4);
                break;
            default:
                break;
        }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы