0 purchases
cinetpay
🚀 Paiement par CinetPay 👋 #
Ce package vous permet d'invoquer le guichet de paiement de CinetPay, effectuer un paiement et attendre le statut du paiement initié à la seconde près après la fin du paiement
🔗 Les étapes #
L'utilisation du package est la plus simple possible, dans son utilisation, il s'agit d'invoquer celui-ci avec :
Les paramétres d'initialisation du guichet
Les données relatives au paiement
Le callback d'attente du retour de paiement
Le callback d'écoute d'erreur d'exécution
🛠 Les prérequis #
Quelques prérequis sont nécessaires pour faire fonctionner correctement le package.
Android
Ajouter les permissions suivantes dans le fichier android/app/src/main/AndroidManifest.xml
<application
...
android:usesCleartextTraffic="true">
...
</application>
...
<uses-permission android:name="android.permission.INTERNET"/>
copied to clipboard
Modifier la version du minSdkVersion dans le fichier _android/app/src/build.gradle
minSdkVersion 17
IOS
Ajouter la permission suivante dans le fichier ios/Runner/Info.plist
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
copied to clipboard
Initialisation du guichet #
Pour fonctionner, le guichet doit impérativement recevoir des données telles que :
apikey | L’identifiant du marchand | Chaine de caractère | Obligatoire
site_id | L'identifiant du service | Entier | Obligatoire
notify_url | URL de notification de paiement valide | URL | Obligatoire
Données du paiement #
Pour effectuer le paiement, certaines données devront-être sousmises pour préparer le guichet. Ainsi, on a :
amount | Montant du paiement (>= 100 XOF) | Entier | Obligatoire
currency | Devise du paiement (XOF - XAF - CDN - GNF - USD) | Chaîne de caractère | Obligatoire
transaction_id | L'identifiant de la transaction. Elle doit-être unique, pour chaque transaction | Chaîne de caractère | Obligatoire
description | La description de votre paiement | Chaîne de caractère | Obligatoire
channels | L’univers de paiement. Peut être : ALL - MOBILE_MONEY - WALLET. Par défaut : 'ALL' Toute combinaison est applicable à en séparant par une virgule : 'MOBILE_MONEY, WALLET' | Chaîne de caractère | Facultatif
metadata | | Chaîne de caractère | Facultatif
Callback de retour de paiement #
Lorsque le paiement est enclenché, le package reste en attente du statut final du paiement-ci. Ainsi, à la fin du paiement le package reçoit le statut, qu'il le transmet au travers du callback qui sera définit. Le format de retour attendu est le suivant :
amount | Montant du paiement | Entier
currency | Devise du paiement | Chaîne de caractère
status | Statut du paiement (ACCEPTED ou REFUSED) | Chaîne de caractère
payment_method | Moyen du paiement | Chaîne de caractère
description | La description de votre paiement | Chaîne de caractère
metadata | Chaîne de caractère
operator_id | L'identifiant du paiement de l'opérateur | Chaîne de caractère
payment_date | La date du paiement | Chaîne de caractère
Callback d'erreur de traitement #
Lors du traitement, il peut survenir certains types d'erreurs telles que, certains paramètres pour le paiement manquantes. Le format de retour attendu est le suivant :
message | Chaîne de caractère
description | Chaîne de caractère
👩💻 Utilisation du package #
En resumé, le package s'utilise par le biais d'un appel appel widget :
CinetPayCheckout(
title: 'YOUR_TITLE',
titleStyle: YOUR_TITLE_STYLE,
titleBackgroundColor: YOUR_TITLE_BACKGROUND_COLOR,
configData: <String, dynamic> {
'apikey': 'YOUR_API_KEY',
'site_id': YOUR_SITE_ID,
'notify_url': 'YOUR_NOTIFY_URL'
},
paymentData: <String, dynamic> {
'transaction_id': 'YOUR_TRANSACTION_ID',
'amount': 100,
'currency': 'XOF',
'channels': 'ALL',
'description': 'YOUR_DESCRIPTION'
},
waitResponse: (response) {
print(response);
}
onError: (error) {
print(error);
}
);
copied to clipboard
😄 Auteur #
Agbetogor Germain (@Germinator)
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.