You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel项目Razorpay支付网关移动端集成异常问题求助

Laravel集成Razorpay支付网关移动端异常问题解决

问题描述

已在Laravel项目中集成Razorpay支付网关,桌面端运行正常,但移动端存在以下异常:

  • 移动端支付时,输入信用卡信息后不会像桌面端那样弹出窗口,而是被重定向到https://api.razorpay.com/v1/payments/create/checkout页面完成OTP验证支付;
  • 支付完成返回站点后,会话被清除,用户需要重新登录;
  • 支付后的重定向原本为POST请求,重新登录后变为GET请求。

支付处理的核心代码如下:

public function pay(Request $request)
{
    //Input items of form
    $input = $request->all();
    //get API Configuration 
    $api = new Api(ENV('RZP_KEY_ID'), ENV('RZP_KEY_SECRET'));
    //Fetch payment information by razorpay_payment_id
    $payment = $api->payment->fetch($input['razorpay_payment_id']);

    if(count($input)  && !empty($input['razorpay_payment_id'])) {
        try {
            $paymentDetails = $api->payment->fetch($input['razorpay_payment_id'])->capture(array('amount'=>$payment['amount'])); 

        } catch (\Exception $e) {
            //delete params from session                
            if(Session::has('amount')){
                Session::pull('amount');
                Session::pull('converted_amount');
                Session::pull('currency');
                Session::pull('charge');
            }
            return redirect(route('user.deposit.index'))->with('fail', 'Your Deposit request failed');
        }
        
        //record payment
         //some codes for validating and recording payment removed
        
    }         
}

解决方法

将处理支付回调的对应路由从web.php移动到api.php即可解决上述所有问题。


内容的提问来源于stack exchange,提问作者DingRealT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 11:15:33