feexpay_flutter_v2 1.0.10
feexpay_flutter_v2: ^1.0.10 copied to clipboard
A secure plugin to accept Mobile Money, Wallet and Credit Card payments (API v2) with bilingual interface (FR/EN).
Feexpay v2 #
FeexPay v2 est un plugin Flutter sécurisé pour accepter les paiements Mobile Money, Wallet et Carte Bancaire via l'API v2.
Interface bilingue (FR/EN) avec détection automatique de la langue du téléphone.
Installation #
flutter pub add feexpay_flutter_v2
Import #
import 'package:feexpay_flutter_v2/feexpay_flutter.dart';
Utilisation #
import 'package:feexpay_flutter_v2/feexpay_flutter.dart';
// Constructeur avec locale forcée (français par défaut)
ChoicePage(
token: 'votre_api_key',
id: 'votre_shop_id',
amount: '1500',
redirecturl: '/success',
errorredirecturl: '/error',
)
// Ou auto-détection de la langue du téléphone
ChoicePage.autoLocale(
token: 'votre_api_key',
id: 'votre_shop_id',
amount: '1500',
redirecturl: '/success',
errorredirecturl: '/error',
)
Paramètres #
| Paramètre | Type | Requis | Description |
|---|---|---|---|
token |
String |
Oui | Clé API |
id |
String |
Oui | Identifiant boutique |
amount |
String |
Oui | Montant (ex: "1500") |
redirecturl |
String |
Non | Route/URL de redirection après succès |
errorredirecturl |
String |
Non | Route/URL de redirection après échec |
locale |
AppLocale |
Non | Forcer la langue : AppLocale.fr ou AppLocale.en |
reference |
String |
Non | Référence de transaction prédéfinie |
hide_identity_form |
bool |
Non | Masquer le formulaire d'identité (nom/email) |
name_shop |
String |
Non | Nom du marchand (affiché dans l'interface) |
trans_key |
String |
Non | Clé de transaction (15 caractères aléatoires) |
callback_info |
Map |
Non | Infos supplémentaires pour le callback |
Changement de langue en temps réel #
Un bouton FR/EN est affiché dans l'interface utilisateur. L'utilisateur peut basculer entre le français et l'anglais à tout moment sans redémarrer le formulaire.
// Détection automatique (français par défaut si langue du téléphone ≠ anglais)
ChoicePage.autoLocale(
token: '...',
id: '...',
amount: '1500',
)
// Forcer le français
ChoicePage(
token: '...',
id: '...',
amount: '1500',
locale: AppLocale.fr,
)
// Forcer l'anglais
ChoicePage(
token: '...',
id: '...',
amount: '1500',
locale: AppLocale.en,
)
Modes de paiement supportés #
| Pays | Mobile Money | Wallet |
|---|---|---|
| Bénin (BJ) | MTN, MOOV, CELTIIS BJ | CORIS |
| Côte d'Ivoire (CI) | ORANGE CI, MTN CI, MOOV CI | WAVE CI |
| Togo (TG) | MOOV TG, TOGOCOM TG | - |
| Burkina Faso (BF) | ORANGE BF, MOOV BF | - |
| Sénégal (SN) | FREE SN, ORANGE SN | WAVE SN |
Déclaration des routes de redirection #
Les routes internes sont déclarées dans le MaterialApp de l'application hôte :
MaterialApp(
title: 'Mon App',
theme: ThemeData(fontFamily: 'Poppins'),
routes: {
'/success': (context) => const SuccessPage(),
'/error': (context) => const EndErrorPage(),
},
)
Les redirections externes (URLs http/https) sont également supportées.
Contribution #
Les pull requests sont les bienvenues. Pour les changements majeurs, veuillez d'abord ouvrir une issue.