تا ۶۰ درصد تخفیف شگفت انگیز نوروزی! ( آخرین فرصت )
اطلاعات بیشتر..سلام دوستان چرا درگاه زرین برای من خطای زیر رو میده
اینم کدهای مربوط بهش
public function payment() { $this->validate(request(), [ 'course_id' => 'required' ]); $course = Course::findOrFail(request('course_id')); if(auth()->user()->checkLearning($course)){ Alert::error('دقت کنید', 'شما قبلا در این دوره ثبت نام کردید ')->showConfirmButton($btnText = 'بسیار خوب', $btnColor = '#c51162'); } if ($course->price == 0 && $course->type == 'vip') { Alert::error('دقت کنید', 'شما قادر به خرید این دوره نیستید')->showConfirmButton($btnText = 'بسیار خوب', $btnColor = '#c51162'); return back(); } $price = $course->price; $Description = 'توضیحات تراکنش تستی'; // Required $Email = auth()->user()->email; // Optional $CallbackURL = 'http://localhost:8000/course/payment/check'; // Required $client = new SoapClient('https://www.zarinpal.com/pg/services/WebGate/wsdl', ['encoding' => 'UTF-8']); $result = $client->PaymentRequest( [ 'MerchantID' => $this->MerchantID, 'Amount' => $price, 'Description' => $Description, 'Email' => $Email, 'CallbackURL' => $CallbackURL, ] ); //Redirect to URL You can do it also by creating a form if ($result->Status == 100) { auth()->user()->payments()->create([ 'resnumber' => $result->Authority, 'price' => $price, 'course_id' => $course->id, ]); return redirect('https://www.zarinpal.com/pg/StartPay/' . $result->Authority); } else { echo 'ERR: ' . $result->Status; } } public function check() { $Authority = request('Authority'); $payment = Payment::whereResNumber($Authority)->firstOrFail(); $course = Course::findOrFail($payment->course_id); if (request('status') == 'ok') { $client = new SoapClient('https://www.zarinpal.com/pg/services/WebGate/wsdl', ['encoding' => 'UTF-8']); $result = $client->PaymentVerification( [ 'MerchantID' => $this->MerchantID, 'Authority' => $Authority, 'Amount' => $payment->price, ] ); if ($result->Status == 100) { if($this->AddUserForLearning($payment , $course)){ Alert::success('با تشکر','پرداخت با موفقیت انجام شد شد')->showConfirmButton($btnText = 'بسیار خوب', $btnColor = '#c51162'); return redirect($course->path()); } } else { echo 'Transaction failed. Status:' . $result->Status; } } else { echo 'Transaction canceled by user'; } } protected function AddUserForLearning($payment , $course) { $payment->update([ 'payment'=>1 ]); Learning::create([ 'user_id'=> auth()->user()->id, 'course_id'=> $course->id, ]); return true; }
سلام از پکیج زیر استفاده کنید تمام درگاه های بانکی رو ساپورت میکنه
https://github.com/shetabit/payment
داکیومنت فارسی هم داره
https://github.com/shetabit/payment/blob/master/README-FA.md
@aramnima50
سلام جناب از این لینک میتونید دانلود کنید البته من شخصی سازیش کردم بصورت زیر شده
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟