Victor-Daniel-M / rave_flutter

A Flutter plugin for Flutterwaves's rave.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rave Flutter

build status Coverage Status pub package

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

Keys

Installation

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

Making Payment

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 = "customer@email.com"
      ..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

Documentation can be found here.

Contributing, Issues and Bug Reports

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.

About

A Flutter plugin for Flutterwaves's rave.

License:Apache License 2.0


Languages

Language:Dart 97.4%Language:Ruby 1.2%Language:Kotlin 0.6%Language:Swift 0.5%Language:Objective-C 0.2%