pay_with_paystack 1.0.11 copy "pay_with_paystack: ^1.0.11" to clipboard
pay_with_paystack: ^1.0.11 copied to clipboard

Flutter Plugin that enable users make Paystack payment with either Mobile Money or Card on the fly provided you use the secret key provided to you from Paystack

Features #

🎉Mobile Money🎉

🎉VISA🎉

🎉Bank🎉

🎉Bank Transfer🎉

🎉USSD🎉

🎉QR🎉

🎉EFT🎉

Getting started #

Before you run, do the following in your android/app/build.gradle

Update your compileSDKVersion to latest

android {
    compileSdkVersion 32
    }

Update your minSDKVersion to 19

  defaultConfig {
        minSdkVersion 19
    }

Usage #

Simply call the PayWithPayStack class to start making payments with paystack. As simple as that. Please note that for reference its important you use a unique id. I recommend uuid. I have added it as part of the package. Please see example below to see how it is used.

Example

 final uniqueTransRef = PayWithPayStack().generateUuidV4()
 
 final uniqueTransRef = PayWithPayStack().generateUuidV4();

PayWithPayStack().now(
    context: context,
    secretKey:
        "sk_live_XXXXXXXXXXXXXXXXXXXXX",
    customerEmail: "popekabu@gmail.com",
    reference: uniqueTransRef,
    currency: "GHS",
    amount: 20000,
    callbackUrl: "https://google.com",
    transactionCompleted: () {
      debugPrint("==> Transaction Successful");
    },
    transactionNotCompleted: (reason) {
      debugPrint("==> Transaction failed reason $reason");
});

Definitions #

context To aid in routing to screens

secretKey Provided by Paystack

customerEmail Email address of the user/customer trying to make payment for receipt purpose

reference Unique ID to recognise this transaction in your paystack dashboard. I've added uuidv4 to help with that. Kindly see the example in the readme. Alternatively you can create your own unique id.

currency Currency user/customer should be charged in

amount Amount or value user/customer should be charged.

callbackUrl URL to redirect to after payment is successful, this helps close the session. This is setup in the Dashboard of paystack and the same URL setup is then provided here by you again. This is very important for successful or failed transactions

paymentChannels [Optional] Payment Channels are provided to you by Paystack and some may not be available based on your country and preferences set in your paystack dashboard. Example; ["card", "bank", "ussd", "qr", "mobile_money", "bank_transfer", "eft"]

transactionCompleted Execute a function when transaction is completed or is successful

transactionNotCompleted Execute a function when transaction is not completed or is successful. This function returns a string of transaction status if only transaction is not successful.

metadata [Optional] Extra data for development purposes. Example:

 "metadata": {
             "custom_fields": [
               {
                "name": "Daniel Kabu Asare",
                "phone": "+2330267268224"
               }
             ]
           }

Screenshots #

Additional information #

For more information and bug reports, Contact me on github @popekabu

📝 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.

Support my Work 🙏🏽 #

Buy me coffee here. Thank you!

52
likes
160
points
925
downloads

Publisher

unverified uploader

Weekly Downloads

Flutter Plugin that enable users make Paystack payment with either Mobile Money or Card on the fly provided you use the secret key provided to you from Paystack

Homepage

Documentation

API reference

License

MIT (license)

Dependencies

flutter, http, uuid, webview_flutter

More

Packages that depend on pay_with_paystack