payengine 2.0.0-alpha-1 payengine: ^2.0.0-alpha-1 copied to clipboard
The PayEngine Flutter SDK allows you to build delightful payment experiences in your native Android and iOS apps using Flutter
PayEngine SDK for Flutter #
The PayEngine Flutter SDK allows you to build delightful payment experiences in your native Android and iOS apps using Flutter. We provide powerful and customizable UI screens and elements that can be used out-of-the-box to collect your users' payment details
Getting Started #
PayEngine config
final PayEngineConfig config = const PayEngineConfig(
publicKey: "pk_test_xxx",
scriptURL: "https://console.payengine.dev");
final String merchantId = "<your-merchant-id>";
Credit Card Form
var additionalFields = List<PayEngineField>.from([
PayEngineField('address_zip', 'text', 'Zip Code', true,
keyboardType: PayEngineKeyboardType.number,
pattern:
r"^(?:\d{5}(?:-\d{4})?|[ABCEGHJKLMNPRSTVXY]\d[A-Z] ?\d[A-Z]\d)$"),
]);
final creditCardForm = CreditCardForm(config: payengineConfig, additionalFields: additionalFields);
Container(padding: const EdgeInsets.all(10), child: creditCardForm),
OutlinedButton(
onPressed: () async {
final response = await creditCardForm.tokenize(merchantId);
setState(() {
result = response;
});
},
child: const Text('Tokenize')),
Bank Account Form
final bankAccountForm = BankAccountForm(config: payengineConfig);
Container(padding: const EdgeInsets.all(10), child: bankAccountForm),
OutlinedButton(
onPressed: () async {
final response = await bankAccountForm.tokenize(merchantId);
setState(() {
result = response;
});
},
child: const Text('Tokenize')),
Other components
Widget build(BuildContext context) {
return PayEngine(
type: "boarding",
config: payengineConfig,
params: {
"merchant-id": merchantId
},
onEvent: (Map<String, dynamic> event) {
debugPrint("$event");
});
}