tjslash/payment-laravel

Invoice Laravel SDK

1.0.0 2021-11-13 04:59 UTC

This package is auto-updated.

Last update: 2024-09-16 16:00:02 UTC


README

安装

通过Composer安装包

composer require invoice-llc/payment-laravel:dev-master

在配置目录(config)下创建名为invoice.php的文件,并包含以下内容

<?php
return [
    "api_key" => "Ваш API ключ",
    "login" => "логин от личного кабинета Invoice",
    "default_terminal_name" => "Название терминала"
];

创建通知控制器

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, 'Причина');