razu / nagad
Laravel Nagad支付网关包
v1.0.0
2021-01-20 11:17 UTC
This package is auto-updated.
Last update: 2024-09-19 10:38:04 UTC
README
安装
composer require razu/nagad
设置
1 ) vendor publish (配置)
php artisan vendor:publish --provider="Razu\Nagad\NagadServiceProvider" --tag=config
2 ) 配置设置
config/nagad.php
<?php return [ 'sandbox_mode' => env('NAGAD_MODE', 'sandbox'), 'merchant_id' => env('NAGAD_MERCHANT_ID','683002007104225'), 'merchant_number' => env('NAGAD_MERCHANT_NUMBER','01711428036'), 'callback_url' => env('NAGAD_CALLBACK_URL', 'http://127.0.0.1:8000/nagad/callback'), 'public_key' => env('NAGAD_PUBLIC_KEY',''), 'private_key' => env('NAGAD_PRIVATE_KEY','') ];
环境设置
NAGAD_MERCHANT_ID=683002007104225 NAGAD_MERCHANT_NUMBER=01711428036 NAGAD_CALLBACK_URL=http://127.0.0.1:8000/nagad/callback NAGAD_MODE=sandbox // sandbox or live NAGAD_PUBLIC_KEY="" //sandbox <optional> NAGAD_PRIVATE_KEY="" // sandbox <optional>
用法
获取回调URL
<?php use NagadPaymentGateway; $redirectUrl = NagadPaymentGateway::tnxID($id) ->amount($amount) ->getRedirectUrl(); return $redirectUrl;
ipn // 验证支付
<?php use NagadPaymentGateway; $verify = (object) NagadPaymentGateway::ipn(); if($verify->status === 'Success'){ $order = json_decode($verify->additionalMerchantInfo); $order_id = $order->tnx_id; // your functional task with order_id } if ($verify->status === 'Aborted') { dd($verify); // redirect or other what you want } dd($verify);
注意
~沙盒
- 需要一个商家账户。
- 注册一个Nagad号码并需要沙盒余额(联系Nagad)
~生产环境
- 需要一个商家账户(生产服务器)
- 联系Nagad并提供您的生产服务器IP地址。