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

Как добавить свой способ оплаты для ocStore 2.3?

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

Есть ли способ реализовать вот такое же для ocStore 2.3.0.2?

Просмотрел изменения в файловой структуре ocStore 2.3, там добавили папку exstension, попробовал адаптировать способ по ссылке выше, но чуда не произошло (начались проблемы с правами доступа, да и что куда копировать, до конца не ясно; к тому же, необходимо править и сами файлы).

 

Просьба помочь подробной инструкцией о том, как добавить свой простенький способ оплаты (можно на базе стандартного модуля) в OpenCart указанной версии.

Требуется это для реализации возможности купить товар в кредит (способ оплаты будет привязан к конкретному брокеру).

Спасибо.

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


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

ashap, тогда вам вопрос: как привязать ваш способ оплаты к нашему js-коду? К примеру, нужно послать post-запрос после того, как выберут способ оплаты "В кредит" и нажмут "Оформить заказ". В обычной кнопке это можно прописать в onclick, а здесь как?

Изменено пользователем Flank

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


Ссылка на сообщение
Поделиться на другие сайты
Только что, Flank сказал:

ashap, тогда вам вопрос: как привязать ваш способ оплаты к нашему js-коду? К примеру, нужно послать post-запрос после того, как выберут оплату и нажмут "Оформить заказ". В обычной кнопке это можно прописать в onclick, а здесь как?

также как вы собирались сделать по инструкции метод на основе стандартного

это готовые клоны

все тоже самое как и у метода из коробки

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


Ссылка на сообщение
Поделиться на другие сайты
Только что, ashap сказал:

также как вы собирались сделать по инструкции метод на основе стандартного

это готовые клоны

все тоже самое как и у метода из коробки

А вообще можете подсказать? Дело в том, что оплату пока доводилось реализовывать только в рамках эквайринга, а там несколько иной механизм. Инструкции на этот счёт нет, только примеры самого js-кода

Изменено пользователем Flank

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


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

Нужна отправная точка, из которой аяксом будет послан post-запрос. В обычном, вручную свёрстанном документе это можно было бы сделать по нажатию на кнопку. Здесь тоже, насколько я понимаю, нужно привязаться к кнопке "Оформить заказ" в корзине. Только вот кнопка эта опенкартовая. Как повесить на неё js-код, естественно, чтобы он отрабатывал только в случае, когда выбран конкретный способ оплаты?

Изменено пользователем Flank

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


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

а зачем аякс

в методах оплаты есть функция confirm обычно, это тот момент когда создается заказ

вот туда и кладите ваш post через curl например

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


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

В каких это файлах, не подскажете?

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


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

если аякс то кнопка лежит в методе оплаты своя

catalog/view/theme/default/extension/payment/oplata.tpl

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


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

а confirm

в catalog/controller/extension/payment/oplata.php

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


Ссылка на сообщение
Поделиться на другие сайты
22 часа назад, ashap сказал:

если аякс то кнопка лежит в методе оплаты своя

catalog/view/theme/default/extension/payment/oplata.tpl

Может, в catalog/view/theme/default/template/extension/payment ?

Если так, то я добавил туда alert для проверки, по нажатию на кнопку "Подтвердить заказ" в корзине он не сработал

$('#button-confirm').on('click', function() {alert('Тест');

...

});

 

Изменено пользователем Flank

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


Ссылка на сообщение
Поделиться на другие сайты
Только что, Flank сказал:

Может, в catalog/view/theme/default/template/extension/payment ?

Если так, то я добавил alert для проверки, по нажатию на кнопку "Подтвердить заказ" в корзине он не сработал

да

плохо добавили

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


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

$.ajax({
        type: 'get',
        url: 'index.php?route=extension/payment/cod/confirm',
        cache: false,
        beforeSend: function() {
            $('#button-confirm').button('loading');
        },
        complete: function() {
            $('#button-confirm').button('reset');
        },
        success: function() {
            alert("Success");
            location = '<?php echo $continue; ?>';
        }

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


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

ashap, спасибо за пример. Он рабочий и тему можно считать отвеченной.

Однако я попросил бы вас уточнить некоторые детали сверх заявленной темы. В  success: function(data) мне приходят данные, которые определённым образом разбираются. На их основе формируется popup-окно с формой (полями ввода и кнопкой "Отправить"), а также кнопкой "Закрыть" в виде крестика. И только если это окно корректно заполнено и форма отправлена (аяксом, без перезагрузки страницы), следует уменьшать кол-во товара на единицу, т.е. по сути купить его. Но если это окно сразу закрыть крестиком (например, пользователь передумал и решил выбрать другой способ оплаты), количество товара всё равно уменьшится на 1. Как этого избежать, чтобы кол-во товара в этом случае осталось прежним, т.е. заказ не был оформлен и управление вернулось на страницу корзины?

Изменено пользователем Flank

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


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, Flank сказал:

ashap, спасибо за пример. Он рабочий и тему можно считать отвеченной.

Однако я попросил бы вас уточнить некоторые детали сверх заявленной темы. В  success: function(data) мне приходят данные, которые определённым образом разбираются. На их основе формируется popup-окно с формой (полями ввода и кнопкой "Отправить"), а также кнопкой "Закрыть" в виде крестика. И только если это окно корректно заполнено и форма отправлена (аяксом, без перезагрузки страницы), следует уменьшать кол-во товара на единицу, т.е. по сути купить его. Но если это окно сразу закрыть крестиком (например, пользователь передумал и решил выбрать другой способ оплаты), количество товара всё равно уменьшится на 1. Как этого избежать, чтобы кол-во товара в этом случае осталось прежним, т.е. заказ не был оформлен и управление вернулось на страницу корзины?

не вызывать confirm и location будет checkout/cart

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


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, ashap сказал:

не вызывать confirm и location будет checkout/cart

С location понятно, а что есть confirm? Если это кнопка #button-confirm, так у меня на неё всё и завязано. И метод confirm в php тоже задействован, там curl отправляется

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


Ссылка на сообщение
Поделиться на другие сайты
2 минуты назад, Flank сказал:

С location понятно, а что есть confirm? Если это кнопка #button-confirm, так у меня на неё всё и завязано. И метод confirm в php тоже задействован, там curl отправляется

$.ajax({
        type: 'get',
        url: 'index.php?route=extension/payment/cod/confirm',

в нем меняется статус у заказа если говорить про cod например

 

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

 

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


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

ashap, а есть ли возможность как-то привязать этот способ оплаты к карточке конкретного товара, чтобы была возможность купить его сразу, минуя корзину? Если с этим модулем не получится, возможно, есть другой для этих целей?

Изменено пользователем Flank

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


Ссылка на сообщение
Поделиться на другие сайты
Только что, Flank сказал:

ashap, а есть ли возможность как-то привязать этот способ оплаты к карточке конкретного товара, чтобы была возможность купить его сразу, минуя корзину?

естественно

пишите модуль быстрого заказа с поддержкой  методов оплаты

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


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

ashap, помогите, пожалуйста, разрешить следующие вопросы, связанные с вышеизложенным:
1) В корзине по нажатию на кнопку "Все данные верны, оформить заказ" при выбранном способе оплаты (установленном через ваш модуль) мы вызываем своим кодом модальное окно. Это окно можно закрыть и тогда будет считаться, что пользователь отказался от заказа. Однако письмо об успешном заказе ему из OC отправляется. Как управлять отправкой письма либо хотя бы блокировать эту отправку вручную по факту закрытия модального окна (соответствующее событие для этого имеется)?
2) Как при таком собственном способе оплаты придать конкретному товару в админке OC статус "заказан", т.е. не просто сделать пометку, а создать заказ, уменьшить кол-во таких товаров на 1 и провести остальные операции, которые проводит сам OC , когда товар заказан одним из штатных способов? Через корзину это работает, но у нас есть ещё и возможность заказать из карточки и со страницы товара, т.е. туда просто вставлена кнопка, к которой привязан вызов модального окна

Изменено пользователем Flank

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


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

1) чтобы создать заказ вызываете метод confirm

чтобы не создавать и не отправлять писем не вызываете метод confirm

 

2) берете модуль быстрого заказа который умеет создавать заказ а не просто на почту отправлять письмо (есть такие)

ну и делаете по примеру или на нем свое

 

за списание отвечает статус заказа - который входит в завершенные заказы

настраивается в настройках магазина - галкой отмечаете нужные статусы

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


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

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

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

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

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

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

Войти

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

Войти

  • Похожий контент

    • От buslikdrev
      1 600.00 руб · Срок продления: 400.00 руб за год
      Скачать/Купить дополнение


      Подкатегории / Линейка продукции для производителей
      Название модуля: Линейка продукции для производителей - "SubManufacturers"
      Версия модуля: 1.1
      Тип лицензии: Full (Полная версия)
      Тип установки: ocmod
      Язык: Беларуская мова, English, Русский язык, Українська мова
      Дата создания: 30.05.2017
      Дата обновления: 15.02.2018
      Был протестирован на: OpenCart.pro 2.1.0.2.2 и 2.3.0.2.3, OpenCart-"Русская сборка" 2.1.0.2 (rs1) и 2.3.0.2 (rs6), ocStore 2.1.0.2.1 и 2.3.0.2.3 - шаблон (default, Magazin, Revolution, Journal 3, Lightshop)
      Название архива 1: SubManufacturers v1.0 Full OpenCart.pro 2.1.X.zip
      Название архива 2: SubManufacturers v1.1 Full OpenCart 2.X.zip
      Добавлен архив модуля: ManufacturerWall v1.1 Full OpenCart 2.X-3.0.X.zip
       
      При покупки более 1-ой лицензии, скидка50%
       
      ДЕМОНСТРАЦИЯ


      ОПИСАНИЕ
      Модификатор предназначен для добавления линейки (подкатегории) в производителях, а именно появится возможность разделить производителей на линейки выпускаемой ими продукции.
      Например, есть производитель Samsung, в стандартном модуле производителей будет выводиться такая продукция: телевизоры, микроволновые печи, электрочайники и т.д. Согласитесь, что как-то безобразно при переходе по нажатию на производителя в карточке товара теряться в каше другого товара, когда вас интересуют конкретно телевизоры. Благодаря этому модулю
      ваши покупатели не будут теряться в производителях и смогут быстрее подобрать себе товар. 

      ВНИМАНИЕ!
      Оригинальные файлы магазина не заменяет!
      Не забывайте делать бэкап базы данных на всякий случай.
      ДОБАВЛЕН В СОСТАВ МОДУЛЬ: Витрина производителей / ManufacrturerWall v1.1 - Он будет идти отдельным архивом, чтобы можно было на выбор ставить его или нет. Обновление двух модулей будут идти в ногу.
      С модулем Сео-оптимизация шаблона конфликтов в работе нет.
      Всегда проверяйте такие модули (окмоды - архивы) содержащие такие файлы: "install.php, install.sql" так как злоумышленники могут навредить вашему сайту, например, вашими руками удалят вашу базу данных.
      Пример запроса (смотрите, чтобы не было удаления таблиц "DROP TABLE": категорий, пользователей, товара и т.д. по оригиналу или всей БД "DROP DATABASE"):


      Модификатор "вносит изменения" в следующие файлы:
       
       
      УСЛОВИЯ СОГЛАШЕНИЯ
      - Beta версии устанавливаете на свой страх и риск - бэкап базы данных (далее - БД) обязателен;
      - Модуль (модификатор, дополнение, расширение, приложение) (далее - Модуль) можно устанавливать на 1 домен включая поддомены (одна покупка - один домен);
      - Редактировать код можно только под нужды своего магазина;
      - Распространение модуля запрещено;
      - Техническая поддержка (далее - ТП) осуществляется только при появлении ошибки, бага, глюка (зависания) и не совместимости модуля с заявленными версиями Opencart и шаблонов на момент продажи, при установке на боевой сайт (рабочий хостинг);
      - Адаптация модуля под другую версию Опенкарта, нестандартный шаблон и сторонние модули - платная;
      - Автор модуля оставляет за собой право в любое время внести изменение в настоящее условие, описание и исходный код модуля;
      - Автор модуля оставляет за собой право прекратить ТП пользователям по истечению 365 календарных дней со дня последнего обновления модуля (Full или Beta версии), или со дня окончания продления ТП, или при форс-мажорных обстоятельств;
      - ТП осуществляется при условии соблюдения данного соглашения, пишите в личные сообщения.

      Вопросы и пожелания можно задавать в данной теме.
      Добавил buslikdrev Добавлено 15.02.2018 Категория Серии, Комплекты Системные требования Сайт разработчика http://buslikdrev.by/ Старая цена Метод активации Автоматическая активация Ioncube Loader Нет OpenCart 3.0
      2.3
      2.2
      2.1
      2.0 ocStore 3.0
      2.3
      2.2
      2.1 OpenCart.Pro, ocShop Opencart.pro 2.3
      Opencart.pro 2.1
      OcShop 2.0.3.х Обращение к серверу разработчика  
    • От ashap
      300.00 руб
      Скачать/Купить дополнение


      Яндекс деньги, Visa, MasterCard, Maestro (простая оплата)
      В продаже только версия PRO
      Модуль позволяет принимать переводы с карт VISA, MasterCard, Maestro любого банка мира. Это значит, что отправить вам деньги смогут даже пользователи, у которых нет кошелька в Яндекс.Деньгах. Комиссия, как и раньше, вычитается из суммы перевода: со счета — 0,5%, с карты — 2%. (в настройках модуля можно установить любой процент для оплаты коммисии за счет покупателя) Также модуль позволяет принимать ЯндексДеньги
      Не нужно заключать никаких договоров чтобы принимать пластиковые карты на своем сайте. Все что нужно для настройки модуля это ввести номер своего счета в яндекс деньгах! И все ваш магазин готов принимать оплату пластиковыми картами и яндекс деньгами!
      Оплата происходит в одном окне, покупатель никуда не сбежит и после оплаты вернется на Ваш сайт, а если и сбежит то сможет оплатить свой заказ из письма по ссылке!
      Есть версия с расширенными возможностями и авто уведомлениями на сайт http://opencartforum.ru/files/file/1702-visa-mastercard-maestro-%D1%8F%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B8/
      Для получения оплаты по договору на р\с Юр.лица или ИП используйте модуль Яндекс.Деньги, Карты, Наличные, Webmoney, Мобильный (по договору)
      Что нужно:
      1) создаете кошелек яденег
      2) вбиваете его номер в настройки модуля
      3) принимаете деньги
      Лицензия действительна на один домен
      Демонстрация
      http://ashap.pe-art.ru/
      Админка
      http://ashap.pe-art.ru/admin
      логин demo
      пароль demo
       
      vqmod не требуется
       
      Установка
      1) скопировать все из папки upload в корень сайта
      2) установить модуль (любой из 2х или оба)
      3) в настройках ввести Ваш номер счета в яндекс деньгах, установить статус включено
       
      Смотрите также другие модули по ссылке
      Добавил ashap Добавлено 01.02.2014 Категория Платежные системы Системные требования Сайт разработчика https://store.pe-art.ru/ Старая цена Метод активации Без активации Ioncube Loader Нет OpenCart 1.5.6.4
      1.5.6.3
      1.5.6.2
      1.5.6.1
      1.5.6
      1.5.4.1
      1.5.3.1 ocStore 1.5.5.1.2
      1.5.5.1.1
      1.5.5.1
      1.5.4.1.2
      1.5.4.1.1
      1.5.4.1
      1.5.3.1 OpenCart.Pro, ocShop OcShop 1.5.6.4.х Обращение к серверу разработчика  
    • От ashap
      В продаже только версия PRO
      Модуль позволяет принимать переводы с карт VISA, MasterCard, Maestro любого банка мира. Это значит, что отправить вам деньги смогут даже пользователи, у которых нет кошелька в Яндекс.Деньгах. Комиссия, как и раньше, вычитается из суммы перевода: со счета — 0,5%, с карты — 2%. (в настройках модуля можно установить любой процент для оплаты коммисии за счет покупателя) Также модуль позволяет принимать ЯндексДеньги
      Не нужно заключать никаких договоров чтобы принимать пластиковые карты на своем сайте. Все что нужно для настройки модуля это ввести номер своего счета в яндекс деньгах! И все ваш магазин готов принимать оплату пластиковыми картами и яндекс деньгами!
      Оплата происходит в одном окне, покупатель никуда не сбежит и после оплаты вернется на Ваш сайт, а если и сбежит то сможет оплатить свой заказ из письма по ссылке!
      Есть версия с расширенными возможностями и авто уведомлениями на сайт http://opencartforum.ru/files/file/1702-visa-mastercard-maestro-%D1%8F%D0%B4%D0%B5%D0%BD%D1%8C%D0%B3%D0%B8/
      Для получения оплаты по договору на р\с Юр.лица или ИП используйте модуль Яндекс.Деньги, Карты, Наличные, Webmoney, Мобильный (по договору)
      Что нужно:
      1) создаете кошелек яденег
      2) вбиваете его номер в настройки модуля
      3) принимаете деньги
      Лицензия действительна на один домен
      Демонстрация
      http://ashap.pe-art.ru/
      Админка
      http://ashap.pe-art.ru/admin
      логин demo
      пароль demo
       
      vqmod не требуется
       
      Установка
      1) скопировать все из папки upload в корень сайта
      2) установить модуль (любой из 2х или оба)
      3) в настройках ввести Ваш номер счета в яндекс деньгах, установить статус включено
       
      Смотрите также другие модули по ссылке
    • От Vityok
      1 проблема
      По инструкции, которая массово распространена в интернете, удаляю лишние шаги из оформления заказа. Однако шаг "Способ оплаты" не убирается.
      Почему-то несмотря на замену
      <input type="checkbox" name="agree" value="1"/>
      на
      <input type="checkbox" name="agree" value="1" checked="checked" />
      в файле catalog/view/theme/default/template/checkout/payment_method.tpl
      при просмотре кода на сайте все равно эта галочка не отмечена.
      Может в этом проблема? А как тогда ее отметить?
       
      2 проблема
      Если нельзя совсем убрать пункт "Способ оплаты", можно хотя бы удалить из него инструкцию по оплате или заменить в ней текст? В каком файле это правится?
       


    • От drewwwnya
      Всем привет!
      случилась такая фигня, описание не сохраняется. Ни в summernote (недавно ставил TinyMCE , но с ним все работало), ни во втором редакторе.
      в это же время для англ версии все нормально. в логах тоже чисто
      было у кого такое? куда копать?
  • Последние посетители   0 пользователей онлайн

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

×

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

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