Skip to content

eng-ahmedtaher/QNB-Payment-Integration-Package

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QNB Payment Integration Package

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.

License

GNU General Public License

About

QNB Payment Integration

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages