Paradox
1 سال پیش توسط Paradox مطرح شد
8 پاسخ

مشکل درگاه

سلام وقت بخیر
از طریق پکیج شتابیت میخوام از درگاه پارسیان استفاده میکنم
مشکلی که دارم وقتی پرداخت موفق انجام میدم پرداخت انجام میشه ولی کاربر به صفحه 404 هدایت میشه ! و بانک هم پول اصلاحیه میزنه !
در صورتی که روت وجود داره!
همین مشکل زمانی که کاربر روی دکمه انصراف از خرید میزد وجود داشت که با یه شرط مشکل رفع شد ولی برای پرداخت موفق این مشکل همچنان هست!
با پشتیبانی درگاه هم کانکت میشم میگن مشکل از کدنویسیه !

    public function callback(Request $request)
    {
        return $request->all();

        $status = $request->post('status',null);
        if(is_null($status) || $status < 0)
        {
            return $request->all();

            alert()->error('پرداخت شما موفق نبود');
            return redirect('/cart');
        }

            $payment = Payment::where('resnumber', $request->OrderId)->firstOrFail();

            // $payment->order->price

            $receipt = ShetabitPayment::amount(1000)->transactionId($request->OrderId)->verify();

            $payment->update([
                'status' => 1
            ]);

            $payment->order()->update([
                'status' => 'paid'
            ]);

            alert()->success('پرداخت شما موفق بود');
            return redirect('/home');
    }

خروجی جیسون
وقتی روی پرداخت میزنم ، پرداخت موفق انجام میشه ولی موقع کال بک 404 نمایش میده و بعد چند ساعت پول برگشت میخوره

// 20230802162748
// https://adressite.ir/payment/callback

{
  "Token": "245977667814170",
  "OrderId": "1646869822",
  "TerminalNo": "98778419",
  "RRN": "739245965915",
  "status": "0",
  "HashCardNumber": "845C4C8A0B03537E99B32B95CE67D1838B7E891AC1A405F08A6A52468CBF2B20",
  "Amount": "10,000",
  "SwAmount": null,
  "STraceNo": "104962",
  "DiscoutedProduct": null
}

حالا تو مستندات به شکل زیر گفته که پرداخت موفق استاتوس 2 برگشت میده
ولی برای من 0 نمایش میده
مستند

لطفا اگر کسی میدونه راهنمایی کنه
خیلی وقته درگیرشم ولی حل نشده


ثبت پرسش جدید
احسان اسدی
تخصص : برنامه نویس Back-end
@assadiehsan 1 سال پیش مطرح شد
0

درود بر شما ، مقدار same_site رو توی فایل session.php روی none قرار بدید و روت رو هم در میدلور VerifyCsrfToken در آرایه $except قرار بدید فکر می کنم مشکلتون حل بشه


Daniyal Amiri
@daniyalx77 1 سال پیش مطرح شد
0

سلام
ممکنه به خاطر اینکه resnumber وجود ندارد 404 بهت میده

        $payment = Payment::where('resnumber', $request->OrderId)->firstOrFail();

و علت برگشت پول هم وریفای نشدن تراکنش هست


Paradox
تخصص : در حال یادگیری
@paradox 1 سال پیش مطرح شد
0

@assadiehsan
اینکارو قبلا انجام دادم ولی مشکل حل نشده

@daniyalx77
مقدار resnumber توی دیتابیس ثبت میشه ولی استاتوس تغییر نمیکنه


Daniyal Amiri
@daniyalx77 1 سال پیش مطرح شد
0

@paradox
از این dd بگیر ببین توجدولت وجود دارد

 $request->OrderId

استاتوس نباید تغییر کنه چون به اون خط از کدت نمیرسی


Paradox
تخصص : در حال یادگیری
@paradox 1 سال پیش مطرح شد
0

@daniyalx77
انصراف از خرید

"2896520573" // app/Http/Controllers/frontend/PaymentController.php:55

پرداخت موفق

"816199963" // app/Http/Controllers/frontend/PaymentController.php:55

Paradox
تخصص : در حال یادگیری
@paradox 1 سال پیش مطرح شد
0

تو مستندات پارسیان تراکنش موفق 2 زده
ولی همش 0 برمیگرده مقدار استاتوس
دلیلش چیه ؟


Daniyal Amiri
@daniyalx77 1 سال پیش مطرح شد
0

@paradox
قبل از ارسال اطلاعات به بانک dd بگیر وبعد از پرداخت موفق هم dd بگیر ببین کدوم اطلاعاتش تغییر نمیکنه اون رو تو دیتابیش ذخیره کن و از اون استفاد ه کن
و تا وریفای نشه فکر کنم پرداخت ناموفق حساب میشه


پیام یزدانیان
@payam_yazdanian 1 سال پیش مطرح شد
0

درود
بخش وریفای را پیاده کنید.


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

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