projovi / proesewa
Pro Esewa - A simple laravel package to integrate esewa payment.
dev-main
2023-07-04 10:57 UTC
This package is not auto-updated.
Last update: 2024-12-18 16:10:08 UTC
README
This Laravel package allows you to create payment using Esewa.
Usage/Examples
Install Using Composer
composer require projovi/proesewa
Add One Variable in .env
You can get marchant id from Esewa
ESEWA_MERCHANT_ID="Esewa Merchant Id"
ESEWA_ENV = "Sandbox" or "Live"
Publish Vendor File
php artisan vendor:publish --provider="Projovi\ProEsewa\EsewaServiceProvider"
or
php artisan vendor:publish
And publish "Projovi\ProEsewa\EsewaServiceProvider"
Redirect the user to payment page from your controller
use Projovi\ProEsewa\ProEsewa;
//Your Controller Method
public function esewaPayment()
{
//Store payment details in DB with pending status
$payment = new ProEsewa();
$amount = 123;
$order_id = 251264889; //Your Unique Order Id
$tax_amount = 0; //Tax Amount. If there is not tax amount then keep it 0
$service_charge = 0; // Serivce Charge. If there is no service charge then keep it 0
$delivery_charge = 0; // Delivery Charge. If there is no delivery charge then keep it 0.
$su = route('success.url);
$fu = route('fail.url);
return redirect($payment->esewaCheckout($amount,$tax_amount,$service_charge,$delivery_charge,$order_id,$su,$fu))
}
After Successfull Payment esewa will redirect the user to your success url and you can change the payment status to Success else you can change the status to Fail when esewa redirect user to fail url.
Success Payment Case
public function esewaSuccess(Request $request)
{
$order_id = $request->oid;
$payment = Payment::where('order_id', $order_id)->first();
$payment->status = "Success";
$payment->save();
//Other Tasks
}
Fail Payment Case
public function esewaFail(Request $request)
{
$payment = Payment::where('order_id', $request->oid)->first();
$payment->status = "Fail";
$payment->save();
//Other Tasks
}
License
Author
Support
For support, email developers@projovi.co.