Amwal Pay SDK Flutter

A Flutter SDK for integrating Amwal Pay payment solutions into your mobile apps, providing secure, seamless, and customizable payment experiences.

Features

  • Multi-Platform Support: Android, iOS, Web, macOS, Windows, Linux
  • WASM Compatibility: Full support for WebAssembly compilation (Flutter 3.32.0+)
  • Payment Methods: Card payments, wallet payments, QR payments
  • Security: Built-in security features and encryption
  • Customizable UI: Flexible and customizable payment interfaces

WASM Compatibility

This SDK is fully compatible with Flutter's WebAssembly (WASM) compilation for web platforms. WASM provides:

  • Better Performance: Near-native execution speed in web browsers
  • Smaller Bundle Size: Optimized compilation for web deployment
  • Modern Web Standards: Leverages the latest web technologies

WASM Requirements

  • Flutter 3.32.0 or higher
  • Dart 3.8.0 or higher
  • Modern web browsers with WASM support

Building for WASM

# Build with WASM support
flutter build web --wasm

# Build with JavaScript fallback
flutter build web

Installation

Add this to your package's pubspec.yaml file:

dependencies:
  amwal_pay_sdk: ^1.1.26

Usage

import 'package:amwal_pay_sdk/amwal_pay_sdk.dart';

// Initialize the SDK
await AmwalPaySDK.initialize(
  merchantId: 'your_merchant_id',
  environment: Environment.production,
);

Platform Support

Platform Status Notes
Android ✅ Full Support Native Android implementation
iOS ✅ Full Support Native iOS implementation
Web (JavaScript) ✅ Full Support Traditional web compilation
Web (WASM) ✅ Full Support WebAssembly compilation
macOS ✅ Full Support Native macOS implementation
Windows ✅ Full Support Native Windows implementation
Linux ✅ Full Support Native Linux implementation

Web Platform

The web platform supports both JavaScript and WASM compilation modes:

  • JavaScript Mode: Traditional compilation for broader browser compatibility
  • WASM Mode: Modern compilation for better performance and smaller bundles

Web-Specific Features

  • Responsive design for all screen sizes
  • Touch and mouse input support
  • Progressive Web App (PWA) capabilities
  • Cross-browser compatibility

Contributing

Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support and questions:

Libraries

amwal_pay_sdk
A Flutter SDK for integrating Amwal Pay payment solutions into your mobile apps. This library provides secure, seamless, and customizable payment experiences.
amwal_pay_sdk_flutter
A Flutter SDK for integrating Amwal Pay payment solutions into your mobile apps. This library provides secure, seamless, and customizable payment experiences.
amwal_sdk_settings/amwal_sdk_setting_container
amwal_sdk_settings/amwal_sdk_settings
amwal_sdk_web
core/apiview/api_view
core/apiview/state_mapper
core/base_repository/base_repository
core/base_response/base_response
core/base_state/base_cubit_state
core/base_view_cubit/base_cubit
core/constants/sdk_constants
core/enums/transaction_type
core/loader_mixin
core/logger/amwal_logger
core/logger/example
core/logger/firestore_logger
core/logger/logar
core/logger/logar_injector
core/logger/logar_migration_helper
core/logger/logger
core/merchant_store/merchant_store
core/networking/constants
core/networking/custom_log_interceptor
core/networking/dio_client
core/networking/encryption_util
core/networking/mockup_interceptor
core/networking/network_service
core/networking/network_state
core/networking/secure_hash_interceptor
core/networking/token_interceptor
core/resources/assets/app_assets_paths
core/resources/color/colors
core/tablayout/tab_layout_cubit
core/tablayout/tab_layout_generic_widget
core/tooltip_widget
core/ui/accepted_payment_methods_widget
core/ui/alert_dialog/alert_dialog
core/ui/amountcurrencywidget/amount_currency_widget
core/ui/amountcurrencywidget/amount_currency_widget_cubit
core/ui/amountcurrencywidget/decimal_text_input_formatter
core/ui/app_dialog
core/ui/buttons/app_button
core/ui/buttons/app_main_button
core/ui/cardinfoform/card_form_inputs_formatter
core/ui/cardinfoform/card_info_form_widget
core/ui/cardinfoform/card_type
core/ui/cardinfoform/card_utils
core/ui/count_down_dialog/count_down_dialog
core/ui/directional_widget/directional_widget
core/ui/error_dialog
core/ui/inputfields/date_picker_field
core/ui/inputfields/input_field_widget
core/ui/inputfields/phone_input_field
core/ui/listpicker/bottom_select_list
core/ui/loading_dialog
core/ui/sale_card_feature_common_widgets
core/ui/transactiondialog/ios_receipt_sharing_helper
core/ui/transactiondialog/receipt_sharing_helper
core/ui/transactiondialog/transaction
core/ui/transactiondialog/transaction_detail_widget
core/ui/transactiondialog/transaction_details_settings
core/ui/transactiondialog/transaction_dialog_action_buttons
core/ui/transactiondialog/transaction_status_dialog
core/usecase/i_use_case
features/card/amwal_salebycard_sdk
features/card/cubit/sale_by_card_contact_less_cubit
features/card/cubit/sale_by_card_manual_cubit
features/card/data/models/request/customer_token_request
features/card/data/models/request/purchase_request
features/card/data/models/response/card_info
features/card/data/models/response/customer_token_response
features/card/data/models/response/purchase_response
features/card/data/repository/sale_by_card_repository
features/card/dependency/injector
features/card/domain/repository/sale_by_card_repo
features/card/domain/sale_by_card_constants
features/card/domain/use_case/get_customer_token_use_case
features/card/domain/use_case/pay_with_token_use_case
features/card/domain/use_case/purchase_apple_samsung_pay
features/card/domain/use_case/purchase_otp_step_one_use_case
features/card/domain/use_case/purchase_otp_step_two_use_case
features/card/domain/use_case/purchase_use_case
features/card/module/sale_by_card_module
features/card/presentation/app
features/card/presentation/sale_by_card_contact_less_screen
features/card/presentation/sale_by_card_manual_screen
features/card/presentation/sale_by_card_screen
features/card/presentation/thrree_ds_web_view_page
features/card/presentation/widgets/otp_dialog
features/card/presentation/widgets/select_card_bottom_sheet
features/card/state/sale_by_wallet_state
features/card/transaction_manager/amwal_card_transaction_manager
features/card/transaction_manager/i_card_transaction_manager
features/card/transaction_manager/in_app_card_transaction_manager
features/card/transaction_manager/transaction_util_dialog
features/currency_field/cubit/currency_cubit
features/currency_field/data/models/request/currency_request
features/currency_field/data/models/response/currency_response
features/currency_field/data/repository/currency_repository
features/currency_field/domain/currency_constants
features/currency_field/domain/repository/currency_repository
features/currency_field/domain/use_case/currency_use_case
features/currency_field/module/currency_binds
features/currency_field/presentation/currency_field
features/digital_wallet/constants/digital_wallet_constants
features/digital_wallet/constants/digital_wallet_translations
features/digital_wallet/cubit/sale_by_digital_wallet_cubit
features/digital_wallet/model/digital_wallet_response
features/digital_wallet/module/sale_by_apple_pay_module
features/digital_wallet/presentation/digital_wallet_screen
features/payment_argument
features/receipt/receipt_handler
features/transaction/data/models/request/transaction_operation_request
features/transaction/data/models/response/merchant_name_response
features/transaction/data/models/response/one_transaction_response
features/transaction/data/models/response/transaction_operation_response
features/transaction/data/repository/transaction_repository_impl
features/transaction/domain/repository/transaction_repository
features/transaction/domain/use_case/get_transaction_by_id
features/transaction/module/transaction_module
features/transaction/util
features/wallet/amwal_salebywallet_sdk
A Flutter SDK for integrating Amwal Pay payment solutions into your mobile apps. This library provides secure, seamless, and customizable payment experiences.
features/wallet/cubit/sale_by_qr_cubit
features/wallet/cubit/sale_by_wallet_cubit
features/wallet/cubit/sale_by_wallet_pay_cubit
features/wallet/cubit/sale_by_wallet_verify_cubit
features/wallet/data/models/request/dynamic_qr_request
features/wallet/data/models/request/payment_request
features/wallet/data/models/request/sale_by_wallet_request
features/wallet/data/models/request/verification_request
features/wallet/data/models/response/qr_response
features/wallet/data/models/response/sale_by_wallet_response
features/wallet/data/models/response/verify_customer_response
features/wallet/data/models/response/wallet_pay_response
features/wallet/data/repository/sale_by_wallet_repo_imp
features/wallet/data/sale_by_wallet_constant
features/wallet/dependency/injector
features/wallet/domain/sale_by_wallet_repository
features/wallet/domain/use_case/pay_with_alias_use_case
features/wallet/domain/use_case/pay_with_mobile_use_case
features/wallet/domain/use_case/pay_with_qr_use_case
features/wallet/domain/use_case/verify_customer_use_case
features/wallet/module/sale_by_wallet_module
features/wallet/presentation/app
features/wallet/presentation/screen/sale_by_wallet_paying_options
features/wallet/presentation/screen/sale_by_wallet_screen
features/wallet/presentation/widgets/alias_pay_widget
features/wallet/presentation/widgets/phone_pay_widget
features/wallet/presentation/widgets/sale_action_buttons
features/wallet/presentation/widgets/sale_by_wallet_mixins/sale_by_wallet_action_mixin
features/wallet/presentation/widgets/sale_by_wallet_mixins/sale_by_wallet_pay_mixin
features/wallet/presentation/widgets/sale_by_wallet_mixins/sale_by_wallet_verify_mixin
features/wallet/presentation/widgets/scan_qr_to_pay
features/wallet/state/sale_by_wallet_state
localization/app_localizations
localization/app_localizations_delegate
localization/app_localizations_setup
localization/locale_utils
navigator/sdk_navigator
presentation/amwal_pay_screen
presentation/color/colors
presentation/sdk_arguments
sdk_builder/network_service_builder
sdk_builder/sdk_builder
service/nfc_manager