QNB Payment Integration Package is a Package for Integrated Payment via QNB Bank.
To install Package use composer
composer require payments/qnb-payment:dev-master
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
php artisan vendor:publish
config file have name BankPayment.php
it return an array of payment options like apiOperation, currency, ApiUrl
// 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();
// 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', '[email protected]', 0123456789, 'https://yourdomian.com/images/logo.png') !!}
// Get Order Details
dd(QNBPayment::getOrderDetailsSandBox('125550', 'TESTQNBAATEST001', '9c6a123857f1ea50830fa023ad8c8d1b'));
- Your Order ID in your System, Ex: '125550'.
- Merchant ID in QNB System, Ex: 'TESTQNBAATEST001'.
- Merchant Password in QNB System, Ex: '9c6a123857f1ea50830fa023ad8c8d1b'.
- Create and Retrieve Session ID.
- 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: '[email protected]', 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.
- Your Order ID in your System, Ex: '125550'.
- Merchant ID in QNB System, Ex: 'TESTQNBAATEST001'.
- Merchant Password in QNB System, Ex: '9c6a123857f1ea50830fa023ad8c8d1b'.
- All Information of Payment, Ex: 'Payment Method, Total Price, Card Number, Transaction Date, ...'.
// Start Payment via Meeza Digital
{!! createPaymentMeezaSandBox('success.php', 'fail.php', 10000001117, 100083, 123456, 80) !!}
- 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'.
- Send information of Payment To Success URL via Ajax Post Data.
- Redirect to Failer URL.
- For major changes, please open an issue first to discuss what you would like to change.
- Please make sure to update tests as appropriate.