Digitalpaye Flutter SDK
Description du SDK
Le SDK Flutter Digitalpaye permet aux développeurs d'intégrer facilement les paiements via Digitalpaye dans leurs applications Flutter. Il fournit une interface simple pour configurer et initier des transactions de paiement.
Installation
Pour installer le SDK, utilisez la commande suivante :
flutter pub add digitalpaye_sdk_flutter
Démarrage
Configuration
Avant d'utiliser le SDK, configurez-le avec vos informations d'API. Vous devez fournir une clé API, un secret API, et d'autres paramètres de configuration.
final config = DigitalpayeConfig(
apiKey: 'live_digitalpaye931',
apiSecret: 'f28811e4f4-d932-928cd-a804-51539700d60c',
isSandbox: false,
color: AppColors.orange,
);
// Constructeur de DigitalpayeConfig
DigitalpayeConfig({required String apiKey, required String apiSecret, required bool isSandbox, Color ? color, String ?logo});
- apiKey : Votre clé API
- apiSecret : Votre secret API
- isSandbox : Booléen pour indiquer si l'environnement est en mode sandbox
- color : Couleur principale de l'application
- logo : Le logo de l'application
Configuration de paiement
Définissez les paramètres de votre transaction de paiement.
final payment = DigitalpayePaymentConfig(
codeCountry: DigitalpayeEnumCountries.ivoryCoast,
amount: 10000.0,
transactionId: paymentId,
designation: "Vente de télévision",
currency: DigitalpayeEnumCurrencies.xof,
emailUser: "elieguei225@gmail.com",
nameUser: "HELIE GUEI",
customerId: "0777101308",
urlError: "https://digitalpaye.com",
urlSuccess: "https://digitalpaye.com",
);
- codeCountry : Code du pays
- amount : Montant de la transaction
- transactionId : ID de la transaction
- designation : Description de la transaction
- currency : Devise de la transaction
- emailUser : Email de l'utilisateur
- nameUser : Nom de l'utilisateur
- customerId : ID du client
- urlError : URL en cas d'erreur
- urlSuccess : URL en cas de succès
Exemple d'utilisation
Voici un exemple complet de l'utilisation du SDK dans une application Flutter.
import 'dart:math';
import 'package:digitalpaye_sdk_flutter/digitalpaye_sdk_flutter.dart';
import 'package:digitalpaye_sdk_flutter/enum/digitalpaye_enum_countries.dart';
import 'package:digitalpaye_sdk_flutter/enum/digitalpaye_enum_currencies.dart';
import 'package:digitalpaye_sdk_flutter/models/digitalpaye_config.dart';
import 'package:digitalpaye_sdk_flutter/models/digitalpaye_payment_config.dart';
import 'package:digitalpaye_sdk_flutter/utils/app_color.dart';
import 'package:flutter/material.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return const MaterialApp(
home: HomePage(),
);
}
}
String generatePaymentId({int length = 20}) {
const characters =
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
final random = Random();
return String.fromCharCodes(Iterable.generate(
length,
(_) => characters.codeUnitAt(random.nextInt(characters.length)),
));
}
class HomePage extends StatelessWidget {
const HomePage({super.key});
@override
Widget build(BuildContext context) {
final config = DigitalpayeConfig(
apiKey: 'live_digitalpaye92223061',
apiSecret: 'f5231e4f4-d932-4fcd-a804-51539700d60c',
isSandbox: false,
color: AppColors.orange,
);
return Scaffold(
appBar: AppBar(title: const Text('Digitalpaye Flutter SDK Example')),
body: Center(
child: ElevatedButton(
onPressed: () async {
final paymentId = generatePaymentId();
final payment = DigitalpayePaymentConfig(
codeCountry: DigitalpayeEnumCountries.ivoryCoast,
amount: 10000.0,
transactionId: paymentId,
designation: "Vente de télévision",
currency: DigitalpayeEnumCurrencies.xof,
emailUser: "elieguei225@gmail.com",
nameUser: "HELIE GUEI",
customerId: "0777101308",
urlError: "https://digitalpaye.com",
urlSuccess: "https://digitalpaye.com",
);
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => DigitalpayeFlutterSDK(
config: config,
payment: payment,
errorBuilder: (error) {
return Container();
},
successBuilder: (success) {
return Container();
},
pendingBuilder: (pending) {
return Container();
},
),
),
);
},
child: const Text('Payer maintnant'),
),
),
);
}
}
Libraries
- digitalpaye_sdk_flutter
- enum/digitalpaye_enum_countries
- enum/digitalpaye_enum_currencies
- enum/enum_response_network
- enum/enum_status_payment
- enum/enum_type_payment
- guidelines/box_spacing_guidelines
- guidelines/radius_guidlines
- guidelines/spacing_guidelines
- interface/digitalpaye_config_interface
- interface/digitalpaye_payment_config_interface
- interface/digitalpaye_payment_process_interface
- interface/digitalpaye_repository_interface
- interface/digitalpaye_response_payment_interface
- interface/digitalpaye_response_token_interface
- logger/digitalpaye_logger
- main
- models/digitalpaye_config
- models/digitalpaye_payment_config
- models/digitalpaye_payment_process
- models/digitalpaye_response_payment
- models/digitalpaye_response_token
- network/network_api_versions
- network/network_apis
- network/network_error
- network/network_error_type
- network/network_param
- network/network_service
- network/response/default_network_response
- network/response/digitalpaye_result
- repository/digitalpaye_repository
- utils/app_color
- utils/constantes
- utils/function
- utils/hex_color
- view_model/payment_view_model
- views/digitalpaye_payment_view
- widgets/cancel_payment_widget
- widgets/digitalpaye_loader_widget
- widgets/error_page
- widgets/failed_payment_widget
- widgets/pending_payment_widget
- widgets/success_payment_widget