cart53 / ccavenue
Laravel Package for Integration of Latest CCAvenue Payment Gateway for PHP 7+
Requires
- php: >=8.0
- illuminate/support: *
Requires (Dev)
README
CCAvenue Payment Gateway integration for Laravel 5.x (Supports PHP 7.3)
This package is built to integrate CCAvenue payment gateway into your laravel project, It is developed keeping in mind other payment gateways also but is limited to ccavenue for at the time of release.
Important
The code is originially a fork of similar package by softon/indipay. But this package uses the latest SDK released by CCAvenue for php 7.1
Since their old SDK didn't support that version.
Installation
Step 1: Install package using composer
$ composer require cart53/ccavenue
Step 2: Add the service provider to the config/app.php
file in Laravel
Cart53\Payment\PaymentServiceProvider::class,
Step 3: Add an alias for the Facade to the config/app.php
file in Laravel
'Payment' => Cart53\Payment\Facades\Payment::class
Step 4: Publish the Config, Middleware & Views by running in your terminal
php artisan vendor:publish
This above step creates
config/payment.php
app/Http/Middlewares/VerifyCsrfToken.php
resources/views/vendor/payment/ccavenue.blade.php
Step 5: Modify the app\Http\Kernel.php
to use the new Middleware.
This is required so as to avoid CSRF verification on the Response Url from the payment gateways.
You may adjust the routes in the config file config/payment.php
to disable CSRF on your gateways response routes.
'App\Http\Middleware\VerifyCsrfToken',
to
'App\Http\Middleware\VerifyCsrfMiddleware',
Usage
Edit the config/payment.php
. Set the appropriate Gateway and its parameters. Then in your code...
use Cart53\Payment\Facades\Payment;
Initiate Purchase Request and Redirect using the default gateway:-
/* All Required Parameters by your Gateway */ $parameters = [ 'tid' => '1233221223322', 'order_id' => '1232212', 'amount' => '1200.00', ]; $order = Payment::prepare($parameters); return Payment::process($order);
Initiate Purchase Request and Redirect using any of the configured gateway:-
/* All Required Parameters by your Gateway */ $parameters = [ 'tid' => '1233221223322', 'order_id' => '1232212', 'amount' => '1200.00', ]; // gateway = CCAvenue / others $order = Payment::gateway('NameOfGateway')->prepare($parameters); return Payment::process($order);
Get the Response from the Gateway (Add the Code to the Redirect Url Set in the config file.
Also add the response route to the remove_csrf_check
config item to remove CSRF check on these routes.):-
public function response(Request $request)
{
// For default Gateway
$response = Payment::response($request);
// For Otherthan Default Gateway
$response = Payment::gateway('NameOfGatewayUsedDuringRequest')->response($request);
dd($response);
}
Change log
Please see CHANGELOG for more information on what has changed recently.
Testing
$ composer test
Contributing
Please see CONTRIBUTING and CODE_OF_CONDUCT for details.
Security
If you discover any security related issues, please email prashant@cart53.com
instead of using the issue tracker.
Credits
License
The MIT License (MIT). Please see License File for more information.