Info !!! Pour commencer, vous devez télécharger la dernière version de notre package JAVA. Télécharger
Cela fait, suivez les étapes suivantes :
- Décompressez le fichier
.zip
- Copiez le fichier
pay-android-gateway-release.aar
dans le dossierlibs
de votre application - Ouvrez le fichier
build.gradle
de votre application et modifiez la ligneimplementation fileTree(dir: 'libs', include: ['*.jar'])
pour avoirimplementation fileTree(dir: 'libs', include: ['*.jar','*.aar'])
- Toujours dans le fichier
build.gradle
, rajoutez dans le blocdependencies
les lignes ci-après :
implementation 'com.google.code.gson:gson:2.8.5'
implementation 'com.squareup.okhttp3:okhttp:3.12.1'
implementation 'com.squareup.okio:okio:2.1.0'
implementation 'com.squareup.retrofit2:retrofit:2.5.0'
implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
- Effectuez un
gradle build
pour mettre à jour votre application
Info !!! A ce stade, votre application est prête à utiliser notre plugin
Ouvrez maintenant l’activité ou le fragment où se passera le paiement.
Cela fait, suivez les étapes suivantes :
- Déclarez le
request code
et les variables de configuration du plugin en copiant-collant
private static final int PLUS_PAYMENT_ACTIVITY_RESULT = 1102; // Le request code du plugin (ne pas modifier sa valeur)
private Pay_Setup RequestSetup, ResponseSetup;
- Initialisez le plugin en copiant-collant
String appName = "nom de votre application mobile";
RequestSetup = new Pay_Setup(); // initialisation de la variable setup pour l'envoi
ResponseSetup = new Pay_Setup(); // initialisation de la variable setup pour la reponse
RequestSetup.setApi_public_key("Clé principale générée lors de la création de votre application");
RequestSetup.setApi_token("Token générée lors de la création de votre application");
// Définition du mode d'utilisation. Soit 'test' soit 'live', exemple : RequestSetup.setMode("live") ou RequestSetup.setMode("test")
RequestSetup.setMode("Mode de fonctionnement de votre application");
- Supposons que votre client ait acheté deux articles. Pour ajouter ces deux articles dans le
setup
, faites comme ceci :
RequestSetup.addInvoiceitem(new Pay_InvoiceItem("Jean Gucci", 3, 150, 450, "Jean bleu, de marque Gucci"));
RequestSetup.addInvoiceitem(new Pay_InvoiceItem("Jean Prada", 2, 100, 200, "Jean noir, de marque Prada"));
- Pour ajouter le total et la description de la facture, faites comme ceci :
RequestSetup.setDescription("Achat de "+ RequestSetup.getInvoiceItems().size()+" article(s) pour "+RequestSetup.getTotal_amount()+" franc(s) dans "+appName );
RequestSetup.setTotal_amount(650); // permet d'indiquer le montant total de la facture. c'est ce montant qui sera défalqué au client
- Pour lancer le processus de paiement, faites comme ceci :
Intent PaymentActivity = new Intent(getApplicationContext(), pay_payment_activity.class);
Bundle PaymentActivitySetup = new Bundle();
PaymentActivitySetup.putParcelable("setup",RequestSetup);
PaymentActivity.putExtras(PaymentActivitySetup);
startActivityForResult(PaymentActivity, PAY_PAYMENT_ACTIVITY_RESULT);
- Pour récupérer le résultat du processus de paiement, faites comme ceci :
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PAY_PAYMENT_ACTIVITY_RESULT && resultCode == RESULT_OK) {
Bundle PaymentActivitySetup = data.getExtras();
Pay_GetReport report = PaymentActivitySetup.getParcelable("report");
ResponseSetup = PaymentActivitySetup.getParcelable("setup");
switch (report.getResponse_code()){
case "00":
if(report.getStatus() == "completed"){
// ecrivez ici votre code de paiement réussi
Toast.makeText(getApplicationContext(),"Succes", Toast.LENGTH_SHORT).show();
}else{
//ecrivez ici votre code paiement échoué
Toast.makeText(getApplicationContext(),"Echec", Toast.LENGTH_SHORT).show();
}
// pour recuperer le token de cette transaction, faites ResponseSetup.getInvoiceToken();
break;
default:
//ecrivez ici votre code paiement échoué
Toast.makeText(getApplicationContext(),"Echec", Toast.LENGTH_SHORT).show();
// affichage du motif de l'echec
Toast.makeText(getApplicationContext(),""+report.getResponse_text(),Toast.LENGTH_SHORT).show();
// pour recuperer le token de cette transaction, faites ResponseSetup.getInvoiceToken();
break;
}
}
}
RequestSetup.setMethod(0);
Prototype de la classe
Pay_InvoiceItem(String name, double quantity, double unit_price, double total_price, String description) où :
name : nom de l’article
quantity : quantité de l’article
unit_price : prix unitaire de l’article
total_price : prix total de l’article
description : description de l’article acheté ou autres détails sur l’article
Pay_InvoiceItem
Pay_InvoiceItem(String name, double quantity, double unit_price, double total_price, String description) où :
name : nom de l’article
quantity : quantité de l’article
unit_price : prix unitaire de l’article
total_price : prix total de l’article
description : description de l’article acheté ou autres détails sur l’article