Cette section décrit le YAC Pay Passerelle de paiement API.
YAC Pay L'API est facile à intégrer dans vos logiciels professionnels. Notre API utilise des URL bien formatées, accepte les requêtes cURL et renvoie des réponses au format JSON.
Vous pouvez utiliser l'API en mode test, ce qui n'affecte pas vos données en production. La clé API sert à authentifier la requête et à déterminer si le paiement est valide ou non. Pour le mode test, utilisez simplement l'URL sandbox, et pour le mode production, utilisez l'URL en direct disponible dans la section suivante. Initier le Paiement .
Cette section explique comment obtenir votre clé API.
Connectez-vous à YAC Pay Compte Marchand If you don't have any ? Cliquez Ici
L'étape suivante consiste à trouver Clé API dans la barre latérale de votre tableau de bord. Cliquez sur Menu.
Les clés API s'y trouvent, à savoir la Clé publique et la Clé secrète. Utilisez ces clés pour initier les requêtes API. Vous pouvez à tout moment générer une nouvelle clé API en cliquant sur le bouton Générer une clé API. N'oubliez pas de ne jamais partager ces clés avec personne.
Cette section décrit le processus d'initiation du paiement.
Pour initier un paiement, suivez l'exemple de code fourni et soyez attentif aux paramètres. Vous devrez effectuer des requêtes via les points d'accès (endpoints) API suivants :
Point d'accès en production : https://www.wallet.gekopay.com/payment/initiate
Test End Point: https://www.wallet.gekopay.com/sandbox/payment/initiate
Test Mode Mail: test_mode@mail.com
Code de vérification en mode test 222666
Méthode de requête : POST
Envoyez une 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) | Required Votre clé API publique |
| identifier | string (20) | Required L'identifiant sert principalement à identifier le paiement de votre côté |
| currency | string (4) | Required Code de devise, doit être en majuscules. ex. : USD, EUR |
| amount | decimal | Required Montant du paiement. |
| details | string (100) | Required Détails de votre paiement ou transaction. |
| ipn_url | string | Required L'URL de notification de paiement instantané. |
| success_url | string | Required URL de redirection après succès du paiement. |
| cancel_url | string | Required URL de redirection après annulation du paiement |
| site_logo | string/url | Required Logo de votre site professionnel. |
| checkout_theme | string | Optional Thème du formulaire de paiement (sombre/clair). Le thème par défaut est clair. |
| customer_name | string (30) | Required Nom du client. |
| customer_email | string (30) | Required E-mail 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' => 'https://www.wallet.gekopay.com/assets/images/logoIcon/logo.png',
'checkout_theme' => 'dark',
'customer_name' => 'John Doe',
'customer_email' => 'john@mail.com',
];
//live end point
$url = "https://www.wallet.gekopay.com/payment/initiate";
//test end point
$url = "https://www.wallet.gekopay.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"
}
Cette section décrit le processus pour recevoir votre notification de paiement instantané.
Pour initier un paiement, suivez l'exemple de code fourni et soyez attentif aux paramètres. Vous devrez effectuer des requêtes via les points d'accès (endpoints) API suivants :
End Point: L'URL IPN de votre application commerciale.
Méthode de requête : POST
Vous recevrez les paramètres suivants ci-dessous.
| Nom du paramètre | Description |
|---|---|
| status | Statut de réussite du paiement. |
| identifier | L'identifiant sert principalement à identifier le paiement côté votre système. |
| signature | Une signature cryptographique (hash) pour vérifier le paiement du côté de votre système. |
| data | Les données contiennent des informations de base telles que les frais, le montant, la devise, l'identifiant de 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
}
?>