KKIAPAY
FR 1.0.0
Search
K
Links

SDK Flutter

Le kit de développement (SDK) KKiaPay pour la plateforme Flutter est conçu afin de permettre l'intégration de notre plugin KKiaPay au sein de votre application mobile Flutter de la manière la plus simplifiée possible.
Après avoir créé votre compte KKiaPay sur la plateforme kkiapay.me, vous aurez besoin de créer une instance de KKiaPay en procédant comme suit :
  1. 1.
    Installer le SDK Flutter de KKiaPay
Pour installer ce plugin, il vous suffit d’ajouter kkiapay_flutter_sdk à votre fichier pubspec.yml contenu dans votre projet.
Guide pratique pour l'installation d'un package avec Flutter : Installation d'un package.
dependencies:
flutter:
sdk: flutter
kkiapay_flutter_sdk:
2. Importer le package KKiaPay
import 'package:kkiapay_flutter_sdk/kkiapayWebview.dart'
3. Créer une instance de KKiaPay
Paramètres
Type
Description
amount
Numeric
Le montant à payer en FCFA
phone
String
Un numéro mobile money valide (MTN ou MOOV) Ex: 22997000000 Ex: 22995000000
name
String
Les nom et prénoms de l’initiateur du paiement
apikey
String
La clé publique liée à votre compte KKiaPay
sandbox
Boolean
Vous permet de basculer de l'environnement de test à l'environnement de production. La valeur true de cet attribut signifie que vous êtes en environnement de test
data
String
La donnée ou information liée à une transaction et interprétable par votre système.
successCallback
Function
La fonction de callback appelée uniquement lorsque le paiement a réussi
final kkiapay = Kkiapay(
@required sucessCallback: Function,
@required amount: String,
@required apikey: String,
sandbox: bool,
data: String,
phone: String,
name: String,
theme: dynamic
);
La fonction successCallback appelée à la fin d'un paiement de type Succès peut être utilisée afin de notifier au backend que la transaction s'est correctement déroulée, rediriger l’utilisateur vers une autre vue de l'application mobile ou générer une facture. Tout dépend, en effet, du workflow de l'application mobile. Les paramètres de la fonction sont :
  • Le contexte (context) du widget de paiement
  • La réponse (response) qui est un objet comportant le montant (amount) et l'identifiant de la transaction (transactionId)
void successCallback(response, context) {}
Afin de procéder à la vérification d'une opération de paiement, choisissez de configurer une série de webhooks en vous rendant sur votre compte KKiaPay.
4. Passer l'instance de KKiaPay créée à votre application
Afin d'ajouter le bouton de paiement de KKiaPay dans votre application mobile, il vous faudra procéder à la création d’un widget Flutter KkiapaySample. Un clic sur ledit bouton appellera l'instance de KKiaPay défini plus haut et déclenchera l’affichage du widget de KKiaPay avec les informations de paiement spécifiées.
class KkiapaySample extends StatelessWidget {
const KkiapaySample({
Key key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return Center(
child: ButtonTheme(
minWidth: 250.0,
height: 60.0,
child: FlatButton(
color: Color(0xFFE30E25),
child: Text(
'Pay Now',
style: TextStyle(color: Colors.white),
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => kkiapay),
);
},
),
),
);
}
}
Remplacez l’attribut "body" de votre starter Flutter App par le Widget de KkiapaySample implémenté ci-dessous :
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Kkiapay Sample'),
centerTitle: true,
),
body: KkiapaySample(),
));
}
}

Exemple d'utilisation

import 'package:example/screens/successScreen.dart';
import 'package:flutter/material.dart';
import 'package:kkiapay_flutter_sdk/kkiapayWebview.dart';
import 'package:kkiapay_flutter_sdk/utils/Kkiapay.dart';
void main() => runApp(App());
void sucessCallback(response, context) {
Navigator.pop(context);
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => SuccessScreen(
amount: response['amount'],
transactionId: response['transactionId']
)),
);
}
final kkiapay = Kkiapay(
sucessCallback: sucessCallback,
amount: '2000',
sandbox: true,
data: 'fakedata',
apikey: 'xxxxxxxxxxxxxxxxxxxxxxx',
phone: '97000000',
name: 'JOHN DOE',
theme: '#2ba359');
class App extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text('Kkiapay Sample'),
centerTitle: true,
),
body: KkiapaySample(),
));
}
}
class KkiapaySample extends StatelessWidget {
const KkiapaySample({
Key key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return Center(
child: ButtonTheme(
minWidth: 250.0,
height: 60.0,
child: FlatButton(
color: Color(0xFFE30E25),
child: Text(
'Pay Now',
style: TextStyle(color: Colors.white),
),
onPressed: () {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => kkiapay),
);
},
),
),
);
}
}
Pour plus d'informations sur le package Flutter, rendez vous sur la page : KKiaPay Flutter SDK.