Общий принцип подключения новой платежной системы
Материал из Umicms
Как зарегистрировать в системе управляющие файлы для новой платежной системы описано в статье Другой вариант платежной квитанции, только ваш тип данных создается дочерним по отношению к "Способ оплаты". В новом типе данных создаются необходимые поля, которые предоставила платежная система после регистрации. В управляющем файле, который как вы уже узнали, находится в папке:
\classes\modules\emarket\classes\payment\systems\
должно быть два метода: process и poll. Метод process используется для подобных страниц:
/emarket/purchase/payment/name_payment/
на которых пользователь подтверждает переход на сайт платежной системы.
В методе process, подобными конструкциями:
$merchantId = $this->object->merchant_id; $privateKey = $this->object->private_key;
вы получаете значение полей, которые были сохранены в вашем способе оплаты, добавленном в модуле Интернет-магазин, во вкладке Оплата. Id заказа и общая сумма заказа определяются данным образом:
$orderId = $this->order->getId(); $amount = number_format($this->order->getActualPrice(), 2, '.', '');
Все значения в массиве $param вам понадобятся, для формирования формы по переходу на сайт платежной системы. При использовании tpl-шаблонизатора, необходимо добавить файл: \tpls\emarket\payment\name_payment\default.tpl, с блоком form_block.
Метод poll() отвечает за прием данных от платежной системы, в случае успешной оплаты, заказу присваивается статус оплаты "Принята". Метод poll вызвается из метода emarket gateway(), который по переданному object_id заказа определяет способ оплаты, и вызывает метод poll необходимого класса. Дополнительная информация представлена в данной статье Подключение поддерживаемых платежных систем
