moeen-basra / omnipay-easypaisa
Easypaisa driver for the Omnipay PHP payment processing library
1.0.2
2023-10-21 17:49 UTC
Requires
- guzzlehttp/guzzle: ^7.8
- omnipay/common: ^3.2
- php-http/guzzle7-adapter: ^1.0
Requires (Dev)
- http-interop/http-factory-guzzle: ^1.2
- larapack/dd: ^1.1
- omnipay/tests: ^3|^4
- squizlabs/php_codesniffer: ^3
README
Telenor Easypaisa gateway for the Omnipay PHP payment processing library
Omnipay is a framework agnostic, multi-gateway payment processing library for PHP 5.3+. This package implements easypaisa support for Omnipay.
Install
Via Composer
$ composer require moeen-basra/omnipay-easypaisa
Usage
This gateway provides seamless integration with easypaisa rest API integration.
Purchase Request
use Omnipay\Omnipay; $gateway = Omnipay::create('Easypaisa'); // initialize with array $gateway->initialize([ 'storeId' => 'your-store-id', 'username' => 'your-username', 'password' => 'your-password', 'accountNum' => 'your-account-number', ]); // or individual properties setter $gateway->setAcountId('your-store-id') ->setUsername('your-username') ->setPassword('your-password') ->setAccountNum('your-account-number'); // set the test mode if needed $gateway->setTestMode(true); try { $parameters = [ 'transactionId' => '<transId>', 'amount' => '<amount>', // float 'paymentMethod' => 'OTC', // OTC or MA 'emailAddress' => 'customer-email', 'mobileNumber' => 'customer-phone', // 10 digits phone 03xxxxxxxxx 'tokenExpiry' => (30 * 60), // 30 minutes 'extra' => [ 'field_1' => 'value_1', 'field_2' => 'value_2', 'field_3' => 'value_3', 'field_4' => 'value_4', 'field_5' => 'value_5' ], ]; $response = $gateway->purchase($parameters)->send(); // var_dump($response->getData()); if ($response->isSuccessful()) { // handle success response } else { // handle failed response } } catch (\Throwable $exception) { var_dump($exception); }
Inquiry Request
use Omnipay\Omnipay; $gateway = Omnipay::create('Easypaisa'); // initialize with array $gateway->initialize([ 'storeId' => 'your-store-id', 'username' => 'your-username', 'password' => 'your-password', 'accountNum' => 'your-account-number', ]); // set the test mode if needed $gateway->setTestMode(true); try { $parameters = [ 'transactionId' => '<transId>', ]; $response = $gateway->fetchTransaction($parameters)->send(); // var_dump($response->getData()); if ($response->isSuccessful()) { // handle success response } else { // handle failed response } } catch (\Throwable $exception) { var_dump($exception); }
NOTE: You can check the tests Mock for sample response data.
License
This package is released under the MIT License. See the LICENSE file for details.
Contact
You can reach me here moeen.basra@gamil.com