projovi/proesewa

Pro Esewa - 一个简单的laravel包,用于集成Esewa支付。

dev-main 2023-07-04 10:57 UTC

This package is not auto-updated.

Last update: 2024-09-25 15:06:51 UTC


README

此Laravel包允许您使用Esewa创建支付。

用法/示例

使用Composer安装

composer require projovi/proesewa

在.env文件中添加一个变量

您可以从Esewa获取商家ID

ESEWA_MERCHANT_ID="Esewa Merchant Id"
ESEWA_ENV = "Sandbox" or "Live"

发布供应商文件

php artisan vendor:publish --provider="Projovi\ProEsewa\EsewaServiceProvider"

或者

php artisan vendor:publish

发布 "Projovi\ProEsewa\EsewaServiceProvider"

从您的控制器将用户重定向到支付页面

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))
}

支付成功后,Esewa会将用户重定向到您的成功URL,您可以将支付状态更改为成功,否则当Esewa将用户重定向到失败URL时,您可以更改状态为失败。

成功支付案例

public function esewaSuccess(Request $request)
{
    $order_id = $request->oid;
    $payment = Payment::where('order_id', $order_id)->first();
    $payment->status = "Success";
    $payment->save();

    //Other Tasks
           
}

失败支付案例

public function esewaFail(Request $request)
{
    $payment = Payment::where('order_id', $request->oid)->first();
    $payment->status = "Fail";
    $payment->save();
    //Other Tasks           
}

许可证

MIT

作者

支持

有关支持,请发送电子邮件至 developers@projovi.co