angwa / glade-bank-transfer
这将使客户能够通过银行转账进行付款
Requires
- guzzlehttp/guzzle: 6.*|7.*
Requires (Dev)
- laravel/framework: ^7.0
- phpunit/phpunit: ^10.0@dev
This package is not auto-updated.
Last update: 2024-10-01 17:43:25 UTC
README
此包将使客户能够使用Glade Api通过银行转账进行付款。此包使用Guzzle。Guzzle是一个PHP HTTP客户端,使得发送HTTP请求变得容易,并与Web服务集成变得简单。
安装和用法
此包需要PHP 7.2和Laravel 7.*或更高版本。
您可以通过composer安装此包
composer require angwa/glade-bank-transfer
下一步是注册我们的服务提供者。只需打开config/app.php
并定位到提供者部分,添加GladeApi\GladeBankTransfer\GladeServiceProvider::class,
如下所示
'providers' => [
...
GladeApi\GladeBankTransfer\GladeServiceProvider::class,
...
]
继续在config/app.php
中向下,并在aliases
部分添加'GladeBankTransfer' => GladeApi\GladeBankTransfer\Facades\GladeBankTransfer::class,
如下所示
'aliases' => [
...
'GladeBankTransfer' => GladeApi\GladeBankTransfer\Facades\GladeBankTransfer::class,
...
]
上面的代码将使您在控制器中可以使用use GladeBankTransfer
加载配置文件
我们的配置文件名为glade.php,将在您运行以下bash代码时创建
php artisan vendor:publish --provider="GladeApi\GladeBankTransfer\GladeServiceProvider"
您也可以复制以下代码,在配置文件夹中创建一个名为glade.php的文件,并将代码粘贴进去
<?php
return [
/*
* This package will look for a GLADE_MERCHANT_KEY in your env file
* This package will look for GLADE_MERCHANT_ID in your env file
* This package will look for GLADE_MERCHANT_URL in your env file
* If the above three are not found. It might throw errors when trying to use
*/
'merchantKey' => getenv('GLADE_MERCHANT_KEY'),
'merchantId' => getenv('GLADE_MERCHANT_ID'),
'paymentUrl' => getenv('GLADE_MERCHANT_URL'),
];
用法
教程
有关Glade Api的详细描述和文档,请参阅
描述
此包将需要您的MerchantID和Merchant Key进行身份验证。演示MerchantId和Merchant key可以在Glade API参考页面找到,如下所示
Merchant ID: GP0000001
Merchant Key: 123456789
如果您想将演示端点更改为实时,请使用您的Glade仪表板中的Merchant id和Merchant key:Glade API
使用演示账户
将以下行添加到您的env文件中
GLADE_MERCHANT_KEY=123456789
GLADE_MERCHANT_ID=GP0000001
GLADE_MERCHANT_URL=https://demo.api.gladepay.com
记住:每次您更改env文件时,都必须运行
php artisan cache:clear
php artisan config:cache
将以下行添加到您的控制器或您想使用它的地方
use GladeBankTransfer;
示例
要进行付款,只需在控制器中调用makePayment()
方法
//For Example
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use GladeBankTransfer;
class TestGladeApi extends Controller
{
public function test()
{
//compulsary parameter is amount
$amount = "5999";
//return json response
return GladeBankTransfer::makePayment($amount);
return GladeBankTransfer::verifyTransaction("GP679268020210221M");
}
}
付款示例响应
{"status":202,"txnRef":"GP88405170320210221S","auth_type":"device","accountNumber":"9922554842","accountName":"GladePay Demo","bankName":"Providus Bank","accountExpires":600,"message":"Make a transfer into the following account using your bank app or internet banking platfrom to complete the transaction"}
参数的多个细节
我们的makePayment()
方法还有其他参数,您可能想使用,但这些不是必需的
//For example
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use GladeBankTransfer;
class TestGladeApi extends Controller
{
public function test()
{
//compulsary parameter is amount
$amount = "5999";
$firstname = "John";
$lastname = "Doe";
$email = "johndoe@mail.com";
$business_name = "my business name";
//return json response
return GladeBankTransfer::makePayment($amount,$firstname,$lastname,$email,$business_name);
}
}
验证交易
要验证交易,请使用verifyTransaction()
方法。此方法有一个参数,即验证交易的参考号
for example
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use GladeBankTransfer;
class TestGladeApi extends Controller
{
public function testVerify()
{
//compulsary parameter is reference
//You can use reference number you got after payment or use one below
$reference = "GP679268020210221M";
//return json response
return GladeBankTransfer::verifyTransaction($reference);
}
}
验证示例响应
{"status":200,"txnStatus":"pending","txnRef":"GP88405170320210221S","message":"PENDING","chargedAmount":0,"currency":"NGN","payment_method":"bank_transfer","fullname":" ","email":"","bank_message":"Awaiting Validation"}
测试
要运行包中的测试,请更新composer并输入以下内容
vendor/bin/phpunit
安全
如果您发现任何安全相关的问题,请通过电子邮件angwamoses@gmail.com报告,而不是使用问题跟踪器。
致谢
许可
MIT许可(MIT)。