aba_payment 0.0.4 aba_payment: ^0.0.4 copied to clipboard
Allow you to integrate your flutter app with ABA PayWay
aba_payment #
This package will allow developer integrate their flutter app with aba payway easily. This plugin use WebView for embeding web content checkout and url_launcher to open schema for both ios and android.
Support : #
- ✓ Android Minimum SDK Version: 21
- ✓ IOS minimum target Version: 12
Payment Option: #
- ✓ Credit/Debit Card (flutter_inappwebview)
- ✓ ABA Payway Mobile (url_launcher)
Classes: #
- ABAClientHelper: Handle http request for creating any transaction
- ABATransaction: to instantiate any transaction object
- ABAServerResponse: represent response object for every creating transaction process
- ABAMerchant: represent merchant object
Widgets: #
- ABACheckoutContainer():A completed widget which allow user intergrate ABA Payment into their flutter app easily
Available methods: #
onBeginCheckout(ABATransaction transaction)
: Triggered when user pressed checkout button.onFinishCheckout(ABATransaction transaction)
: Triggered when after user pressed checkout button and transaction is created successfully.onBeginCheckTransaction(ABATransaction transaction)
: Triggered when user completed transaction payment and current transaction will be started to check if it success or failed.onFinishCheckTransaction(ABATransaction transaction)
: Triggered when user completed transaction payment and current transaction checking event is finished.onCreatedTransaction(int value, String msg)
: Triggered when user completed transaction payment and current transaction checking event is finished.onPaymentSuccess(ABATransaction transaction)
: Triggered when payment transaction was completed successfully. User can route to another screen after successfully. By default navigated to ABACheckoutSuccess()onPaymentFail(ABATransaction transaction)
: Triggered when payment transaction was uncompleted. User can show any message.
Example: #
ABACheckoutContainer(
amount: _total,
shipping: _shipping,
firstname: _firstname,
lastname: _lastname,
email: _email,
phone: _phone,
items: [..._items.map((e) => e.toMap()).toList()],
checkoutApiUrl: _checkoutApiUrl,
merchant: _merchant,
onBeginCheckout: (transaction) {
setState(() => _isLoading = true);
EasyLoading.show(status: 'loading...');
},
onFinishCheckout: (transaction) {
setState(() => _isLoading = false);
EasyLoading.dismiss();
},
onBeginCheckTransaction: (transaction) {
setState(() => _isLoading = true);
EasyLoading.show(status: 'loading...');
print("onBeginCheckTransaction ${transaction.toMap()}");
},
onFinishCheckTransaction: (transaction) {
setState(() => _isLoading = false);
EasyLoading.dismiss();
print("onFinishCheckTransaction ${transaction.toMap()}");
},
enabled: !_isLoading,
// onPaymentFail: (transaction) {
// print("onPaymentFail ${transaction.toMap()}");
// },
// onPaymentSuccess: (transaction) {
// print("onPaymentSuccess ${transaction.toMap()}");
// },
)
- Completed Cart Screen: This file will demonstrate you how to intergrate your flutter app with payway mobile
Configuration on Server Side #
- PHP: This file will tell you each step to config your php code on server side