invoice-llc / payment-yii2
Invoice Payment Module
dev-master
2020-06-22 11:18 UTC
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2025-07-02 09:41:31 UTC
README
Установка
Установите пакет через Composer:
composer require invoice-llc/payment-yii2:dev-master
Добавьте в файл common/config/main.php компонент:
'invoice' => [ 'class' => 'invoice\payment\InvoiceConfig', 'login' => 'Ваш логин от личного кабинета Invoice', 'api_key' => 'Ваш API ключ' ]
Создание контроллера уведомлений
1.Создайте контроллер и унаследуйте класс AbstractNotificationController
<?php class InvoiceController extends AbstractNotificationController { //orderID - ID заказа в вашей системе function onPay($orderId, $amount) { //При успешной оплате } function onFail($orderId) { //При неудачной оплате } function onRefund($orderId) { //При возврате средств } }
2.В личном кабинете Invoice(Настройки->Уведомления->Добавить) добавьте уведомление с типом WebHook и адресом, который вы задали в конфиге(например: %url%/notify)
Создание платежей
<?php $invoice = new InvoicePaymentManager(); $items = [ //Название, цена за 1шт, кол-во, итоговая цена new ITEM('Какой-то предмет',10,1,10) ]; //ID заказа, цена, товары $payment = $invoice->createPayment('ID заказа в вашей системе', 10, $items); echo($payment->payment_url);
Поулчение статуса платежа
<?php $invoice = new InvoicePaymentManager(); $payment = $invoice->getPayment('ID заказа в вашей системе'); echo($payment->payment_url);
Создание возврата
<?php $invoice = new InvoicePaymentManager(); //ID заказа в вашей системе, сумма возврата, причина $refundInfo = $invoice->createRefund('ID заказа в вашей системе', 10, 'Причина');