msilabs / bkash
bKash Payment Gateway API for Laravel Framework。
v2.0.5
2024-09-01 12:02 UTC
Requires
- php: ^7.4|^8.0|^8.1|^8.2
- illuminate/support: ^6|^7|^8|^9|^10
README
msilas/bkash
bKash Payment Gateway API for Laravel Framework。
需求
- PHP >= 7.4
- Laravel >= 6
入门
通过Composer包管理器安装 msilabs/bkash
composer require msilabs/bkash
可选:发布配置文件
php artisan vendor:publish --provider="Msilabs\Bkash\BkashServiceProvider"
在您的 .env 文件中设置环境配置
BKASH_SANDBOX=true #for production use false BKASH_APP_KEY="" BKASH_APP_SECRET="" BKASH_USERNAME="" BKASH_PASSWORD=""
沙盒验证
启动本地服务器。
php artisan serve
要验证创建支付,请访问 /bkash-sandbox-validation/create-payment
URL
http://127.0.0.1:8000/bkash-sandbox-validation/create-payment
要验证执行支付,请访问 /bkash-sandbox-validation/execute-payment
URL
http://127.0.0.1:8000/bkash-sandbox-validation/execute-payment
对于多个账户,请参阅以下内容:多个账户
用法
将 BkashPayment trait 包含到您的控制器中
use Msilabs\Bkash\BkashPayment;
class BkashController extends Controller
{
use BkashPayment;
//
}
创建支付
public function payment()
{
// your code
$response = $this->createPayment($amount, $invoice_id, $callback_url);
return redirect($response->bkashURL);
}
执行支付
public function callback(Request $request)
{
$payment_id = $request->paymentID;
$status = $request->status;
if($paymentID && $status == 'success') {
$response = $this->executePayment($paymentID);
if($response->transactionStatus == 'Completed') {
$order_id = $response['merchantInvoiceNumber'];
$trxID = $response['trxID'];
// your code
}
}
// your code
}
生产使用
在您的 .env 文件中设置实时凭证
BKASH_SANDBOX=false BKASH_APP_KEY="" BKASH_APP_SECRET="" BKASH_USERNAME="" BKASH_PASSWORD=""
多个账户
在 config/bkash.php 文件中添加多个账户。例如,要添加 secondary
账户
"accounts" => [ "primary" => [ "sandbox" => env("BKASH_SANDBOX", true), #for production use false "app_key" => env("BKASH_APP_KEY"), "app_secret" => env("BKASH_APP_SECRET"), "username" => env("BKASH_USERNAME"), "password" => env("BKASH_PASSWORD"), ], "secondary" => [ "sandbox" => env("BKASH_SECONDARY_SANDBOX", true), #for production use false "app_key" => env("BKASH_SECONDARY_APP_KEY"), "app_secret" => env("BKASH_SECONDARY_APP_SECRET"), "username" => env("BKASH_SECONDARY_USERNAME"), "password" => env("BKASH_SECONDARY_PASSWORD"), ], // Add more stores if you need ],
在您的 .env 文件中设置多个凭证
BKASH_SANDBOX=false BKASH_APP_KEY="" BKASH_APP_SECRET="" BKASH_USERNAME="" BKASH_PASSWORD="" BKASH_SECONDARY_SANDBOX=false BKASH_SECONDARY_APP_KEY="" BKASH_SECONDARY_USERNAME="" BKASH_SECONDARY_USERNAME="" BKASH_SECONDARY_PASSWORD=""
多个沙盒验证示例
要验证 create-payment 的 secondary
账户,请访问以下 URL
http://127.0.0.1:8000/bkash-sandbox-validation/create-payment/secondary
要验证 execute-payment 的 secondary
账户,请访问以下 URL
http://127.0.0.1:8000/bkash-sandbox-validation/execute-payment/secondary