ninepay / bidv
Laravel/Lumen 的 bidv 银行库
Requires
- guzzlehttp/guzzle: ^7.0
This package is auto-updated.
Last update: 2024-09-11 09:41:14 UTC
README
这是支持连接到 BIDV 银行系统的库。
注意: 此库仅适用于 Laravel 和 Lumen
安装
composer require 9pay/bidv
Laravel
对于 Laravel 版本 >= 5.4
对于钱包
将以下内容添加到 config/app.php
的 providers 部分
'providers' => [ ... NinePay\Bidv\Providers\BankServiceProvider::class, ];
并添加到 aliases 部分
'aliases' => [ ... 'Bidv' => NinePay\Bidv\Facades\BidvFacade::class, ];
库将使用配置文件中的数据,因此我们需要发布配置以使用它
php artisan vendor:publish --provider="NinePay\Bidv\Providers\BankServiceProvider" --tag=config
对于门控
将以下内容添加到 config/app.php
的 providers 部分
'providers' => [ ... NinePay\Bidv\Providers\GateServiceProvider::class, ];
并添加到 aliases 部分
'aliases' => [ ... 'BidvGate' => NinePay\Bidv\Facades\GateFacade::class, ];
库将使用配置文件中的数据,因此我们需要发布配置以使用它
php artisan vendor:publish --provider="NinePay\Bidv\Providers\GateServiceProvider" --tag=config
Lumen
对于钱包
打开 bootstrap/app.php
并注册所需的服务提供者
$app->register(NinePay\Bidv\Providers\BankServiceProvider::class);
并注册类别名
class_alias(NinePay\Bidv\Facades\BidvFacade::class, 'Bidv');
必须启用外观。
在 Lumen 中,我们无法通过 Artisan CLI 创建配置文件。因此,您需要创建一个名为 bidv_wallet.php
的配置文件,内容如下
return [ 'url' => env('BIDV_WALLET_URL', ''), 'service_id' => env('BIDV_WALLET_SERVICE_ID', ''), 'merchant_id' => env('BIDV_WALLET_MERCHANT_ID', ''), 'private_key_bidv' => env('BIDV_WALLET_SECRET_KEY', ''), 'public_key_bidv' => '/test/example_public_key.pem', 'private_key_9pay' => '/test/example_private_key.pem', ];
并将其添加到 bootstrap/app.php
$app->configure('bidv_wallet');
对于门控
打开 bootstrap/app.php
并注册所需的服务提供者
$app->register(NinePay\Bidv\Providers\GateServiceProvider::class);
并注册类别名
class_alias(NinePay\Bidv\Facades\GateFacade::class, 'BidvGate');
必须启用外观。
在 Lumen 中,我们无法通过 Artisan CLI 创建配置文件。因此,您需要创建一个名为 bidv_gate.php
的配置文件,内容如下
return [ 'url' => env('BIDV_GATE_URL', ''), 'service_id' => env('BIDV_GATE_SERVICE_ID', ''), 'merchant_id' => env('BIDV_GATE_MERCHANT_ID', ''), 'private_key_bidv' => env('BIDV_GATE_SECRET_KEY', ''), 'public_key_bidv' => '/test/example_public_key.pem', 'private_key_9pay' => '/test/example_private_key.pem', ];
并将其添加到 bootstrap/app.php
$app->configure('bidv_gate');
证书
库将使用 RSA 加密和解密,因此应该有 2 个文件 public_key
和 private_key
方法
钱包
门控
参数
上述方法输入数据将不包括以下变量: Service_Id
、Merchant_Id
、Secure_Code
,因为库将生成它。
响应
返回的数据将如下所示
array( 'RESPONSE_CODE' => '000', 'MESSAGE' => '', 'IS_CORRECT_SIGN' => false, //... )
RESPONSE_CODE
返回 000 表示成功。如果不为 000,则表示失败。
MESSAGE
是结果数据的描述。
IS_CORRECT_SIGN
是一个表示返回数据有效的签名。