traknpay / checkout
TraknPay Payment Gateway Integration
Requires
- php: >=5.4.0
This package is not auto-updated.
Last update: 2024-11-05 13:25:35 UTC
README
Checkout
Traknpay/Checkout is a Laravel package to integrate traknpay payment gateway in your laravel 5.X package
This package is used to integrate with traknpay api payment request.
Requirements
The Checkout package is working fine in Laravel 5.1 and 5.3.However , in laravel 5.2, there is a minor issue when response is not handled.If response is handled as described in the below steps then there would be no issue.
- PHP 5.4.0 or later
- Laravel 5.1 or 5.3
Quick Installation
To get started, install Checkout via the Composer package manager:
composer require traknpay/checkout
Service Provider
Next,register the Checkout service provider in the providers array of your config/app.php configuration file:
TraknPay\Checkout\CheckoutServiceProvider::class
Facade
Add 'Checkout' facade in the aliases array of your config/app.php configuration file:
'Checkout'=>TraknPay\Checkout\Facades\Checkout::class
Configuration
Publish the configuration:
php artisan vendor:publish
config/traknpay_payment_gateway.php
This is the configuration file that Laravel will publish into your config directory.
Open this file and provide values in following parameters
'api_key'
'app_url'
'salt'
'mode'
'app_url' is to be set to your server url, by default it is set to http://localhost:8000
, do not add '/'
at end of this url
'api_key' and 'salt' values are provided by Traknpay.
'mode' value can be either TEST
or LIVE
.
For the rest of the parameters that need to be sent , please refer the traknpay integration document TraknPay_Integration_Guide_Ver1.4.1.
Usage
To post the payment parameters to traknpay gateway, on clicking checkout button do following.
Checkout::post([ 'order_id' => '10', 'amount' => '201.00', 'name' => 'Payer Name', 'email' => 'Payer@example.com', 'phone' => '9876543210', ]);
Handling Response
There is an inbuilt response handler but that does not do much, apart from showing if the transaction was Successful
or Failed
.
To handle the response on your own, use the following steps.
-
Create a controller (e.g.
PaymentController
) -
Create a function within this controller(e.g.
handleResponse
) -
In
handleResponse
function, perform hash check and then update your payment status.use TraknPay\Checkout\Facades\Checkout; class PaymentController extends Controller { public function handleResponse(Request $request) { if(Checkout::checkResponseHash($request->all())){ // if checkResponseHash returns true, continue to save the response. } else { // if checkResponseHash returns false , then it means that response might be tampered } } }
-
Add the new route to
web.php
file.Route::post('/paymentresponse','PaymentController@handleResponse');
-
Add this route in exception list of VerifyCsrfToken in the middleware.
-
Update
app_url
andreturn_url
inconfig/traknpay_payment_gateway.php
.'app_url' => 'http://your-site.com' 'return_url' => '/paymentresponse'