rushabhmishrarmz / indipay
The Laravel 10+ Package for Indian Payment Gateways. Currently supported gateways: CCAvenue, PayUMoney, EBS, CitrusPay, InstaMojo, ZapakPay, Paytm, Mocker.
Requires
- php: >=8.2
- guzzlehttp/guzzle: ^7.2
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 composercomposer 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 onVerifyCsrfToken
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); }