payments / qnb-payment
QNB Payment Integration
Installs: 54
Dependents: 0
Suggesters: 0
Security: 0
Stars: 8
Watchers: 3
Forks: 4
Open Issues: 1
Type:package
Requires
- php: >= 5.6
This package is not auto-updated.
Last update: 2024-11-22 06:48:15 UTC
README
QNB Payment Integration Package is a Package for Integrated Payment via QNB Bank.
Install
To install Package use composer
composer require payments/qnb-payment:dev-master
Add service provider & alias
Add the following service provider to the array in: config/app.php
Payments\QNBPayment\Providers\QNBPaymentProvider::class
Add the following alias to the array in: config/app.php
'QNBPayment' => Payments\QNBPayment\Providers\Facades\QNBPayment::class
Publish the config file
php artisan vendor:publish
config file have name BankPayment.php
it return an array of payment options like apiOperation, currency, ApiUrl
Usage
// Create Session for Payment SandBox Mode QNBPayment::createSessionSandBox(); // Create Session for Payment Live Mode QNBPayment::createSessionLive(); // Start Payment via MasterCard or Visa in SandBox Mode QNBPayment::createPaymentSandBox(); // Start Payment via MasterCard or Visa in Live Mode QNBPayment::createPaymentLive(); // Get Order Details in SandBox Mode QNBPayment::getOrderDetailsSandBox(); // Get Order Details in Live Mode QNBPayment::getOrderDetailsLive(); // Start Payment via Meeza Digital in SandBox Mode QNBPayment::createPaymentMeezaSandBox(); // Start Payment via Meeza Digital in Live Mode QNBPayment::createPaymentMeezaLive();
Example of Payment Method via Master Card or Visa in SandBox Mode
// Create Session for Payment $sessionID = QNBPayment::createSessionSandBox('125550', 'TESTQNBAATEST001', '9c6a123857f1ea50830fa023ad8c8d1b'); // Start Payment via MasterCard or Visa {!! QNBPayment::createPaymentSandBox('success.php', 'fail.php', 'TESTQNBAATEST001', '125550', 20.00, $sessionID, 'Test QNB', 'Cairo', 'ahmedtaherinfo0@gmail.com', 0123456789, 'https://yourdomian.com/images/logo.png') !!} // Get Order Details dd(QNBPayment::getOrderDetailsSandBox('125550', 'TESTQNBAATEST001', '9c6a123857f1ea50830fa023ad8c8d1b'));
Create Session should have contain:
- Your Order ID in your System, Ex: '125550'.
- Merchant ID in QNB System, Ex: 'TESTQNBAATEST001'.
- Merchant Password in QNB System, Ex: '9c6a123857f1ea50830fa023ad8c8d1b'.
Response of Create Session Method
- Create and Retrieve Session ID.
Create Payment Method should have contain:
- Success URL Upon completion of the Request Success Payment, you will be redirect to this URL.
- Failer URL Upon completion of the Request Failer Payment, you will be redirect to this URL.
- Merchant ID in QNB System, Ex: 'TESTQNBAATEST001'.
- Your Order ID in your System, Ex: '125550'.
- The Total Price for Order, Ex: '20.00'.
- Session ID, your Created in last step can you get it via Create Session Method.
- Site Name, Ex: 'Test QNB'.
- Site Address, Ex: 'Cairo', can you set null.
- Site Email, Ex: 'ahmedtaherinfo0@gmail.com', can you set null.
- Site Phone, Ex: '0123456789', can you set null.
- Site Logo URL, Ex: 'https://yourdomian.com/images/logo.png', can you set null.
Get Order Details should have contain:
- Your Order ID in your System, Ex: '125550'.
- Merchant ID in QNB System, Ex: 'TESTQNBAATEST001'.
- Merchant Password in QNB System, Ex: '9c6a123857f1ea50830fa023ad8c8d1b'.
Response of Get Order Details
- All Information of Payment, Ex: 'Payment Method, Total Price, Card Number, Transaction Date, ...'.
Example of Payment Method via Meeza Digital in SandBox Mode
// Start Payment via Meeza Digital {!! createPaymentMeezaSandBox('success.php', 'fail.php', 10000001117, 100083, 123456, 80) !!}
Create Payment Method should have contain:
- Success URL Upon completion of the Request Success Payment, you will be redirect to this URL.
- Failer URL Upon completion of the Request Failer Payment, you will be redirect to this URL.
- The Configured Merchant ID from UPG, Ex: '10000001117'.
- The Configured Terminal ID from UPG for the Merchant, Ex: '100083'.
- Your Order ID in your System, Ex: '123456'.
- The Total Price for Order, Ex: '80.00'.
Response of Complete Payment
- Send information of Payment To Success URL via Ajax Post Data.
Response of Failer Payment
- Redirect to Failer URL.
Contributing
- For major changes, please open an issue first to discuss what you would like to change.
- Please make sure to update tests as appropriate.