public IActionResult CaptureAadharPay(AEPSInput input) { try { var sessionUtility = new SessionUtility(); var pidData = new PidData(); XmlSerializer serializer = new XmlSerializer(typeof(PidData)); using (TextReader reader = new StringReader(input.PidData)) { pidData = (PidData)serializer.Deserialize(reader); } var captureReq = new IciciCaptureInternalResponse { ci = pidData.Skey.Ci, dc = pidData.DeviceInfo.Dc, dpID = pidData.DeviceInfo.DpId, errCode = pidData.Resp.ErrCode, errInfo = pidData.Resp.ErrInfo, fCount = pidData.Resp.FCount, fType = pidData.Resp.FType, hmac = pidData.Hmac, iCount = "0", iType = "0", mc = pidData.DeviceInfo.Mc, mi = pidData.DeviceInfo.Mi, nmPoints = pidData.Resp.NmPoints, pCount = "0", Piddata = pidData.Data.Text, PidDatatype = pidData.Data.Type, pType = "0", qScore = pidData.Resp.QScore, rdsID = pidData.DeviceInfo.RdsId, rdsVer = pidData.DeviceInfo.RdsVer, sessionKey = pidData.Skey.Text, }; var allReqInput = new DetailsAepReq { accessModeType = "", adhaarNumber = input.AadharNumber, agentId = Convert.ToString(sessionUtility.GetStringSession("AEPSAgentID")), customerId = sessionUtility.GetLoginSession().customerId, customerNumber = input.CustomerNumber, deviceSerialNumber = pidData.DeviceInfo.Mi, deviceTransactionId = "", iciciAepsCaptureRes = captureReq, indicatorforUID = 0, ipAddress = "176.9.24.146", latitude = "26.125321647834", longitude = "78.09278884562441", merchantTransactionId = GetOrderID(), nbin = input.BankName, paymentType = "B", requestRemarks = "Aadhar Pay", serviceChannelId = 2, transactionAmount = Convert.ToInt32(input.Amount), transactionType = "MS", virtualId = string.Empty }; string errorMessage = string.Empty; var response = new CallService().PostResponse <AEPSResponse>("puticiciAepsMiniStatement", allReqInput, ref errorMessage); if (string.IsNullOrEmpty(errorMessage)) { var response1 = new resAEPSTransaction(); response1.AadhaarNumber = input.AadharNumber; response1.Amount = Convert.ToDecimal(input.Amount); response1.ClientTransactionId = allReqInput.merchantTransactionId; response1.AEPSModeType = "Aadhar Pay"; response1.MobileNumber = input.CustomerNumber; return(PartialView("AckView", response1)); } else { var response1 = new resAEPSTransaction(); response1.AadhaarNumber = input.AadharNumber; response1.Amount = Convert.ToDecimal(input.Amount); response1.ClientTransactionId = allReqInput.merchantTransactionId; response1.AEPSModeType = "Mini Statement Web"; response1.MobileNumber = input.CustomerNumber; return(PartialView("AckView", response1)); } } catch (Exception) { } return(PartialView("AckView")); }
public IActionResult CaptureBalanceEnquiry(AEPSInput input) { try { input.AadharNumber = input.AadharNumber.Replace("-", "").ToString(); var sessionUtility = new SessionUtility(); var pidData = new PidData(); XmlSerializer serializer = new XmlSerializer(typeof(PidData)); using (TextReader reader = new StringReader(input.PidData)) { pidData = (PidData)serializer.Deserialize(reader); } if (pidData.Resp.ErrCode != "0") { return(Json(new { success = false, errorMessage = pidData.Resp.ErrInfo })); } var captureReq = new IciciCaptureInternalResponse { ci = pidData.Skey.Ci, dc = pidData.DeviceInfo.Dc, dpID = pidData.DeviceInfo.DpId, errCode = pidData.Resp.ErrCode, errInfo = pidData.Resp.ErrInfo, fCount = pidData.Resp.FCount, fType = pidData.Resp.FType, hmac = pidData.Hmac, iCount = "0", iType = "0", mc = pidData.DeviceInfo.Mc, mi = pidData.DeviceInfo.Mi, nmPoints = pidData.Resp.NmPoints, pCount = "0", Piddata = pidData.Data.Text, PidDatatype = pidData.Data.Type, pType = "0", qScore = pidData.Resp.QScore, rdsID = pidData.DeviceInfo.RdsId, rdsVer = pidData.DeviceInfo.RdsVer, sessionKey = pidData.Skey.Text, }; var allReqInput = new DetailsAepReq { accessModeType = "", adhaarNumber = input.AadharNumber, agentId = Convert.ToString(sessionUtility.GetStringSession("AEPSAgentID")), customerId = sessionUtility.GetLoginSession().customerId, customerNumber = input.CustomerNumber, deviceSerialNumber = pidData.DeviceInfo.Mi, deviceTransactionId = "", iciciAepsCaptureRes = captureReq, indicatorforUID = 0, ipAddress = "176.9.24.146", latitude = "26.125321647834", longitude = "78.09278884562441", merchantTransactionId = GetOrderID(), nbin = input.BankName, paymentType = "B", requestRemarks = "Balance Enquiry Web", serviceChannelId = 2, transactionAmount = 0, transactionType = "BE", virtualId = string.Empty }; var sting = JsonConvert.SerializeObject(allReqInput); string errorMessage = string.Empty; var response = new CallService().PostResponse <AEPSResponse>("puticiciAepsBalanceEnq", allReqInput, ref errorMessage); if (string.IsNullOrEmpty(errorMessage)) { var response1 = new resAEPSTransaction(); response1.AadhaarNumber = "XXXXXXXXX" + input.AadharNumber.Substring(input.AadharNumber.ToString().Length - 4, 4);; response1.Amount = Convert.ToDecimal(input.Amount); response1.ClientTransactionId = allReqInput.merchantTransactionId; response1.TransactionReference = response.data.fpTransactionId; response1.AEPSModeType = "Balance Enquiry"; response1.MobileNumber = input.CustomerNumber; response1.BalanceAmount = Convert.ToDecimal(response.data.balanceAmount); response1.Status = 1; response1.BankReferenceNumber = input.BankName; response1.BankResponseMessage = response.data.transactionStatus; response1.ResponseMessage = "Successfully retrived"; return(PartialView("AckView", response1)); } else { var response1 = new resAEPSTransaction(); response1.AadhaarNumber = input.AadharNumber; response1.Amount = Convert.ToDecimal(input.Amount); response1.ClientTransactionId = allReqInput.merchantTransactionId; response1.AEPSModeType = "Balance Enquiry"; response1.MobileNumber = input.CustomerNumber; response1.BalanceAmount = 0; response1.Status = 0; response1.ResponseMessage = errorMessage; return(PartialView("AckView", response1)); } } catch (Exception ex) { Console.WriteLine(ex.Message); } return(PartialView("AckView")); }