bkash支付网关创建规则
来源:dev.to
时间:2024-11-18 08:54:49 154浏览 收藏
golang学习网今天将给大家带来《bkash支付网关创建规则》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习文章或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!
如果您想设置 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。
第 2 步:文件和目录结构
明文
复制代码
项目根目录/
├──index.php
├── bkash/
│ ├── config.php
│ ├── token.php
│ ├── create_ payment.php
│ ├──execute_ payment.php
│ └── query_ payment.php
└── success.php
步骤3:bkash api配置(bkash/config.php)
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' => 'your_app_secret',
'callback_url' => 'https://fqrhost.com/success.php'
];
?>
步骤 4:生成访问令牌 (bkash/token.php)
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();
?>
第5步:创建付款(bkash/create_ payment.php)
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); // 1000卢比付款
header('位置:' . $response['bkashurl']);
?>
第6步:执行付款(bkash/execute_ payment.php)
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']);
回声'
';';
print_r($response);
echo '
}
?>
第7步:成功页面(success.php)
php
复制代码
<?php
echo "支付成功!";
?>
3.系统测试
您可以使用 bkash 的沙盒环境测试您的系统。
要使用生产模式,请从 bkash 更新您的 api 密钥和 url。
4. webhook 设置(可选)
bkash 可以使用 webhook url 进行支付更新。我们将向您发送包含付款信息的通知。
购买域名托管
今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
406 收藏
-
358 收藏
-
120 收藏
-
294 收藏
-
102 收藏
-
292 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习