如果您想设置 Bkash 支付网关,您需要遵循一些步骤。下面我将逐步指导您如何集成 Bkash 支付网关。为此,我们将使用 Bkash 的 Merchant API。
1. Bkash API 集成要点
Bkash 商户账户:您必须拥有 Bkash 商户账户。如果没有你可以申请Bkash Merchant。
API凭证:商户账户设置后,Bkash将向您提供API用户名、API密码、应用密钥和应用密钥。
SSL证书:Bkash支付网关必须要有SSL证书。
Webhook URL:您需要设置一个Webhook URL来接收付款通知。
2.支付网关集成流程
第1步:环境设置
首先设置您的 PHP 环境或任何其他服务器端环境。
composer.json 文件(如果使用 PHP)
json
复制代码
{
“要求”:{
"guzzlehttp/guzzle": "^7.0"
}
}
然后运行composer install。
ধাপ২:ফাইলএবংডিরেক্টরিস্ট্রাকচার
明文
复制代码
项目根目录/
├──index.php
├── bkash/
│ ├── config.php
│ ├── token.php
│ ├── create_ payment.php
│ ├──execute_ payment.php
│ └── query_ payment.php
└── success.php
ধাপ ৩:Bkash API 配置 (bkash/config.php)
php
复制代码
返回[
'base_url'=>; 'https://checkout.sandbox.bka.sh/v1.2.0-beta',
'用户名' => 'YOUR_BKASH_USERNAME',
'密码' => 'YOUR_BKASH_PASSWORD',
'app_key'=>; 'YOUR_APP_KEY',
'app_secret' =>; '您的应用程序的秘密',
'callback_url'=>; 'https://fqrhost.com/success.php'
];
?>
ধাপ ৪:访问令牌生成 (bkash/token.php)
php
复制代码
$config = include('config.php');
函数generateToken() {
全局 $config;
$url = $config['base_url'] 。 '/checkout/token/grant';
$标题= [
'内容类型:application/json',
'用户名:' . $config['用户名'],
'密码:' 。 $config['密码']
];
$data = [ 'app_key' => $config['app_key'], 'app_secret' => $config['app_secret'] ]; $curl = curl_init($url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($curl); curl_close($curl); $response = json_decode($result, true); return $response['id_token'];
}
$token =generateToken();
?>
ধাপ ৫:创建付款 (bkash/create_ payment.php)
php
复制代码
include('token.php');
函数createPayment($金额) {
全局 $config, $token;
$url = $config['base_url'] 。 '/结账/付款/创建';
$标题= [
'内容类型:application/json',
'授权:' 。 $代币,
'x-app-key:' 。 $config['app_key']
];
$data = [ 'amount' => $amount, 'currency' => 'BDT', 'intent' => 'sale', 'merchantInvoiceNumber' => 'INV-' . uniqid(), 'callbackURL' => $config['callback_url'] ]; $curl = curl_init($url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($curl); curl_close($curl); return json_decode($result, true);
}
$response = createPayment(1000); // ১০০০ টাকা পেমেন্ট
header('位置:' . $response['bkashURL']);
?>
ধাপ ৬: 执行付款 (bkash/execute_ payment.php)
php
复制代码
include('token.php');
函数executePayment($ paymentID) {
全局 $config, $token;
$url = $config['base_url'] 。 '/结帐/付款/执行/' 。 $付款ID;
$标题= [
'内容类型:application/json',
'授权:' 。 $代币,
'x-app-key:' 。 $config['app_key']
];
$curl = curl_init($url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($curl); curl_close($curl); return json_decode($result, true);
}
if (isset($_GET[' paymentID'])) {
$response =executePayment($_GET[' paymentID']);
回声'
$data = [ 'app_key' => $config['app_key'], 'app_secret' => $config['app_secret'] ]; $curl = curl_init($url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($data)); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($curl); curl_close($curl); $response = json_decode($result, true); return $response['id_token'];
购买域名托管
以上是bkash支付网关创建规则的详细内容。更多信息请关注PHP中文网其他相关文章!