Skip to content

chayanforyou/bkash-pgwclient-demo-flutter

Repository files navigation

Easy bKash integration with Flutter

GitHub license PRs Welcome Maintenance Open Source Love svg1 made-with-love

A simple implementation of bKash payment gateway in flutter with tokenized checkout feature.

Features

  • A Simple App with a button to Checkout
  • Pressing the button initiates bKash payment dialogs
  • Returns a success message with tranId if payment is successful

Usage

Official link for API documentation and demo checkout

Production

Replace the credentials for production uses in bkash_credentials.dart with your own bKash credentials and change the parameter isSandbox: false.

  static const String username = 'app_username';
  static const String password = 'app_password';
  static const String appKey = 'app_key';
  static const String appSecret = 'app_secret';

Pay With bKash

Basically this the implementation of payment without an agreement. Use the makePayment method to pay

Request

final result = await bkashApi.makePayment(
    context: context,
    amount: 50.0,
    payerReference: "01770618575",
    merchantInvoiceNumber: "INV-123",
    isSandbox: false,
  );

Response

{
  "amount": "50.0",
  "trxId": "BJJ90KGFBH",
  "paymentId": "TR0011HjY1p6A1729311405472",
  "payerReference": "01770618575",
  "customerMsisdn": "01770618575",
  "merchantInvoiceNumber": "INV-123",
  "paymentExecuteTime": "2024-10-19T10:17:14:333"
}

Error Handling

In case of any error it's throw PaymentException. You can handle the exception using a try-catch block.

try {
  // Make a payment
} on PaymentException catch (e) {
  // Handle the error
  log(e.message);
}

Video Demo

bkash_demo.mp4

Contributing

Contributions to this project you always are welcome. Please note the standard guidelines before submitting your pull request.

About

bKash payment gateway integration in flutter

Topics

Resources

Stars

Watchers

Forks