راکت

مشکل در تایید پرداخت با شتابی

بدون پاسخ

دوستان من از پکیج شتابیت استفاده میکنم
مشکل اینجاست که بعضی مواقع پول رو از پرداخت کننده کم میکنه ولی روی سایت وضعیت پرداخت تایید نمیشه
فانکشن کال بک رو میزارم براتون
لطفا کمک کنین

'''
public function callBack(Request $request){

    $transaction_id= (int)$request->Authority;

    try {
        $payment = \App\Models\Payment::where('transaction_id',$transaction_id)->latest()->first();
        $cart = Cart::where('id',$payment->cart_id)->first();

        $receipt = Payment::via($payment->port)->amount($payment->price)->transactionId($transaction_id)->verify();

        if ($receipt && $receipt->getReferenceId()) {

            $ReferenceId=$receipt->getReferenceId();
            $Date=$receipt->getDate();

            $cart->orderLogs()->create([
                'status' => 0,
                'text' => 'تراکنش تایید شد.کد رهگیری: :'.$ReferenceId
            ]);

            $payment->update([
                'ref_id' => $ReferenceId,
                'status' => 'SUCCEED',
                'result_message' => 'SUCCEED',
                'payment_date' => $Date,
            ]);

            $cart->update([
                'tracking_code' => $ReferenceId,
                'pay_status' => 1,
                'paid_price' => $payment->price,
                'transactions_id' => $payment->id

            ]);

            $cart->cartAddress()->create([
                'province_id'=> $cart->address->province_id,
                'city_id'=> $cart->address->city_id,
                'name'=> $cart->address->name,
                'address'=> $cart->address->address,
                'postal_code'=> $cart->address->postal_code,
                'location'=> $cart->address->location,
                'phone'=> $cart->address->phone,
            ]);

        }else{

            $cart->orderLogs()->create([
                'status' => 0,
                'text' => 'مشکل در تایید تراکنش در بانک : شماره تراکنش :'.$transaction_id
            ]);

            return "مشکل در تایید تراکنش در بانک.شماره تراکنش:".$transaction_id;

        }

        $date = Jalalian::forge($receipt->getDate())->format('Y/m/d H:i');

        $cart->orderLogs()->create([
            'status' => 0,
            'text' => 'پرداخت سبد خرید|زمان :'.$date
        ]);

        ultraFastSend([
            'order_id' => "$cart->id",
        ], config('sms.new_order'), $cart->user->mobile);

        foreach (config('website.manager_mobile') as $mobile){
            ultraFastSend([
                'user_name' => $cart->user->name,
                'date' => "$date",
            ], config('sms.manager_order_alert'), $mobile);
        }

        session()->flash('pay-success');
        return redirect(route('orders.show',$cart));

    } catch (InvalidPaymentException $exception) {
        /**
        when payment is not verified, it will throw an exception.
        We can catch the exception to handle invalid payments.
        getMessage method, returns a suitable message that can be used in user interface.
         **/

        $transID =null;
        $message = $exception->getMessage();
        return view('cart.payment_failed',compact('message','transID'));

    }
}

'''

ثبت پرسش جدید

پاسخ‌ها

0

هنوز پاسخی ثبت نشده

اولین نفری باشید که به این پرسش کمک می‌کند و مسیر حل مشکل را باز می‌کند.

اولین پاسخ را بنویسید

شاید پاسخ شما همین‌جا باشد

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام