Bkash Payment Gateway를 설정하려면 몇 가지 단계를 따라야 합니다. 아래에서는 Bkash Payment Gateway를 통합하는 방법에 대한 단계별 가이드를 제공합니다. 이를 위해 Bkash의 Merchant API를 사용합니다.
1. Bkash API 통합을 위한 필수 요소
Bkash 판매자 계정: Bkash 판매자 계정이 있어야 합니다. 그렇지 않은 경우 Bkash Merchant를 신청할 수 있습니다.
API 자격 증명: Bkash는 판매자 계정 설정 후 API 사용자 이름, API 비밀번호, 앱 키 및 앱 비밀번호를 제공합니다.
SSL 인증서: Bkash 결제 게이트웨이에는 SSL 인증서가 필수입니다.
웹훅 URL: 결제 알림을 받기 위해서는 웹훅 URL을 설정해야 합니다.
2. 결제 게이트웨이 통합 프로세스
1단계: 환경 설정
먼저 PHP 환경이나 기타 서버측 환경을 설정하세요.
composer.json 파일(PHP를 사용하는 경우)
JSON
코드 복사
{
"요구하다": {
"guzzlehttp/guzzle": "^7.0"
}
}
그런 다음 작곡가 설치를 실행하세요.
ধাপ ২: ফাইল এবং ডিরেক্টরি স্ট্রাকচার
일반 텍스트
코드 복사
프로젝트-루트/
├── index.php
├── bkash/
│ ├── config.php
│ ├── token.php
│ ├── create_pay.php
│ ├── 실행_결제.php
│ └── query_pay.php
└── 성공.php
참고: Bkash API 구성(bkash/config.php)
PHP
코드 복사
복귀 [
'base_url' => 'https://checkout.sandbox.bka.sh/v1.2.0-beta',
'사용자 이름' => 'YOUR_BKASH_USERNAME',
'비밀번호' => 'YOUR_BKASH_PASSWORD',
'앱_키' => 'YOUR_APP_KEY',
'app_secret' => 'YOUR_APP_SECRET',
'콜백_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']; </p> <p>}</p> <p>$token = generateToken();<br> ?><br> 답변: 결제 생성(bkash/create_pay.php)<br> PHP<br> 코드 복사<br> <?php<br> include('token.php');</p> <p>함수 createPayment($amount) {<br> 전역 $config, $token;<br> $url = $config['base_url'] . '/체크아웃/결제/생성';<br> $헤더 = [<br> '콘텐츠 유형:application/json',<br> '인증:' . $토큰,<br> 'x-앱 키:' . $config['app_key']<br> ];</p> <pre class="brush:php;toolbar:false">$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); </p> <p>}</p> <p>$response = createPayment(1000); // ১০০০ টাকা পেমেন্ট<br> header('위치: ' . $response['bkashURL']);<br> ?><br> 답변: 결제 실행 (bkash/execute_paid.php)<br> PHP<br> 코드 복사<br> <?php<br> include('token.php');</p> <p>executePayment($paymentID) 함수 {<br> 전역 $config, $token;<br> $url = $config['base_url'] . '/체크아웃/결제/실행/' . $결제ID;<br> $헤더 = [<br> '콘텐츠 유형:application/json',<br> '인증:' . $토큰,<br> 'x-앱 키:' . $config['app_key']<br> ];</p> <pre class="brush:php;toolbar:false">$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['결제 ID'])) {
$response = excutePayment($_GET['결제 ID']);
에코'
$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']; ';
}
?>
7단계: 성공 페이지(success.php)
PHP
코드 복사
echo "결제 성공!";
?>
3. 시스템 테스트
Bkash의 Sandbox 환경을 사용하여 시스템을 테스트할 수 있습니다.
프로덕션 모드를 사용하려면 Bkash에서 API 키와 URL을 업데이트하세요.
4. 웹훅 설정(선택 사항)
Bkash는 결제 업데이트를 위해 Webhook URL을 사용할 수 있습니다. 결제 정보와 함께 알림이 전송됩니다.도메인 호스팅 구입
위 내용은 bkash의 결제 게이트웨이 생성 규칙의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!