-
Notifications
You must be signed in to change notification settings - Fork 135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
مشکل در وریفای کردن پرداخت های درگاه ایرانکیش #126
Comments
سلام. لطفا ورژن پکیجی که استفاده میکنید به همراه اون قسمت از کنترلر خودتون که به مشکل خوردین رو قرار بدین تا بررسی کنم |
درگاه ها هنگام بازگشت معلوم نیست که متد رو پست میکنن یا گت! این قضیه به بانک ربط داره و هر بانکی یه مدل متفاوت داره باهاش رفتار میکنه. شما متد بازگشتی رو طوری تنظیم کنید که هم با گت و هم با پست به مشکلی نخوره
|
با یکی از دو روش زیر میتونی مدیریت کنی |
دوست عزیز متد وریفای در درگاه ایرانکیش به صورت زیر هست public function verify() : ReceiptInterface
{
$data = array(
'merchantId' => $this->settings->merchantId,
'sha1Key' => $this->settings->sha1Key,
'token' => $this->invoice->getTransactionId(),
'amount' => $this->invoice->getAmount() * 10, // convert to rial
'referenceNumber' => Request::get('referenceId'),
);
$soap = new \SoapClient($this->settings->apiVerificationUrl);
$response = $soap->KicccPaymentsVerification($data);
$status = (int) ($response->KicccPaymentsVerificationResult);
if ($status != $data['amount']) {
$this->notVerified($status);
}
return $this->createReceipt($data['referenceNumber']);
} تمامی درگاه ها تست شده هستن و توی تعداد زیادی پروژه استفاده شدن و نباید مشکلی داشته باشن به هر حال درصورتی که مشکلی رو پیدا کردین و حلش کردین ممنون میشم پکیج رو فورک کنید و درخواست مرج بدید تا درون پکیج هم حل بشه. ممنونم از شما |
بله باید برای وریفای هم بزارید. در غیر اینصورت با درایوری که توی کانفیگ هست وریفای میکنه |
مرسی ممنون |
public function verify() : ReceiptInterface
{
$data = array(
'merchantId' => $this->settings->merchantId,
'sha1Key' => $this->settings->sha1Key,
'token' => $this->invoice->getTransactionId(),
'amount' => $this->invoice->getAmount() * 10, // convert to rial
- 'referenceNumber' => Request::get('referenceId'), <--- invalid line
+ 'referenceNumber' => Request::post('referenceId'), <--- correct line
);
$soap = new \SoapClient($this->settings->apiVerificationUrl);
$response = $soap->KicccPaymentsVerification($data);
$status = (int) ($response->KicccPaymentsVerificationResult);
if ($status != $data['amount']) {
$this->notVerified($status);
}
return $this->createReceipt($data['referenceNumber']);
} سلام شما توی وریفای درگاه ایرانکیش کال بک این درگاه رو گت در نظر گرفتی در صورتی که توی اکیومنتای ایران کیش که چندینننن ساله تکون نخورده گفته کالبکشون پست میشه. بعد چطور شما میگی این درگاه ها تست شده من نمیدونم؟ |
پ.ن : سوال اصلاح شد
توی فایل کانفیگ درایور دیفالت روی زرین پال ست بود و همه برگشت هارو از متد وریفای زرین پال میخوند
return shetabitPayment::via('irankish')
->callbackUrl(route('payments.callback'))
->config('description',"سفارش شماره $request->order_id")
->purchase($invoice, function($driver, $transactionId)use($payment) {
$payment->update([
'resnumber' => $transactionId
]);
})->pay()->render();
من از via برای انتخاب ایرانکیش موقع پرداخت استفاده کردم
به بانک میرفت اما متد وریفایش با زرین پال میومد کلا مشکل همین بود .
این via رو باید برای وریفای هم بزارم
لطفا توی مستندات پکیج این موردو اضاف کنیم .
ی کامیت هم دادم برای تغییر متد get به post چون ایرانکیش کلا با post
The text was updated successfully, but these errors were encountered: