Heim >Backend-Entwicklung >PHP-Tutorial >Regeln zum Erstellen des Zahlungsgateways von bkash

Regeln zum Erstellen des Zahlungsgateways von bkash

Linda Hamilton
Linda HamiltonOriginal
2024-11-17 06:40:03669Durchsuche

bkash এর পেমেন্ট গেটওয়ে তৈরী করার নিয়ম

Wenn Sie das Bkash Payment Gateway einrichten möchten, müssen Sie einige Schritte befolgen. Im Folgenden gebe ich eine Schritt-für-Schritt-Anleitung, wie Sie das Bkash Payment Gateway integrieren können. Hierfür verwenden wir die Merchant API von Bkash.

1. Grundlagen für die Bkash-API-Integration
Bkash-Händlerkonto: Sie müssen über ein Bkash-Händlerkonto verfügen. Wenn nicht, können Sie sich für Bkash Merchant bewerben.
API-Anmeldeinformationen: Bkash stellt Ihnen nach der Einrichtung des Händlerkontos API-Benutzernamen, API-Passwort, App-Schlüssel und App-Geheimnis zur Verfügung.
SSL-Zertifikat: Für das Bkash-Zahlungsgateway ist ein SSL-Zertifikat obligatorisch.
Webhook-URL: Sie müssen eine Webhook-URL festlegen, um Zahlungsbenachrichtigungen zu erhalten.
2. Integrationsprozess des Zahlungsgateways
Schritt 1: Umgebungseinrichtung
Richten Sie zunächst Ihre PHP-Umgebung oder eine andere serverseitige Umgebung ein.

composer.json-Datei (bei Verwendung von PHP)
json
Code kopieren
{
„erfordern“: {
„guzzlehttp/guzzle“: „^7.0“
}
}
Führen Sie dann die Composer-Installation aus.

ধাপ ২: ফাইল এবং ডিরেক্টরি স্ট্রাকচার
Klartext
Code kopieren
Projektstammverzeichnis/
├── index.php
├── bkash/
│ ├── config.php
│ ├── token.php
│ ├── create_zahlung.php
│ ├──execute_zahlung.php
│ └── query_zahlung.php
└── success.php
Siehe auch: Bkash API-Konfiguration (bkash/config.php)
php
Code kopieren
zurück [
'base_url' => 'https://checkout.sandbox.bka.sh/v1.2.0-beta',
'Benutzername' => 'YOUR_BKASH_USERNAME',
'Passwort' => 'YOUR_BKASH_PASSWORD',
'app_key' => 'YOUR_APP_KEY',
'app_secret' => 'YOUR_APP_SECRET',
'callback_url' => 'https://fqrhost.com/success.php'
];
?>
ধাপ ৪: Access Token Generate (bkash/token.php)
php
Code kopieren
$config = include('config.php');

Funktion genericToken() {
global $config;
$url = $config['base_url'] . '/checkout/token/grant';
$headers = [
'Content-Type:application/json',
'Benutzername:' . $config['Benutzername'],
'Passwort:' . $config['password']
];

$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 = genericToken();<br>
?><br>
ধাপ ৫: Zahlung erstellen (bkash/create_paid.php)<br>
php<br>
Code kopieren<br>
<?php<br>
include('token.php');</p>

<p>Funktion createPayment($amount) {<br>
    global $config, $token;<br>
    $url = $config['base_url'] . '/checkout/zahlung/erstellen';<br>
    $headers = [<br>
        'Content-Type:application/json',<br>
        'Autorisierung:' . $token,<br>
        'x-app-key:' . $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('Location: ' . $response['bkashURL']);<br>
?><br>
ধাপ ৬: Zahlung ausführen (bkash/execute_paid.php)<br>
php<br>
Code kopieren<br>
<?php<br>
include('token.php');</p>

<p>FunktionexecutePayment($zahlungID) {<br>
    global $config, $token;<br>
    $url = $config['base_url'] . '/checkout/zahlung/ausführen/' . $zahlungsID;<br>
    $headers = [<br>
        'Content-Type:application/json',<br>
        'Autorisierung:' . $token,<br>
        'x-app-key:' . $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['zahlungID'])) {
$response =executePayment($_GET['zahlungID']);
echo '

$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'];
';
}
?>
Schritt 7: Erfolgsseite (success.php)
php
Code kopieren
echo „Zahlung erfolgreich!“;
?>
3. Systemtest
Sie können Ihr System mit der Sandbox-Umgebung von Bkash testen.
Um den Produktionsmodus zu verwenden, aktualisieren Sie Ihren API-Schlüssel und Ihre URL von Bkash.
4. Webhook-Einrichtung (optional)
Bkash kann die Webhook-URL für Zahlungsaktualisierungen verwenden. Sie erhalten eine Benachrichtigung mit Zahlungsinformationen.

Domain-Hosting kaufen

Das obige ist der detaillierte Inhalt vonRegeln zum Erstellen des Zahlungsgateways von bkash. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn