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

[ВОПРОС] Текст на странице Liqpay

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

Почему при переходе на страницу "ПРИЁМ ОПЛАТЫ" Liqpay-я в графе "Товар" вписывается следующая информация: название магазина, Ф.И.О. и адрес покупателя, e-mail. (См. рис. http://ipicture.ru/uploads/100709/mVpBqrW7yG.png)

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


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

catalog/controller/payment/liqpay.php 28 строка.

Меняем description, именно его Liqpay Выводит как название товара.

Можно передать туда и список с товарами, но проблема в том что Liqpay не позволяет в этом поле никакого форматирования. И красиво вывести список товаров не получится.

$xml .= '       <description>Order: ' . $this->session->data['order_id'] . '</description>';

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


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

Есть другая проблема, ответ от liqpay не проверяется на success - статус транзакции. Проверяется только на корректность возвращаемой подписи. В результате, если у клиента не хватило на карточке денег, то магазин считает платеж проведенным, потому что liqpay вернул корректно подписанный, но отрицательный ответ.

Предлагается такая функция:

public function callback() {                $xml = base64_decode($this->request->post['operation_xml']);                $signature = base64_encode(sha1($this->config->get('liqpay_signature') . $xml . $this->config->get('liqpay_signature'), TRUE));                $posleft = strpos($xml, 'order_id');                $posright = strpos($xml, '/order_id');                $order_id = substr($xml, $posleft + 9, $posright - $posleft - 10);                                $posleft = strpos($xml, 'status');                  $posright = strpos($xml, '/status');                  $is_success = substr($xml, $posleft + 7, $posright -  $posleft - 8 );                                                                                            if ($signature == $this->request->post['signature'] and $is_success == "success") {                        $this->load->model('checkout/order');                        $this->model_checkout_order->confirm($order_id, $this->config->get('config_order_status_id'));                                  }        }

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


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

ocstore 0.0.4 и 0.0.5, opencart все.Проблемы:1 - в качестве товара на сервере ликпая выдаются реквизиты плательщика. 2- неккоректная обработка ответа платежного сервера. Возможна ситуация с появлением оплаченых заказов, оплаты за которых никогда не придут.Решение (Возможное) тут:viewtopic.php?p=3534#p3534Просьба потестировать.

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


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

Да спасибо, исправление добавил в 0.0.6.

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


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

Да спасибо, исправление добавил в 0.0.6.

Наверное все-таки в 0.0.5? )

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


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

Да спасибо, исправление добавил в 0.0.6.

Наверное все-таки в 0.0.5? )
Именно в 0ю0ю6 - выложу сегодня.

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


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

Сделка проходит, товар из корзины не исчезает, заказ не появляется. Статусы везде выставлены "Сделка завершена"... Что я мог упустить ?

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


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

Чистит корзину catalog/controller/checkout/success.php

То есть у вас не срабатывает роут по результатам успешной операции на checkout/success

Если вы пользуетесь моей версией, это значит не отрабатывает функция checkpay.

код:

$order_info = $this->model_checkout_order->getOrder($this->session->data['order_id']);                if ($order_info['order_status_id'] ==  $this->config->get('config_order_status_id')) {                        $this->redirect(HTTPS_SERVER . 'index.php?route=checkout/success');                } else {                        $this->redirect(HTTPS_SERVER . 'index.php?route=checkout/payment');                }
Функция вызывается, когда вы в ликпее нажимаете кнопку вернуться в магазин.

Если вы не нажали ее - то корзина не очистится.

Если нажали то в любом случае будет либо переход на success и корзина очистится, либо переход на payment и еще одна попытка оплаты.

Так что вопрос, нажимаете ли вы на кнопку возврата в магазин, и что при этом происходит.

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


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

Кнопку в ликпее нажимаю, переходит на index.php?route=checkout/payment , товар в корзине.но оплата проходит. Блин...

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


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

Ребята с такой же проблемой на paypal столкнулся, в дискрипшен название магазина передаётся и не происходит убывания количества товаров в магазине, можете посмотреть моудь pp_standard?

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


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

вобщем, в моем случае затык случается именно на функции checkpay, если на нее забить, все проходит как и должно...

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


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

но оплата проходит. Блин...

Означает ли это, что заказ в магазине формируется и статус заказа меняется на оплаченный?Или оплата проходит только в ликпее, а магазин ни о чем не в курсе?Если оплата все таки фиксируется магазином, то понял в чем проблема.Вы возвращаетесь в магазин раньше, чем приходит доклад от робота платежной системы о получении оплаты. Я это не учел.Просьба потестировать это предположение и кнопку "вернуться в магазин" на сайте ликпея нажать не сразу, а через минуту, например.Кстати - проверьте настройки магазина, должно быть (у меня так, но по умолчанию там по другому) так:post-292-1293741785,7706_thumb.pngP.S. На сервере инет быстрый, на работе не очень. Меня платежный робот обгоняет https://opencartforum.com/public/style_emoticons/default/icon_question.gif Не могу повторить.P.P.S На функцию checkpay забивать не желательно. Попробуйте без неё себе заплатить с несуществующей визы. Магазин примет платёж, хотя в ликпее он и не пройдет.

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


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

Заказ в магазине не формируется. Оплата проходит только в ликпее, магазин таки да, ни о чем не в курсе )Пробовал и через минуту на кнопку нажимать - та же песня. настройки в ликпее такие же.

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


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

Возьмите этот модуль со включенным дебагом. Замените им текущий модуль для ликпая catalog/controller/payment/liqpay.phpСделайте покупку в магазине.Выкладывайте содержимое файла _корень сайта_/system/logs/liqpaylog.txt сюда.Пока ясно что магазин не принимает платеж. checkpay не при чем.

liqpay.debug.php.zip

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


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

Извиняюсь что морочил голову и спасибо за участие )Перенес сайт на другой сервер, стало все нормально . Заказ формируется.

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


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

здраствуйте, подскажите как добавить в модуль, чтобы он учитывал +1% от общей суммы заказа?

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


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

Да. Было бы хорошо, чтоб комиссия снималась из клинта а не с продавца.

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


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

catalog/controller/payment/liqpay.php 28 строка.

Меняем description, именно его Liqpay Выводит как название товара.

Можно передать туда и список с товарами, но проблема в том что Liqpay не позволяет в этом поле никакого форматирования. И красиво вывести список товаров не получится.

$xml .= '	   Order: ' . $this->session->data['order_id'] . '';

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

Заранеее благодарен у меня версия Осторе 0.2.0

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


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

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

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

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

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

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

Войти

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

Войти

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

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

×

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

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