بدون دسته بندی

مشکل در پرداخت زرین پال


سلام خسته نباشید
من برای سایتم از درگاه پرداخت زرنی پال استفاده می کنم.
مشکل اصلی اینه که پرداخت کاملا با موفقیت انجام میشه ولی 100 رو بر نمیگردونه و عدد -54 رو بر میگردونه من کد رو میذارم لطفا راهنمایی بفرمایید
در ضمن .ir آخر آدرس سایت رو توی callbackurl متاسفانه نمیاره نمیدونم چرا. لطفا من رو راهنمایی کنید. ممنونم


public async Task<IActionResult> Payment(string Id)
{
var factor = _iUser.GetInvoiceRowById(Id);

var result = await _payment.Request(new DtoRequest()
{
Mobile = "09355522102",
CallbackUrl = "https://my.rattel.ir/User/OnlinePayment/" + factor.Id,
Description = "توضیحات",
Email = "iamohandex@gmail.com",
Amount = factor.Cost,
MerchantId = "466ce446-a7a8-4278-ba35-9d495b5cd9a3"
}, ZarinPal.Class.Payment.Mode.zarinpal);
return Redirect($"https://zarinpal.com/pg/StartPay/{result.Authority}");
}
public async Task<IActionResult> OnlinePayment(string Id)
{
string auth = HttpContext.Request.Query["Authority"];
var order = _iUser.GetInvoiceRowById(Id);
var verification = await _payment.Verification(new DtoVerification
{
Amount = order.Cost,
MerchantId = "466ce446-a7a8-4278-ba35-9d495b5cd9a3",
Authority = auth,
}, ZarinPal.Class.Payment.Mode.zarinpal);

if (verification.Status == 100)
{
var user = await _userManager.FindByIdAsync(order.UsersId);
user.PayDate = pc.GetYear(DateTime.Now).ToString("0000") + "/" + pc.GetMonth(DateTime.Now).ToString("00") + "/" + pc.GetDayOfMonth(DateTime.Now).ToString("00");
var result = await _userManager.UpdateAsync(user);

_iUser.UpdateInvoices(Id, verification.RefId.ToString());
ViewBag.code = verification.RefId;
return View();
}
return View();
}


برنامه نویس
جهت کسب اطلاعات بیشتر به انجمن برنامه نویس مراجعه نمایید

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

سیزده + دو =

دکمه بازگشت به بالا