borysenko / yii2-liqpay
Payment widget for liqpay.com
Installs: 191
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 0
Open Issues: 1
Type:yii2-extension
Requires
- php: >=5.4.0
- voskobovich/yii2-liqpay: *
- yiisoft/yii2: *
This package is auto-updated.
Last update: 2024-11-20 03:33:08 UTC
README
В составе модуля содержится виджет оплаты заказа через liqpay.com.
В виджет передается модель заказа, которая должна имплементировать интерфейс interfaces/Order.
При успешной оплате liqpay вызывает callback, в котором сохраняется статус payment c значением yes в текущем заказе.
Установка
В сборке Yii2 в файле composer.json нужно заменить в свойстве "minimum-stability" значение "stable" на "dev". Т.е. у вас должно быть так:
"minimum-stability": "dev"
- Это связано с тем, что это расширение подтягивает другие расширения, в которых "minimum-stability": "dev"
Выполнить команду
composer require borysenko/yii2-liqpay "*"
Или добавить в composer.json
"borysenko/yii2-liqpay": "*",
И выполнить
php composer update
Подключение и настройка
В конфигурационный файл приложения добавить модуль liqpay
'modules' => [ 'liqpay' => [ 'class' => 'borysenko\liqpay\Module', 'public_key' => 'iNNNNNNNNNNN', 'private_key' => 'NzpRclCywaSOrm0LTpqDpPPlRDhoOQyIX1ISHjk', 'currency' => 'UAH', 'pay_way' => null, 'version' => 3, 'sandbox' => false, 'language' => 'ru', 'result_url' => '/page/thanks', 'paymentName' => 'Оплата заказа', 'orderModel' => 'frontend\models\Order', //Модель заказа. Эта модель должна имплементировать интерфейс borysenko\liqpay\interfaces\Order. В момент списания денег будет вызываться $model->setPaymentStatus('yes'). ], //... ],
Модель Order
<?php namespace frontend\models; use Yii; use yii\db\ActiveRecord; Class Order extends ActiveRecord implements \borysenko\liqpay\interfaces\Order { public static function tableName() { return 'orders'; } public function getId() { return $this->id; } public function getCost() { return $this->cost; } function setPaymentStatus($status) { $this->payment = $status; return $this; } }
Виджеты
За вывод формы оплаты отвечает виджет borysenko\liqpay\widgets\PaymentForm.
<?=\borysenko\liqpay\widgets\PaymentForm::widget([ 'autoSend' => true, 'orderModel' => $model, //Order::findOne($id); 'description' => 'Оплата заказа' ]);?>
- autoSend - нужно ли автоматически отправлять форму заказа
- orderModel - экземпляр модели заказа, имплементирующий interfaces/Order
- description - описание платежа