icash

Last updated:

0 purchases

icash Image
icash Images
Add to Cart

Description:

icash

icash #
icash_sdk is flutter plugin that let's developer to integrate native iCash payment method into their flutter application with just few lines of code.
Getting Started #
How to install
Depend on it

```Language

dependencies:
icash: 0.0.1

```
copied to clipboard
Usage
1. Implement `IcashInterface` to your widget and overwrite `onIcashSuccess` and `onIcashError` error methods.

Example
```Language
import 'package:icash/icash.dart';
//..your code
class _IcashTestState extends State<MyApp> implements IcashInterface {
//..your code

@override
void onIcashSuccess(Map<String, String> _res) {
//_res consist of response with
//{"process_id":"5857603639157688230722287658","customer":"Test User","merchant":"Test Company","amount":"100","transaction_id":"abc12356","status":"Complete"}
}
//..your code
@override
void onIcashError(String _action) {
//_action consist of error type which is one of
APP_CLOSED
NETWORK_ERROR
DUPLICATE
TRANSACTION_ERROR
}

//..your code

```
2. To initiate payment process declear iCashPayment class and call doPayment method as below
```Language
//pass you current widget build context
void initatePayment(BuildContext _ctx) {
iCashPayment _ipayment = iCashPayment(this);
_ipayment.doPayment(_ctx,
vendor_key: "your vendor key",
amount: "1000",
title: "Icash Test",
description: "This is only for test",
transaction_id: "abc123456");
}

```
copied to clipboard
Complete Example
import 'package:flutter/material.dart';
import 'package:icash/icash.dart';

void main() {
runApp(const MyApp());
}

class IcashTestState extends StatefulWidget {
const IcashTestState({Key? key}) : super(key: key);

@override
State<IcashTestState> createState() => _IcashTestState();
}

class _IcashTestState extends State<IcashTestState> implements IcashInterface {

@override
void initState() {
super.initState();
}

@override
void onIcashSuccess(Map<String, String> _res) {
//_res consist of response with
//{"process_id":"5857603639157688230722287658","customer":"Test User","merchant":"Test Company","amount":"100","transaction_id":"abc12356","status":"Complete"}
}

@override
void onIcashError(String _action) {
//_action consist of error type which is one of
APP_CLOSED
NETWORK_ERROR
DUPLICATE
TRANSACTION_ERROR
}

void initatePayment(BuildContext _ctx) {
iCashPayment _ipayment = iCashPayment(this);
_ipayment.doPayment(_ctx,
vendor_key: "your vendor key",
amount: "1000",
title: "Icash Test",
description: "This is only for test",
transaction_id: textFieldController.text);
}
}

@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('iCash Payment Test App'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Builder(
builder: (context) => RaisedButton(
onPressed: () {
initatePayment(context);
},
child: Text('Pay 100'),
),
)
],
),
),
),
);
}
}

copied to clipboard

License:

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files In This Product:

Customer Reviews

There are no reviews.