The Laravel 10+ Package for Indian Payment Gateways. Currently supported gateways: CCAvenue, PayUMoney, EBS, CitrusPay, InstaMojo, ZapakPay, Paytm, Mocker.

v1.0.3 2023-10-25 04:09 UTC

This package is auto-updated.

Last update: 2024-10-25 06:51:53 UTC


README

The Laravel 10+ package for Indian Payment Gateways. Currently supported gateway: CCAvenue, PayUMoney, EBS, CitrusPay ,ZapakPay (Mobikwik), Paytm, Mocker

Installation

Step 1: Install package using composer
composer require rushabhmishrarmz/indipay

Step 2: Publish the config & Middleware by running in your terminal

php artisan vendor:publish --provider="Indipay\Indipay\IndipayServiceProvider" 

Step 3: Disable CSRF verification upon payment response routes.

Just put routes in $expect array on VerifyCsrfToken middleware.

Usage

Edit the config/indipay.php with your related config values. You can set the default gateway to use by setting the gateway key in config file. Then in your code... <br>

use Indipay\Indipay\Facades\Indipay;

Initiate your payment request and redirect using the default gateway:-

/* All Required Parameters by your Gateway will differ from gateway to gateway refer the gate manual */
    
$parameters = [
'transaction_no' => '784521221245',
'amount' => '1500.00',
'name' => 'Jon Doe',
'email' => 'jon@doe.com'
];
    
$order = Indipay::prepare($parameters);
return Indipay::process($order);

Please check for the required parameters in your gateway manual. There is a basic validation in this package to check for it.

You may also use multiple gateways:-

// gateway = CCAvenue / PayUMoney / EBS / Citrus / InstaMojo / ZapakPay / Paytm / Mocker

$order = Indipay::gateway('CCAvenue')->prepare($parameters);
return Indipay::process($order);

Get the response from the Gateway specified redirect(success/cancel) url in config file:-

public function response(Request $request)
{
    // For default Gateway
    $response = Indipay::response($request);
  
    // For Otherthan Default Gateway
    $response = Indipay::gateway('NameOfGatewayUsedDuringRequest')->response($request);

    dd($response);
}