Last updated:
0 purchases
mad pay
Flutter Mad Pay
Easy integration with Google Pay and Apple Pay for your flutter app.
Apple Pay API Documentation.
Google Pay API Documentation.
SDK Features #
Pay with Apple Pay and Google Pay
Checking payment availability on your device
Checking the user's active cards
Installing #
Add this to your package's pubspec.yaml file:
dependencies:
mad_pay: ^2.2.14
copied to clipboard
For Android
In the file [project_name]/android/app/build.gradle, set minSdkVersion to at least version 21.
In the file [project_name]/android/app/build.gradle, add the line proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' to buildTypes.release
Create the proguard-rules.pro file in the [project_name]/android/app folder and add the line -keep class * extends com.google.protobuf.GeneratedMessageLite { *; }
An example can be found in: example/android/app
Usage #
To start using payment you need to get Merchant Identifier:
For Apple Pay
For Google Pay
Use without buttons (for your design) #
final MadPay pay = MadPay();
// To find out if payment is available on this device
await pay.checkPayments();
// If you need to check if user has at least one active card
await pay.checkActiveCard(
paymentNetworks: <PaymentNetwork>[
PaymentNetwork.visa,
PaymentNetwork.mastercard,
],
);
// To pay with Apple Pay or Google Pay
await pay.processingPayment(
PaymentRequest(
google: GoogleParameters(
gatewayName: 'Your Gateway',
gatewayMerchantId: 'Your id',
merchantId: 'example_id',
),
apple: AppleParameters(
merchantIdentifier: 'Your id',
),
currencyCode: 'USD',
countryCode: 'US',
paymentItems: <PaymentItem>[
PaymentItem(name: 'T-Shirt', price: 2.98),
PaymentItem(name: 'Trousers', price: 15.24),
],
paymentNetworks: <PaymentNetwork>[
PaymentNetwork.visa,
PaymentNetwork.mastercard,
],
)
);
copied to clipboard
Using with buttons (by guideline) #
Apple Pay button Widget (Native):
ApplePayButton(
style: ApplePayButtonStyle.automatic,
type: ApplePayButtonType.buy,
request: PaymentRequest.apple(
apple: AppleParameters(
merchantIdentifier: 'Your id',
),
currencyCode: 'USD',
countryCode: 'US',
paymentItems: <PaymentItem>[
PaymentItem(name: 'T-Shirt', price: 2.98),
PaymentItem(name: 'Trousers', price: 15.24),
],
),
onPaymentResult: (PaymentResponse? req) {
// ...
},
onError: (Object? e) {
// ...
},
);
copied to clipboard
Google Pay button Widget (Flutter):
GooglePayButton(
type: GooglePayButtonType.plain,
request: PaymentRequest.google(
google: GoogleParameters(
gatewayName: 'Your Gateway',
gatewayMerchantId: 'Your id',
merchantId: 'example_id',
),
currencyCode: 'USD',
countryCode: 'US',
paymentItems: <PaymentItem>[
PaymentItem(name: 'T-Shirt', price: 2.98),
PaymentItem(name: 'Trousers', price: 15.24),
],
),
onPaymentResult: (PaymentResponse? req) {
// ...
},
onError: (Object? e) {
// ...
},
);
copied to clipboard
Adaptive Pay button Widget (uses ApplePayButton and GooglePayButton):
AdaptivePayButton(
applePayButton: ApplePayButton(...),
googlePayButton: GooglePayButton(...),
),
copied to clipboard
Example #
The Example is in the corresponding folder
Payment Network matrix #
Payment Network
iOS
Android
Visa
+
+
MasterCard
+
+
American Express
+
+
Interac
+
+
Discover
+
+
JCB
+
+
Maestro
+
Electron
+
Mir Pay
+
+
Cartes Bancarries
+
Union Pay
+
EftPos
+
Elo
+
ID Credit
+
Mada
+
Private Label
+
Quic Pay
+
Suica
+
V Pay
+
Dankort
+
Nanaco
+
Waon
+
Girocard
+
BARCODE
+
Additional resources #
Take a look at the following resources to manage your payment accounts and learn more about the APIs for the supported providers:
Google Pay
Apple Pay
Platforms
Android
iOS
Documentation
Overview
Overview
Console
Google Pay Business Console
Developer portal
Reference
API reference
Apple Pay API
Style guidelines
Brand guidelines
Buttons and Marks
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.