Автор Тема: Оплата виртуального товара через webmoney  (Прочитано 1084 раз)

04 Сентября 2013, 03:12:51
  • Новичок
  • *
  • Сообщений: 1
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Здравствуйте! После оплаты "виртуального товара" через модуль webmoney деньги приходят, но покупатель не получает "связанный" файл, в нашем случае уникальный пин-код. Вместо этого он получает сообщение об ожидании оплаты, хотя деньги на кошелек продавца уже поступили. Как сделать чтобы после оплаты пользователь все таки видел ссылку на свой связанный файл?
Скрин прилагается.
04 Сентября 2013, 09:53:34
Ответ #1
  • Модератор
  • Ветеран
  • *****
  • Сообщений: 86196
  • Репутация: +25412/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль проверять, он должен менять статус заказа. Если таких функций нет, то нужно в ручную изменять статус.
04 Сентября 2013, 10:20:04
Ответ #2
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
А на что влияет поле:
"Создавать заказ после получения уведомления об оплате"


Имеет ли смысл его включить или нет?

Может ли этот модуль некорректно работать из-за неподключённого Мегастока?
Ибо самая первая сделка была успешной!
04 Сентября 2013, 11:49:36
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 763
  • Репутация: +6/-0
  • Сообщество PrestaShop
    • Просмотр профиля
А на что влияет поле:
"Создавать заказ после получения уведомления об оплате"

Может ли этот модуль некорректно работать из-за неподключённого Мегастока?

Включите создавать заказ и проверьте.
Обычно так нужно делать, чтобы в магазин вернулось сообщение о полученной оплате.
04 Сентября 2013, 17:18:39
Ответ #4
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Включил данную опцию, после чего та же схема, деньги падают, а связанного файла нет, но появилась надпись: "Order number is not set". Номер заказа не установлен, он должен автоматически генерироваться же? В заказах он не появляется. Прошлые пробы оставались в заказах.
04 Сентября 2013, 17:25:16
Ответ #5
  • Ветеран
  • *****
  • Сообщений: 1255
  • Репутация: +32/-1
  • Сообщество PrestaShop
    • Просмотр профиля
Модуль переустановить пробывали?
04 Сентября 2013, 17:34:39
Ответ #6
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Да, удалял. Сейчас попробую ещё раз
04 Сентября 2013, 17:50:49
Ответ #7
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
надпись появляется уже на success.php т.е. на последнем шаге. Проблема-то, может, не в модуле? Там всё по-умолчанию стоит, как и было, ассоциация с numberorder стоит.
Народ, помогите-спасите :)

success.php

class webmoneysuccessModuleFrontController extends ModuleFrontController
{
    public $ssl = true;

    public function initContent()
    {
        parent::initContent();
       
        $ordernumber = Tools::getValue('LMI_PAYMENT_NO');
        $this->context->smarty->assign('ordernumber', $ordernumber);

        if (Configuration::get('webmoney_postvalidate'))
        {
            if (!$ordernumber)
                webmoney::validateAnsver($this->module->l('Cart number is not set'));

            $cart = new Cart((int)$ordernumber);
            if (!Validate::isLoadedObject($cart))
                webmoney::validateAnsver($this->module->l('Cart does not exist'));

            if(!($ordernumber=Order::getOrderByCartId($cart->id)))
                $this->setTemplate('waitingPayment.tpl');
        }

        if (!$ordernumber)
            webmoney::validateAnsver($this->module->l('Order number is not set'));

        $order = new Order((int)$ordernumber);
        if (!Validate::isLoadedObject($order))
            webmoney::validateAnsver($this->module->l('Order does not exist'));

        $customer = new Customer((int)$order->id_customer);
        if ($customer->id != $this->context->cookie->id_customer)
            webmoney::validateAnsver($this->module->l('You are not logged in'));

        if ($order->hasBeenPaid())
            Tools::redirectLink(__PS_BASE_URI__ . 'order-confirmation.php?key=' . $customer->secure_key . '&id_cart=' . (int)($order->id_cart) . '&id_module=' . (int)$this->module->id . '&id_order=' . (int)$order->id);
        else
            $this->setTemplate('waitingPayment.tpl');
    }
05 Сентября 2013, 00:43:26
Ответ #8
  • Ветеран
  • *****
  • Сообщений: 974
  • Репутация: +5/-0
  • Иногда заглядываю
    • Просмотр профиля
    • Помощь патентообладателям по продаже патентов.
Проверьте настройки Мерчанта, там нужно прописывать адреса
отсылки сообщений по которым происходит изменение статуса заказа.
Не боги горшки обжигают, не зачем им такой хренью заниматься.
05 Сентября 2013, 09:39:05
Ответ #9
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Нет, плагин сам прописывает и создаёт линки. Самая первая продажа увенчалась успехом, а последующие стали такими.
05 Сентября 2013, 09:47:56
Ответ #10
  • Пользователь
  • **
  • Сообщений: 96
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Если первый заказ прошел, а потом не работает, то нужно проверить нумерацию заказов. Удалить не нужные, может быть ошибка в таблице регистрации заказов. Поэтому и ошибка, что номер не присвоен.
05 Сентября 2013, 10:06:59
Ответ #11
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Простите, а как удалить ненужные? В заказах подобной функции не вижу
05 Сентября 2013, 12:14:56
Ответ #12
  • Фрилансер
  • *
  • Сообщений: 245
  • Репутация: +3/-0
    • Просмотр профиля
В таблице заказов должна быть иконка для удаления, последняя колонка.
05 Сентября 2013, 13:11:44
Ответ #13
  • Ветеран
  • *****
  • Сообщений: 33010
  • Репутация: +26761/-0
    • Просмотр профиля
После подтвеждения об оплате должен всегда создаваться новый заказ. Без этого покупатель не получит ссылку на скачивание.
В prestashop заказы создаются по порядку номеров, поэтому вам модуль и не может создать заказ.
Какие настройки есть в этом модуле?
05 Сентября 2013, 13:47:34
Ответ #14
  • Новичок
  • *
  • Сообщений: 11
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
После подтвеждения об оплате должен всегда создаваться новый заказ. Без этого покупатель не получит ссылку на скачивание.
В prestashop заказы создаются по порядку номеров, поэтому вам модуль и не может создать заказ.
Какие настройки есть в этом модуле?

Вручную?
Настройки модуля лишь поле секретного ключа и поля для номера кошельков. И функция включения и отключения "создания заказа после получения оплаты"