When installing, if you get issue, please go to Common Questions or Common Issues to find the solutions.

Native payment

Current release supports to work with new Native Payment Paypal, Razopay and Tap. This gateway is compatible for all WooCommerce, Magento and Opencart.

Please note that from version 1.6.6, disable the Razorpay integration due to block issue - https://github.com/razorpay/razorpay-flutter/issues/57

Please review this video for more details on how to config the payments:

Webview Multi-Payment


The current release supports for multi payment on WooCommerce website. Once you configure it to run successfully on the website, it can run smoothly from the app.

To customize this list, go to the lib/screens/checkout/payment.dart and lib/common/config.dart (From version 1.6.5 onwards, go to lib/common/config/payments.dart).

Add new payment key value and the image URL to enable it:

const Payments = {
  "paypal": "assets/icons/payment/paypal.png",
  "stripe": "assets/icons/payment/stripe.png",
  "razorpay": "assets/icons/payment/razorpay.png",

This const helps to config the Native Payment Paypal:

const PaypalConfig = {
  "production": false,
  "paymentMethodId": "paypal",
  "enabled": true,
  "returnUrl": "http://return.example.com", 
  "cancelUrl": "http://cancel.example.com",

This const helps to config the RazorpayConfig:

const RazorpayConfig = {
  "keyId": "rzp_test_WHBBYP8YoqmqwB",
  "callbackUrl": "http://example.com",
  "paymentMethodId": "razorpay",
  "enabled": true

From version 1.7.x, app supports the Payment that combines both Native and WebView, enable the OnePageCheckout:

/// Enable Payment option
"EnableOnePageCheckout": false,
"NativeOnePageCheckout": true

The default option of NativeOnePageCheckout is set to true to support the Payment that combines both Native and WebView. If you would like to disable this option and enable the OnePageCheckout, update EnableOnePageCheckout: true.

🗳 Coding Guide:

  • Please note that the multi payment gateway only availables for the WooCommerce integration, other frameworks are not supported yet.

Some Extra Setting

1. Downloadable product app

To enable the Downloadable product which is used for some business like Download the Digital Assets, Download E-Book…

As the download will not require the checkout and shipping address, so you need to disable this screens from the common/config.dart file: (For Fluxstore app from version 1.6.5 onwards, refer lib/common/config/payments.dart)

"EnableShipping": false,
"EnableAddress": false,

The screen of downloadable product will be display as normal, but once the user purchased your products successful, the download link will be apprear from the Order Detail screen:


2. Payment options

Open lib/common/config/payments.dart and change the value.

/// config for payment features
const kPaymentConfig = {
  "DefaultCountryISOCode": "VN",
  "EnableShipping": true,
  "EnableAddress": true,
  "EnableReview": true,
  'allowSearchingAddress': true,
  "GuestCheckout": false,
  "MinFreeShippingCost": 200
  • DefaultCountryISOCode: default country IOS Code.
  • EnableShipping: to skip the shipping info.
  • EnableAddress: enable the address shipping, set false if use for the app like Download Digial Asset which is not required the shipping feature.
  • EnableReview: enable the review on the product.
  • allowSearchingAddress: enable the Google Map Picker address from Shipping screen.
  • GuestCheckout: enable the guest checkout. Without logging in, users can still buy products.
  • MinFreeShippingCost: set the minimum free shipping cost.