سلام وقت بخیر
یه سوالی داشتم با استفاده از پکیج شتابیت ما درگاه به پرداخت وصل شدیم موقع همه چی اوکی نوشته شده موقع برگشت از درگاه کلا خطا میده تراکنش توسط کاربر لغو شد!! در صورتی که پرداخت صورت گرفته و اوکی بوده
@ali.bayat
مهندس ممنون میشم راهنمای بفرمایید
سلام
من یسوال داشتم درباره همین پکیج
امکانش هست پرداخت هم زمان هم داشته باشیم؟
مثلا ۳تا دکمه باشه کاربر بگه با کدوم درگاه میخواد پرداخت کنه
@m.mirzavand1992
کد مربوط به درگاه و کال بک رو بزارید چون من بارها از این پکیج استفاده کردم و همچین مشکلی نبود
بنده هم در پروژه های مختلفی تست کردم اما الان این مشکل داره پیش میاد در مرحله verify مشکل به وجود میاد نمیدونم دلیلش چیه
این ارسال به درگاه
return Payment::via('behpardakht')->callbackUrl(url('/callback/from/bank/?price='.$amount.'&order='.$post->id.'&wallet=0&port=MELLAT&api_token='.$user->api_token.'&'))->purchase(
(new Invoice)->amount($amount),
function($driver, $transactionId) use ($amount, $post) {
$post->transactionId = $transactionId;
$post->save();
}
)->pay()->render();
اینم کال بک
try {
$transactionId = $order->transactionId;
$amount = intval($req->price);
$receipt = Payment::amount($amount)->transactionId($transactionId)->verify();
$refId = $receipt->getReferenceId();
dd($receipt);
$fin = new \App\Models\Fin();
$fin->user_id = $order->user_id;
$fin->ordercode = $order->code;
$fin->order_id = $order->id;
$fin->type = 2;
$fin->paymethod = 'gateway';
if($req->port){
$fin->port = $req->port;
}
$fin->bedeh = 0;
$fin->bestan= $amount;
$fin->refId = $refId;
$fin->save();
$order = \App\Models\Order::find($req->order);
$order->status = 2;
$order->paymentstatus = 2;
foreach($order->items as $item){
$product = \App\Models\Product::find($item->product_id);
if($product->variable == 1){
$opt = $product->fprelations()->where('feature_id',$item->feature_id)->where('option_id',$item->option_id)->first();
if($opt->ava > $item->num){
$opt->ava = $opt->ava - $item->num;
}elseif($opt->ava == $item->num){
$opt->ava = $opt->ava - $item->num;
$opt->avacheck = 0;
}
$opt->save();
}else{
if($product->ava > $item->num){
$product->ava = $product->ava - $item->num;
}elseif($product->ava == $item->num){
$product->ava = $product->ava - $item->num;
$product->avacheck = 0;
}
}
$product->save();
}
$order->isDec = 1;
$order->save();
return redirect('/profile/orders')->with(['success' => 'سفارش شما با موفقیت پرداخت شد' ])->withCookie(\Cookie::forget('cart'));
} catch (InvalidPaymentException $exception) {
$data = $exception->getMessage();
return redirect('/profile/orders')->with(['warning' => $data ])->withCookie(\Cookie::forget('cart'));
}
پرداخت شما وریفای نمیشه؟
پیشنهادم اینه که موقتا try-catch رو بردارین تا ببینید جایی ارور دارین یا نه چون الان احتمال زیاد توی try ارور دارین و بخاطر همین میره توی catch
با اینکار احتمال زیاد ارورتون رو پیدا میکنید
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟