Introduction
Cette section décrit NZIMBU API de passerelle de paiement.
NZIMBU API est facile à mettre en œuvre dans votre logiciel d'entreprise. Notre API est des URL bien formatées, accepte les requêtes cURL et renvoie les réponses JSON.
Vous pouvez utiliser l'API en mode test, ce qui n'affecte pas vos données en direct. La clé API est utilisée pour authentifier la demande et détermine que la demande est un paiement valide ou non. Pour le mode test, utilisez simplement l'URL du bac à sable et en cas de mode en direct, utilisez l'URL en direct de la section Initier le paiement .
Devises prises en charge
Cette section décrit les devises prises en charge par NZIMBU
NZIMBU permet d'effectuer des transactions avec les devises ci-dessous. Toute nouvelle devise peut être mise à jour à l'avenir.
Nom de la devise | Symbole de la devise | Code de devise |
---|---|---|
United States dollar | $ | USD |
Franc congolais | FC | CDF |
Euro | € | EUR |
Franc CFA ouest-africain | CFA | XOF |
Franc CFA d'Afrique centrale | F CFA | XAF |
Kenyan shilling | KSh | KES |
Mozambican metical | Mt | MZN |
Rwandan franc | FRw | RWF |
Nigerian naira | ₦ | NGN |
Moroccan dirham | DH | MAD |
Ghanaian cedi | ₵ | GHS |
Ethiopian birr | Br | ETB |
Tanzanian shilling | TSh | TZS |
South African rand | R | ZAR |
Tunisian dinar | DT | TND |
Ugandan shilling | USh | UGX |
Zambian kwacha | K | ZMW |
British pound sterling | £ | GBP |
Canadian dollar | C$ | CAD |
Japanese Yen | ¥ | JPY |
Angolan kwanza | Kz | AOA |
Burundian franc | FBu | BIF |
Botswana pula | P | BWP |
Obtenir la clé API
Cette section décrit comment obtenir votre clé API.
Connectez-vous à votre NZIMBU compte marchand. Pas encore de compte ? Cliquez ici
La prochaine étape consiste à trouver Clé API menu dans la barre latérale de votre tableau de bord. Cliquez sur le menu.
Les clés API peuvent être trouvées ici, ce qui est Public key et Secret key. Utilisez ces clés pour lancer la requête API. Chaque fois que vous pouvez générer une nouvelle clé API en cliquant sur Générer une clé API bouton. N'oubliez pas de ne partager ces clés avec personne.
Initier le paiement
Cette section décrit le processus d'initiation du paiement.
Pour lancer le paiement, suivez l'exemple de code et soyez prudent avec les paramètres. Vous devrez faire une demande avec ces points de terminaison d'API suivants.
Mise à jour en direct: https://nzimbu.com/payment/initiate
Mise à jour en mode test: https://nzimbu.com/sandbox/payment/initiate
Courrier en mode test : test_mode@mail.com
Code de vérification du mode test: 222666
Méthode de demande: POST
Demande au mise en jour avec les paramètres suivants ci-dessous.
Param Name | Param Type | Description |
---|---|---|
public_key | string (50) | Requis Ton Public API key |
identifier | string (20) | Requis L'identifiant sert essentiellement à identifier le paiement de votre côté |
currency | string (4) | Requis Code de devise, doit être en majuscules. par exemple. USD,EUR |
amount | decimal | Requis Montant du paiement. |
details | string (100) | Requis Détails de votre paiement ou transaction. |
ipn_url | string | Requis L'URL de la notification de paiement instantanée. |
success_url | string | Requis URL de redirection de réussite du paiement. |
cancel_url | string | Requis URL de redirection d’annulation du paiement. |
site_logo | string/url | Requis Logo de votre site professionnel. |
checkout_theme | string | Facultatif Thème du formulaire de paiement sombre/clair. Le thème par défaut est clair |
customer_name | string (30) | Requis Nom du client. |
customer_email | string (30) | Requis Email client valide. |
<?php
$parameters = [
'identifier' => 'DFU80XZIKS',
'currency' => 'USD',
'amount' => 100.00,
'details' => 'Purchase T-shirt',
'ipn_url' => 'http://example.com/ipn_url.php',
'cancel_url' => 'http://example.com/cancel_url.php',
'success_url' => 'http://example.com/success_url.php',
'public_key' => 'your_public_key',
'site_logo' => 'https://nzimbu.com/assets/images/logoIcon/logo.png',
'checkout_theme' => 'dark',
'customer_name' => 'John Doe',
'customer_email' => 'john@mail.com',
];
//live end point
$url = "https://nzimbu.com/payment/initiate";
//test end point
$url = "https://nzimbu.com/sandbox/payment/initiate";
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
curl_close($ch);
//$result contains the response back.
?>
//Error Response.
{
"error": "true",
"message": "Invalid api key"
}
//Success Response.
{
"success": "ok",
"message": "Payment Initiated. Redirect to url.",
"url":"http://example.com/initiate/payment/checkout?payment_id=eJSAASDxdrt4DASDASVNASJA7893232432cvmdsamnvASF"
}
Valider le paiement et l'IPN
Cette section décrit le processus pour obtenir votre notification de paiement instantanée.
Pour lancer le paiement, suivez l'exemple de code et soyez prudent avec les paramètres. Vous devrez faire une demande avec ces points de terminaison d'API suivants.
Point final : Your business application ipn url.
Méthode de demande: POST
Vous obtiendrez les paramètres suivants ci-dessous.
Param Name | Description |
---|---|
status | Statut de réussite du paiement. |
identifier | L’identifiant sert essentiellement à identifier le paiement de votre côté. |
signature | Une signature hachée pour vérifier votre paiement de votre côté. |
data | Les données contiennent des informations de base avec les frais, le montant, la devise, l'identifiant de la transaction de paiement, etc. |
<?php
//Receive the response parameter
$status = $_POST['status'];
$signature = $_POST['signature'];
$identifier = $_POST['identifier'];
$data = $_POST['data'];
// Generate your signature
$customKey = $data['amount'].$identifier;
$secret = 'YOUR_SECRET_KEY';
$mySignature = strtoupper(hash_hmac('sha256', $customKey , $secret));
$myIdentifier = 'YOUR_GIVEN_IDENTIFIER';
if($status == "success" && $signature == $mySignature && $identifier == $myIdentifier){
//your operation logic
}
?>