dev-KarimAhmed/pay_with_paymob
pay_with_paymob는 Visa 및 모바일 월렛 거래를 위한 Paymob와의 원활한 결제 통합을 가능하게 하는 Flutter 패키지입니다. 이 패키지는 결제 처리를 간단하고 효율적으로 처리할 수 있는 방법을 제공하여 개발자가 애플리케이션에 결제 기능을 쉽게 구현할 수 있도록 도와줍니다.
- Stars
- 10
- Forks
- 3
- 최근 푸시(UTC)
- 2024. 11. 19.
- 프로젝트 상태
- 활성
사용 중인 의존성
의존성 목록 5 개
- dio
^5.7.0 - flutter
{"sdk":"flutter"} - webview_flutter
^4.9.0 - flutter_test개발 의존성
{"sdk":"flutter"} - flutter_lints개발 의존성
^4.0.0
원본 README
아래는 영문 원문 스냅샷입니다. 최신 내용은 GitHub에서 확인하세요.
README 펼치기 / 접기
pay_with_paymob
A Flutter package to simplify Paymob gateway integration for Visa and mobile wallet payments.
Features
<<<<<<< HEAD
- Easy integration with Paymob's payment system.
- Support for multiple payment methods: Visa and mobile wallets.
- Customizable payment view with flexible style options.
- User data collection for enhanced payment experiences.
- Callbacks for handling payment success and errors.
=======
pay_with_paymob
A Flutter package that simplifies the integration of Paymob gateway for Visa and mobile wallet payments.
f590b71af9211ba066d7a7ebe79821eab643a677
Getting Started
Prerequisites
- Flutter SDK installed on your machine.
- A Paymob account to acquire the API key and other necessary credentials.
Installation
Add the following line to your pubspec.yaml file:
dependencies:
pay_with_paymob: ^1.3.4
Run flutter pub get to install the package.
<<<<<<< HEAD
=======
dependencies:
pay_with_paymob : ^1.1.2
f590b71af9211ba066d7a7ebe79821eab643a677
Usage
Initializing Payment Data
Before proceeding with payment, initialize your payment data (in the main function or the initState of your widget):
PaymentData.initialize(
apiKey: "Your API Key", // Required: Obtain from dashboard -> Settings -> Account Info -> API Key
iframeId: "Your Iframe ID", // Required: Obtain from Developers -> iframes
integrationCardId: "Your Card Integration ID", // Required: Obtain from Developers -> Payment Integrations -> Online Card ID
integrationMobileWalletId: "Your Wallet Integration ID", // Required: Obtain from Developers -> Payment Integrations -> Mobile Wallet ID
// Optional User Data
userData: UserData(
email: "User Email", // Optional: Default is 'NA'
phone: "User Phone", // Optional: Default is 'NA'
firstName: "User First Name", // Optional: Default is 'NA'
lastName: "User Last Name", // Optional: Default is 'NA'
),
// Optional Style Customizations
style: Style(
primaryColor: Colors.blue, // Default: Colors.blue
scaffoldColor: Colors.white, // Default: Colors.white
appBarBackgroundColor: Colors.blue, // Default: Colors.blue
appBarForegroundColor: Colors.white, // Default: Colors.white
textStyle: TextStyle(), // Default: TextStyle()
buttonStyle: ElevatedButton.styleFrom(), // Default: ElevatedButton.styleFrom()
circleProgressColor: Colors.blue, // Default: Colors.blue
unselectedColor: Colors.grey, // Default: Colors.grey
showMobileWalletIcons: true, // Default: true
),
);
Navigating to the Payment View
Once initialized, navigate to the payment view using:
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => PaymentView(
onPaymentSuccess: () {
// Handle successful payment
},
onPaymentError: () {
// Handle payment error
},
price: 100, // Required: Total price, e.g., 100 means 100 EGP
),
),
);
Additional Information
Test Data for Simulation
Visa Card:
- Card Number: 5123456789012346
- Card Holder Name: Test Account
- Expiry Date: 12/25
- CVV: 123
<<<<<<< HEAD Mobile Wallet:
- Wallet Number: 01010101010
- MPIN: 123456
- One-Time Password: 123456
For further details, refer to the documentation.
Contributions
We welcome contributions! If you encounter issues or have suggestions, feel free to open an issue on GitHub.
تأكد من تحديث أي روابط أو معلومات تتعلق بالحزمة حسب الحاجة. إذا كان لديك أي تعديلات أو إضافات أخرى، لا تتردد في إخباري!
f590b71af9211ba066d7a7ebe79821eab643a677