A robust Flutter plugin for accepting payment on Rave with
- Card
- Nigerian Bank Account
- ACH Payments
- Mobile money Francophone Africa
- Mpesa
- Ghana Mobile Money
- Uganda Mobile Money
- Create your Rave staging keys from the sandbox environment
- Create your Rave live keys from the Rave Dashboard
To use this plugin, add rave_flutter
as a dependency in your pubspec.yaml file.
Webview is required so enable PlatformView
on iOS by adding:
<key>io.flutter.embedded_views_preview</key>
<true/
to Info.plist file
Instantiate RavePayInitializer
and pass it to RavePayManager.prompt
along
with the BuildContext
. The result of the transaction is the Future
returned by RavePayManager.initialize
processTransaction() async {
// Get a reference to RavePayInitializer
var initializer = RavePayInitializer(
amount: 500, publicKey: publicKey, encryptionKey: encryptionKey)
..country = "NG"
..currency = "NGN"
..email = "[email protected]"
..fName = "Ciroma"
..lName = "Adekunle"
..narration = narration ?? ''
..txRef = txRef
..subAccounts = subAccounts
..acceptMpesaPayments = acceptMpesaPayment
..acceptAccountPayments = acceptAccountPayment
..acceptCardPayments = acceptCardPayment
..acceptAchPayments = acceptAchPayments
..acceptGHMobileMoneyPayments = acceptGhMMPayments
..acceptUgMobileMoneyPayments = acceptUgMMPayments
..staging = true
..isPreAuth = preAuthCharge
..displayFee = shouldDisplayFee;
// Initialize and get the transaction result
RaveResult response = await RavePayManager()
.prompt(context: context, initializer: initializer);
}
Documentation can be found here.
The project is open to public contribution. Please feel very free to contribute. Experienced an issue or want to report a bug? Please, report it here. Remember to be as descriptive as possible.