Flutter支付集成插件flutter_theoaks_paystack_client的使用

Flutter支付集成插件flutter_theoaks_paystack_client的使用

一个用于通过Paystack支付网关进行支付的Flutter插件。支持Web端和移动设备,并作为https://pub.dev/packages/flutter_paystack的包装器。

🚀 安装

要使用此插件,在pubspec.yaml文件中添加flutter_paystack_client依赖项。

然后在你的小部件的initState中初始化插件。

import 'package:flutter_theoaks_paystack_client/flutter_paystack_client.dart';

class _PaymentPageState extends State<PaymentPage> {
  var publicKey = '[YOUR_PAYSTACK_PUBLIC_KEY]';

  @override
  void initState() {
    PaystackClient.initialize(publicKey);
  }
}

Web

在你的index.html文件中包含Paystack JS脚本:

<script src="https://js.paystack.co/v1/inline.js"></script>

使用

Charge charge = Charge()
      ..amount = 10000 // 支付金额(单位为分)
      ..reference = _getReference() // 订单参考号
      ..email = 'customer@email.com'; // 客户邮箱

CheckoutResponse response = await PaystackPlugin.checkout(
  context, // 当前上下文
  charge: charge,
);

建议在PaystackClient.checkout()返回后,将支付状态在后端进行验证。

String _getReference() {
  String platform;
  if (defaultTargetPlatform == TargetPlatform.android) {
    platform = 'android';
  } else if (defaultTargetPlatform == TargetPlatform.iOS) {
    platform = 'iOS';
  } else {
    throw UnsupportedError('Unsupported platform');
  }

  return 'ChargedFrom${platform}_${DateTime.now().millisecondsSinceEpoch}';
}

更多关于Flutter支付集成插件flutter_theoaks_paystack_client的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter支付集成插件flutter_theoaks_paystack_client的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


flutter_theoaks_paystack_client 是一个用于在 Flutter 应用中集成 Paystack 支付的插件。Paystack 是一个流行的支付网关,支持在非洲多个国家进行在线支付。以下是如何在 Flutter 项目中使用 flutter_theoaks_paystack_client 插件的步骤。

1. 添加依赖

首先,在 pubspec.yaml 文件中添加 flutter_theoaks_paystack_client 依赖:

dependencies:
  flutter:
    sdk: flutter
  flutter_theoaks_paystack_client: ^0.0.1  # 请检查最新版本

然后运行 flutter pub get 以安装依赖。

2. 初始化 Paystack 客户端

main.dart 或其他适当的地方初始化 Paystack 客户端。你需要提供你的 Paystack 公钥。

import 'package:flutter_theoaks_paystack_client/flutter_theoaks_paystack_client.dart';

void main() {
  PaystackClient.initialize(publicKey: 'your_paystack_public_key');
  runApp(MyApp());
}

3. 创建支付请求

接下来,创建一个支付请求。你可以指定金额、电子邮件、参考号等。

import 'package:flutter_theoaks_paystack_client/flutter_theoaks_paystack_client.dart';

Future<void> makePayment() async {
  final paymentRequest = PaymentRequest(
    amount: 1000, // 金额(以最小的货币单位,例如 1000 = 10.00 NGN)
    email: 'customer@example.com',
    reference: 'unique_reference',
  );

  try {
    final response = await PaystackClient.instance.chargeCard(paymentRequest);
    if (response.status == 'success') {
      print('Payment successful: ${response.message}');
    } else {
      print('Payment failed: ${response.message}');
    }
  } catch (e) {
    print('Error occurred: $e');
  }
}

4. 处理支付结果

chargeCard 方法会返回一个 PaymentResponse 对象,你可以根据 status 字段来判断支付是否成功。

5. 处理银行卡信息

如果你需要处理用户的银行卡信息,可以使用 Card 类来创建银行卡对象,并将其传递给 chargeCard 方法。

final card = Card(
  number: '4084084084084081',
  cvc: '408',
  expiryMonth: 12,
  expiryYear: 2025,
);

final paymentRequest = PaymentRequest(
  amount: 1000,
  email: 'customer@example.com',
  reference: 'unique_reference',
  card: card,
);
回到顶部