Перейти к содержанию
shoputils

Недочет в ZPayment и Webmoney (ocStore 0.6, Opencart 1.4.8)

Рекомендуемые сообщения

Заметил один недочет для модулей оплаты ZPayment и Webmoney (ocStore 0.6, Opencart 1.4.8).

В обоих модулях

В модуле: catalogcontrollerpaymentzpayment.php, в строке метода success():

$this->model_checkout_order->confirm($LMI_PAYMENT_NO, $this->config->get('config_order_status_id'), 'Z-payment');

должно быть так:

$this->model_checkout_order->confirm($LMI_PAYMENT_NO, $this->config->get('zpayment_order_status_id'), 'Z-payment');

Так как: config_order_status_id - это глобальная настройка статуса платежа по умолчанию для всей системы, а zpayment_order_status_id - "статус заказа после оплаты" именно для ZPayment.

То есть сейчас эта опция в модуле не используется, и при установке модуля возникла небольшая заминка - почему статус платежа не устанавливался автоматом, в то значение которое я установил в модуле.

То же самое и для модуля Webmoney в модуле catalogcontrollerpaymentwebmoney.php, в строке метода success() :

$this->model_checkout_order->confirm($LMI_PAYMENT_NO, $this->config->get('webmoney_order_status_id'), 'Webmoney');

Должно быть:

$this->model_checkout_order->confirm($LMI_PAYMENT_NO, $this->config->get('webmoney_order_status_id'), 'Webmoney');

Другие модули не проверял. Но думаю, что копипаст там точно должен быть :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тут все верно. Потому как адрес succsess продергивается пользователем. Там нет проверки на подпись. А следовательно любой злоумышленник может пометить товар как оплачен. А нам этого не нужно. Поэтому товар в этом локейшине помечается как в "обработке".

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В моей версии Z-Payment есть проверка на подпись.До вебмани не добрался пока :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оказывается в Webmoney есть проверка CRC, поэтому правильнее было бы поставить:

$this->model_checkout_order->confirm($LMI_PAYMENT_NO, $this->config->get('webmoney_order_status_id'), 'Webmoney');

А для ZPayment, нешел модуль уже улучшенный, с проверкой CRC и т.д.

Лежит тут: https://opencartforum.com/viewtopic.php?f=10&t=585

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.