introduction
Cette section décrit la Sodipaye Paiement Gateway API.
Sodipaye L'API est facile à implémenter dans votre logiciel professionnel. Notre API est une URL bien formatée, accepte les demandes de courbure, renvoie les réponses JSON.
You can use the API in test mode, which does not affect your live data. The API key is use to authenticate the request and determines the request is valid payment or not. For test mode just use the sandbox URL and In case of live mode use the live URL from section Initier le paiement .
Devises soutenues
Cette section décrit les devises supportées par Sodipaye
Sodipaye allows to make transaction with below currencies. Any new currency may update in future.
Nom de devise | Symbole de la monnaie | Code de devise |
---|---|---|
Franc CFA | XOF | XOF |
GNF | GNF | GNF |
Obtenez la clé API
Cette section explique comment obtenir votre clé API.
Connectez-vous à votre Sodipaye Compte marchand. If you don't have any ? Cliquez ici
La prochaine étape consiste à trouver le Clé API Menu dans votre barre latérale de tableau de bord. Cliquez sur le menu.
Les touches API peuvent être trouvées là-bas qui est Clé publique et clé secrète. Utilisez ces touches pour lancer la demande d'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 pas partager ces clés avec qui que ce soit.
Initier le paiement
Cette section décrit le processus d'initiation du paiement.
Pour initier le paiement, suivez le code exemple et faites attention aux Peramètres. Vous devrez faire une demande avec ces points d'extrémité API suivants.
Point d'extrémité en direct: http://sodipaye.com/payment/initiate
Point de fin de test: http://sodipaye.com/sandbox/payment/initiate
Mode de test Mail: test_mode@mail.com
Code de vérification du mode de test: 222666
Méthode de demande: POST
Demande au point final avec les paramètres suivants ci-dessous.
Nom de param | Type de param | La description |
---|---|---|
public_key | string (50) | Obligatoire Votre clé d'API publique |
identifier | string (20) | Obligatoire L'identifiant est essentiellement pour identifier le paiement à votre fin |
currency | string (4) | Obligatoire Code de devise, doit être en majuscule. par exemple. USD, EUR |
amount | decimal | Obligatoire Montant du paiement. |
details | string (100) | Obligatoire Détails de votre paiement ou de votre transaction. |
ipn_url | string | Obligatoire L'URL de notification de paiement instantanée. |
success_url | string | Obligatoire Succès de paiement Rediriger l'URL. |
cancel_url | string | Obligatoire Paiement annule la redirection de l'URL. |
site_logo | string/url | Obligatoire Votre logo de votre site d'affaires. |
checkout_theme | string | Optionnel Checkout form theme dark/light. Default theme is light |
customer_name | string (30) | Obligatoire Nom du client. |
customer_email | string (30) | Obligatoire Email valide du client. |
<?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' => 'http://sodipaye.com/assets/images/logoIcon/logo.png',
'checkout_theme' => 'dark',
'customer_name' => 'John Doe',
'customer_email' => 'john@mail.com',
];
//live end point
$url = 'http://sodipaye.com/payment/initiate';
//test end point
$url = 'http://sodipaye.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 d'obtention de votre notification de paiement instantanée.
Pour initier le paiement, suivez le code exemple et faites attention aux Peramètres. Vous devrez faire une demande avec ces points d'extrémité API suivants.
Point de fin: Votre application professionnelle IPN URL.
Méthode de demande: POST
Vous obtiendrez des paramètres suivants ci-dessous.
Nom de param | La description |
---|---|
status | Statut de réussite du paiement. |
identifier | L'identifiant est essentiellement pour identifier le paiement à votre fin. |
signature | Une signature de hachage pour vérifier votre paiement à votre fin. |
data | Les données contiennent des informations de base avec des charges, du montant, de la devise, 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
}
?>