Developer - Api Documentation

Introduction

Cette section décrit les NgaKalfani API de la passerelle de paiement.


NgaKalfani L'API est facile à implémenter dans votre logiciel d'entreprise. Notre API est composée d'URL bien formatées, accepte les requêtes cURL et renvoie des réponses JSON.

Vous pouvez utiliser l'API en mode test, ce qui n'affecte pas vos données en production. La clé API est utilisée pour authentifier la requête et détermine si c'est paiement valide ou non. Pour le mode test, utilisez simplement l'URL sandbox et en mode production, utilisez l'URL live de la section Initier le paiement .

Devises prises en charge

Cette section décrit les devises prises en charge par NgaKalfani


NgaKalfani allows to make transaction with below currencies. Any new currency may update in future.

Nom de la devise Symbole de la devise Code de la devise
United States Dollar $ USD
FCFA XOF CFA

Obtenir la clé API

Cette section décrit comment vous pouvez obtenir votre clé API.


Connectez-vous à votre compte NgaKalfani marchand. If you don't have any ? Click Here

L'étape suivante consiste à trouver le Api Key menu dans la barre latérale de votre tableau de bord. Cliquez sur le menu.

Les clés API peuvent être trouvées là-bas, c'est-à-dire Clé publique et clé secrète. Utilisez ces clés pour lancer la requête API. À chaque fois, vous pouvez générer une nouvelle clé API en cliquant sur Générer une clé API . Rappelez-vous de ne partager ces clés avec personne.

Initier le paiement

Cette section décrit le processus de lancement du paiement.


Pour initier le paiement, suivez l’exemple de code et soyez prudent avec les paramètres. Vous devrez faire une requête avec les points de terminaison d'API suivants.

Point de terminaison en mode Production : https://ngakalfani.com/payment/initiate

Point de terminaison en mode Test : https://ngakalfani.com/sandbox/payment/initiate

E-mail en mode test : test_mode@mail.com

Code de vérification du mode test : 222666

Méthode de requête : POST

Requête au point de terminaison avec les paramètres suivants ci-dessous.

Nom du paramètre Type de paramètre Description
public_key string (50) Obligatoire Votre clé API publique
identifier string (20) Obligatoire L'identifiant sert essentiellement à identifier le paiement de votre côté
currency string (4) Obligatoire Code de devise, doit être en majuscules. Par exemple, USD, EUR
amount decimal Obligatoire Montant du paiement.
details string (100) Obligatoire Détails de votre paiement ou transaction.
ipn_url string Obligatoire L'URL de la notification de paiement instantanée.
success_url string Obligatoire URL de redirection de réussite du paiement.
cancel_url string Obligatoire URL de redirection d'annulation de paiement.
site_logo string/url Obligatoire Logo de votre site marchant.
checkout_theme string Facultatif Thème du formulaire de paiement sombre/clair. Le thème par défaut est clair
customer_name string (30) Obligatoire Nom du client.
customer_email string (30) Obligatoire Email client valide.
Exemple de code PHP
<?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://ngakalfani.com/assets/images/logoIcon/logo.png',
        'checkout_theme' => 'dark',
        'customer_name' => 'John Doe',
        'customer_email' => 'john@mail.com',

    ];

    //live end point
    $url = "https://ngakalfani.com/payment/initiate";

    //test end point
    $url = "https://ngakalfani.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.
?>
Exemples de réponses
//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 initier le paiement, suivez l’exemple de code et soyez prudent avec les paramètres. Vous devrez faire une requête avec les points de terminaison d'API suivants.

Point de terminaison : L'URL IPN de votre application métier.

Méthode de requête : POST

Vous obtiendrez les paramètres suivants ci-dessous.

Nom du paramètre Description
status Statut de réussite du paiement.
identifier L'identifiant sert essentiellement à identifier le paiement de votre côté.
signature Signature de hachage pour vérifier votre paiement.
data Les données contiennent des informations de base telles que les frais, le montant, la devise, l'identifiant de la transaction de paiement, etc.
Exemple de code PHP
<?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
    }
?>

We may use cookies or any other tracking technologies when you visit our website, including any other media form, mobile website, or mobile application related or connected to help customize the Site and improve your experience. En savoir plus

Autoriser