Prestashop сторонняя интеграция платежей

Я пытаюсь внедрить стороннюю интеграцию платежей с prestashop. Я использовал модуль UniversePay, чтобы получить базовый модуль оплаты. Однако мне нужно знать, как получить значения позиций и сумму в корзине, чтобы я мог передать ее своему стороннему поставщику платежей. В каком файле доступны эти данные? кто-нибудь может помочь?

0

Решение

Обратитесь к этому списку хуков:

http://doc.prestashop.com/display/PS15/Hooks+in+PrestaShop+1.5

Это (почти) полный список доступных хуков в PrestaShop. Если вам нужно узнать, какие хуки выполняются в данный момент (например, когда вы перенаправлены на страницу подтверждения заказа), перейдите на Hook.php класс, поиск exec() метод, а затем error_log($hook_name);, После того, как вы узнаете, какой хук вы будете использовать, создайте функцию в вашем модуле:

public function hook{HOOKNAME}($args){
error_log(print_r($args, 1));
}

Таким образом, вы будете знать, какие параметры передаются вам хуком функции. Скорее всего, если вы выберете какой-нибудь хук, связанный с ордером, вам будет передан объект ордера, в котором будет вся информация о ордере, который вам нужен.

0

Другие решения

Если вы создаете свой собственный модуль оплаты, чтобы сделать это, то, как ваш модуль будет extend PaymentModule Вы можете использовать payment перехватить эту информацию, когда генерируется список кнопок оплаты.

class MyPaymentModule extends PaymentModule {

public function __construct() {
$this->name = 'My Payment Module';
...
}

public function install() {
return (bool)$this->registerHook('payment');
}

public function hookPayment( $aParams ) {
$oCart = $aParams['cart'];
$aProducts = $oCart->getProducts();
...
$sHtmlPaymentButton = '<b>My Payment Module</b>';
return $sHtmlPaymentButton;
}
}

Очевидно, что потребуется много дополнительного кода и тяжелой работы, чтобы превратить этот фрагмент кода в работающий модуль оплаты, но, надеюсь, он даст ответ на ваш вопрос и послужит хорошей отправной точкой для вас.

Кроме того, если вам нужна эта информация для всех модулей оплаты в вашем магазине, вы можете получить доступ к информации из validateOrder функция PaymentModule класс, используя переопределить копию этого файла класса в вашем переопределение / классы папка.

0

По вопросам рекламы [email protected]