jeishanul/nagad

Laravel nagad支付包

v1.0.0.5 2024-04-04 11:05 UTC

This package is auto-updated.

Last update: 2024-09-04 11:57:45 UTC


README

Laravel Nagad支付网关

安装

composer require jeishanul/nagad

设置

1. 发布供应商

php artisan vendor:publish --provider="Jeishanul\Nagad\NagadServiceProvider" --tag=config

2. Nagad配置设置

  • config/nagad.php
return [
    'sandbox_mode' => env('NAGAD_MODE'),
    'merchant_id' => env('NAGAD_MERCHANT_ID'),
    'merchant_number' => env('NAGAD_MERCHANT_NUMBER'),
    'callback_url' => env('NAGAD_CALLBACK_URL'),
    'public_key' => env('NAGAD_PUBLIC_KEY'),
    'private_key' => env('NAGAD_PRIVATE_KEY')
];

设置.env

NAGAD_MERCHANT_ID=
NAGAD_MERCHANT_NUMBER=
NAGAD_CALLBACK_URL=
NAGAD_MODE=sandbox // sandbox or live
NAGAD_PUBLIC_KEY="" // sandbox <optional>
NAGAD_PRIVATE_KEY=""  // sandbox <optional>

使用方法

获取回调URL

use Jeishanul\Nagad\Nagad;

$tnxID = 1;
$amount = 99;
$redirectUrl = Nagad::getRedirectUrl($tnxID,$amount);;
return redirect($redirectUrl);

验证支付

use Jeishanul\Nagad\Nagad;
$verify = Nagad::verify();
if($verify->status === 'Success'){
    $order = json_decode($verify->additionalMerchantInfo);
    $order_id = $order->tnx_id;
    // your functional task with order_id
}
if ($verify->status === 'Aborted') {
    // redirect or other what you want
}

如何在服务器上启用Nagad网关

  • 联系Nagad,提供您的IP和支持ID。Nagad将白名单您的IP并批准您的商户。现在您的Nagad网关在服务器上可以正常工作。
use Jeishanul\Nagad\Nagad;
// It's provide you a "support ID"
$tnxID = 1;
$sid = Nagad::getSupportID($tnxID);
return $sid;