Перейти к содержанию
Форум поддержки пользователей VamShop

Разработка модуля оплаты


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

Навскидку не удалось найти.

Поэтому вопрос: есть какая-либо инструкция по разработке с нуля модуля оплаты?

Или инструкция - это разбор существующих модулей ? ;)

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

Я планирую такой раздел добавить в документацию, но пока нет готового.

Мжно за основу взять простой модуль Оплата курьеру.

Это два файла:

/includes/modules/payment/flat.php

/lang/russian/modules/paymenbt/flat.php

скопируй эти файлы например в mymodule.php

В двух полученных файлам замени все _FLAT_ на _MYMODULE_ и flat на mymodule.

У тебя появится новый модуль в Админке - Модули - Оплата.

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

Занимаюсь сейчас своим модулем.

В двух словах распиши, пожалуйста назначение функций:

function pre_confirmation_check()

function confirmation()

function process_button()

function before_process()

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

Unick

А у тебя как с английским нормально или плохо?

Я где-то видел на английском описание, сейчас поищу.

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

Сейчас, ищу, точно помню где-то был пример php файла с комментариями возле этих функций как раз.

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

Unick

Вспомнил только вот такую ссылку - http://zen-cart.com/wiki/index.php/Developers_-_Payment_Classes

Сейчас ещё поищу, где-то видел подробное описание.

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

Что-то так и не могу найти подробное описание.

Я сейчас ещё поищу, но в любом случае документация будет написано по этому вопросы, но правда чуть позже.

Сейчас постараюсь кратко описать.

Если я правильно понимаю, то:

function pre_confirmation_check()

Это даже не знаю, вроде не используется особо в модулях оплаты.

function confirmation()

Это даже не знаю, вроде не используется особо в модулях оплаты.

function process_button()

Всё, что ты укажешь в данной функции, будет выполнено ПОСЛЕ создания заказа, например посмотри пример модуля roboxchange - /includes/modules/payment/roboxchange.php

Он сначала создаёт заказ и только затем перекидывает тебя на страницу робокса.

Если использовать before_process, то тебя просто перекинет на тот же weboney мерчант, но заказ создан не будет, а будет создан только при возвращении с мерчанта, т.е. когда ты оплатишь и вернёшься на Success URL

function before_process()

Вот здесь выполняется код ДО создания заказа, обычно в данной функции указывается информация для платёжнымх систем, которая должна быть передана на сайт платёжной системы, например на тот же webmoney merchant.

Вобщем, вопрос конечно и мне самому интересный, я наверное в декабре буду писать новый раздел в vamshop.ru/manual

Как раз с описанием основных функций и классов магазина, в том числе и распишу модули оплаты, доставки, итого.

Сейчас всё-таки постараюсь найти описания на ангйлиском, точно где-то есть.

ABerezin

Андрей, так вроде ведь нет там в /includes/classes/payment.php подробного описания.

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

Саша!

Ты не прав. Ни в описании методов ни в подробной документации :) Да, документации там в явном виде действительно нет. Но там (вкупе с checkout_payment.php, checkout_confirmation.php и checkout_process.php) достаточно информации чтобы понять что делает каждый метод. Когда вызывается, какая информаия доступна, какая информация возвращается и как она используется. Достаточно для программера разрабатывающего свой модуль оплаты.

Описать сейчас все методы, к сожалению, не могу - время не позволяет. Но можешь оставить эту главу за мной :)

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

Андрей, буду рад, если кратко расскажешь про эти методы.

Что-то я так и не вспомню, где ж я видел описание на английском, буду искать.

Толи со старой версией osCommerce в архиве был пример php файла с комментариями, то ли ещё где-то.

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

pre_confirmation_check()

Вызывается из checkout_confirmation.php в начале работы. Например позволяет проверить данные, введённые на странице checkout_payment.php (код кредитной карты, номер счёта, реквизиты и т.д.).

confirmation()

Вызывается из checkout_confirmation.php для формирования описания способа оплаты.

process_button()

Вызывается из checkout_confirmation.php для формирования кнопки "Подтвердить заказ".

На странице checkout_confirmation.php формируется форма перехода на платёжную систему или на страницу checkout_process.php. Если способ оплаты предусматривает переход на сайт платёжной системы, то переменная form_action_url должна содержать адрес перехода (например для вебмани $this->form_action_url = 'https://merchant.webmoney.ru/lmi/payment.asp';). А метод process_button() формирует необходимые данные для данной стситемы.

before_process()

Вызывается из checkout_process.php в начале работы, до формирования заказа. Позволяет проанализировать данные переданные из платёжной системы и принять решение продолжить формировать заказ или нет.

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

Да не за что. Это очень коротко - основная суть. Надо ещё знать какая информация доступна в каждом методе, какую и вкаком виде возвращать информацию. Это уже потом напишу, когда время будет. Да и наши модули немного отличаются, так что тебе придётся править под себя :)

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