Lire toutes les sections en bleues pour mieux comprendre la documentation et les sections en orange signifiant l'alerte afin d'éviter des erreurs à commettre durant les intégrations et les procédures détaillées pour les intégration.
Les clés d'API sont vos références numériques auprès des systèmes de PayDunya. Nous les utilisons afin d'identifier votre compte et les applications que vous allez créer. Ces clés sont nécessaires pour toute intégration des APIs de paiements PayDunya. Voici chronologiquement la marche à suivre :
MODE TEST, JE VEUX FAIRE DES TESTS DE PAIEMENT.
puis
ACTIVER LE MODE DE PRODUCTION
.
Cliquez sur paydunya_java_latest.jar pour télécharger la dernière version de notre package JAVA ainsi que ses dépendances. Ajouter par la suite paydunya_java_latest.jar
à votre CLASSPATH
en suivant les instructions suivantes :
Dans votre IDE (Android Studio), cliquez sur Project
dans le menu à gauche puis affichez votre application sous forme de projet en sélectionnant Project
dans le menu déroulant de la fenêtre qui s'est affiché;
Cherchez le dossier libs
qui se trouve le dossier app
. Copiez le fichier paydunya_java_latest.jar
précédement téléchargé et collez le à l'intérieur du dossier libs
;
Ensuite faites un clic droit sur paydunya_java_latest.jar
et cliquez sur Add as Library
pour ajouter le plugin PayDunya à la liste des librairies.
Pour finir, importez toutes les classes du package com.paydunya.neptune
dans le ou les fichier(s) où vous souhaitez utiliser la librairie PayDunya:
import com.paydunya.neptune.*;
Connectez-vous à votre compte PayDunya, cliquez sur oneAPI puis sur détails
au niveau de l'application que vous avez créée, récupérez les clés d'API et donnez les en argument au méthodes suivantes:
PaydunyaSetup setup = new PaydunyaSetup();
setup.setMasterKey("wQzk9ZwR-Qq9m-0hD0-zpud-je5coGC3FHKW");
setup.setPrivateKey("test_private_rMIdJM3PLLhLjyArx9tF3VURAF5");
setup.setPublicKey("test_public_kb9Wo0Qpn8vNWMvMZOwwpvuTUja");
setup.setToken("IivOiOxGJuWhc5znlIiK");
setup.setMode("test"); // Optionnel. Utilisez cette option pour les paiements tests.
Si vous êtes en mode test, utilisez les clés de test sinon utilisez les clés de production et spécifiez le mode en remplaçant "test"
par "live"
dans le code ci-dessus.
Pour plus de détails sur le passage en production cliquez ici.
Vous pouvez configurer les informations de votre service/activité/entreprise comme illustré ci-dessous. PayDunya utilise ces paramètres afin de configurer les informations qui s'afficheront sur la page de paiement, les factures, les reçus imprimés et les téléchargements PDF.
Pour la configuration des informations de votre service/entreprise, seul le nom est requis
, toutes les autres informations sont optionnelles.
//Configuration des informations de votre service/entreprise
PaydunyaCheckoutStore store = new PaydunyaCheckoutStore();
store.setName("Magasin Chez Sandra"); // Seul le nom est requis
store.setTagline("L'élégance n'a pas de prix");
store.setPhoneNumber("336530583");
store.setPostalAddress("Dakar Plateau - Etablissement kheweul");
store.setWebsiteUrl("http://www.chez-sandra.sn");
store.setLogoUrl("http://www.chez-sandra.sn/logo.png");
Cette option s'avère très intéressante si vous souhaitez créer votre propre solution de paiement par dessus celle de PayDunya ou si vous devez reverser un certain pourcentage à chaque vente (dans le cas d'une marketplace par exemple). L'argent est redistribué sur les différents comptes PayDunya des destinataires et le service n'est pas facturé.
Vous pouvez transférer des fonds vers d'autres comptes clients PayDunya à partir de votre compte via l'API de Paiement Et Redistribution (PER). Pour des raisons de sécurité, vous devez explicitement activer l'option de Paiement Et Redistribution (PER) dans la configuration de votre intégration/application en vous rendant dans votre compte PayDunya. Vous pouvez toujours activer ou désactiver le service de Paiement Et Redistribution (PER) en mettant à jour la configuration de votre intégration/application en vous rendant dans votre compte PayDunya.
Il est nécéssaire d'excécuter la requête de facturation PER de Paiement Et Redirection en background.
//Il est nécéssaire d'excécuter la requête PER de Paiement Et Redirection en background
import android.os.AsyncTask;
private class MyTask extends AsyncTask {
private Exception exception;
@Override
protected Void doInBackground(String... params){
String email_ou_numero_du_client_paydunya = params[0];
Double montant_a_transferer = Double.valueOf(params[1]);
try {
PaydunyaDirectPay direct_pay = new PaydunyaDirectPay(setup);
if(direct_pay.creditAccount(email_ou_numero_du_client_paydunya, montant_a_transferer)){
System.out.println("Statut: " + direct_pay.getStatus());
System.out.println("Description: " + direct_pay.getDescription());
System.out.println("ID de la Transaction: " + direct_pay.getTransactionId());
}else{
System.out.println("Réponse: " + direct_pay.getResponseText());
}
} catch(Exception e){
e.printStackTrace();
this.exception = e;
}
return null;
}
@Override
protected void onPostExecute(Void result) {
// TODO: check this.exception
// TODO: do something with the feed
super.onPostExecute(result);
}
}
Pour excécuter le code précédent en background, rajoutez au niveau de la méthode protected void onCreate
la ligne suivante:
new MyTask().execute("EMAIL_OU_NUMERO_MOBILE_DU_CLIENT_PAYDUNYA", "MONTANT_A_TRANSFERER");