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
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
Quelques prérequis sont nécessaires pour faire fonctionner correctement le package.
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"/>
Modifier la version du minSdkVersion dans le fichier android/app/src/build.gradle
minSdkVersion 17
Ajouter la permission suivante dans le fichier ios/Runner/Info.plist
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Pour fonctionner, le guichet doit impérativement recevoir des données telles que :
Obligatoire
Obligatoire
Obligatoire
Pour effectuer le paiement, certaines données devront-être soumises pour préparer le guichet. Ainsi, on a :
(>= 100 XOF)
| Entier | Obligatoire
XOF
- XAF
- CDN
- GNF
- USD
) | Chaîne de caractère | Obligatoire
Obligatoire
Obligatoire
ALL
- MOBILE_MONEY
- CREDIT_CARD
- WALLET
. Par défaut : 'ALL'
Toute combinaison est applicable à en séparant par une virgule : 'MOBILE_MONEY, WALLET'
| Chaîne de caractère | Facultatif*
| Chaîne de caractère | Facultatif*
| Chaîne de caractère | Facultatif*
| Chaîne de caractère | Facultatif*
| Chaîne de caractère*
| Chaîne de caractère | Facultatif*
| Chaîne de caractère | Facultatif*
| Chaîne de caractère | Facultatif*
| Chaîne de caractère | Facultatif
NB :
*
Obligatoire si utilisation de l’univers bancaire (CREDIT_CARD)
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 :
ACCEPTED
ou REFUSED)
| Chaîne de caractèreLors 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 :
En resumé, le package s'utilise par le biais d'un appel widget :
CinetPayCheckout(
title: 'Guichet de paiement',
configData: <String, dynamic> {
'apikey': 'YOUR_API_KEY',
'site_id': YOUR_SITE_ID,
'notify_url': 'https://mondomaine.com/notify/'
},
paymentData: <String, dynamic> {
'transaction_id': 'YOUR_TRANSACTION_ID',
'amount': 100,
'currency': 'XOF',
'channels': 'ALL',
'description': 'Test de paiement'
},
waitResponse: (response) {
print(response);
}
onError: (error) {
print(error);
}
);