public byte[] ReversalAdviceResponse(ReversalRequestModel msg) { if (string.IsNullOrEmpty(msg.Mti) || msg.Mti != "0420") { throw new ArgumentException("Mti is not valid for ReversalAdviceResponse(0420)"); } var model = new AS2805Model("0430"); model.SetField(3, msg.ProcessingCode); model.SetField(4, msg.AmountTran); model.SetField(7, msg.TranDate); model.SetField(11, msg.Stan); model.SetField(15, msg.DateSettlement); model.SetField(28, msg.AmtTranFee); model.SetField(32, msg.AcqInstIdCode); model.SetField(33, 61001001); // FwdInstIdCode //model.SetField(39, "00"); // RespCode model.SetField(39, Response.GetRandomResponseCode(msg.TerminalId)); // RespCode model.SetField(41, msg.TerminalId); model.SetField(42, msg.CardAcptIdCode); model.SetField(53, msg.SecControlInfo); model.SetField(57, msg.AmountCash); // AmountCash model.SetField(64, msg.Mac64); return(model.ToBytes()); }
public ReversalModel RequestAdviceReversal(ReversalHostNodeRequestDto dto, bool isRepeat) { IDataService svcData = new DataService(dto.P41TerminalId, dto.TranSeqNo, dto.AuthorizationNum); string cardAcceptorId = svcData.RetrieveCardAcceptorId(); string nationalData = svcData.RetrieveAddtlDataNat(); int securityBlock = svcData.RetrieveSecurityBlock(); int acqInstId = svcData.RetrieveAcqInstIdCode(); // 32 int fwdInstIdCode = svcData.RetrieveFwdInstIdCode(); // 33 //string cardAcceptorId = "437586000 "; // p42_card_acceptor_id //string nationalData = @"TCC01\EFC00000000\CCI0\FBKV\"; // p47_additional_response_national //int securityBlock = 2; // 53 //int acqInstId = 560258; // 32 //int fwdInstIdCode = 61100016; // 33 string mac128 = "7001DC4E00000000"; // 90 string mti = isRepeat != true ? "0420" : "0421"; ReversalRequestModel model = new ReversalRequestModel ( mti: mti, processingCode: dto.P3ProcessingCode, transactionAmount: dto.P4AmountTran, transactionDate: dto.P7TransmitDt, stan: dto.AuthorizationNum, timeLocal: dto.P12TimeLocalTran, dateLocation: dto.P13DateLocalTran, dateSettlement: dto.P15DateSettlement, posConditionCode: dto.P25PosConditionCode, transactionFee: dto.P28AmtTranFee, acqInstIdCode: acqInstId, fwdInstIdCode: fwdInstIdCode, track2: dto.P35Track2, retRefNo: dto.TranSeqNo, terminalId: dto.P41TerminalId, cardAcptIdCode: cardAcceptorId, nameLocation: dto.P43NameLocation, addtlDataNat: nationalData, secControlInfo: securityBlock, amountCash: dto.P57AmountCash, mac128: mac128, miscellaneousX: dto.MiscellaneousX ); return(model); }
public BankRawMessage GenerateReversalResponse() { ReversalRequestModel model = _baseModel as ReversalRequestModel; return(new BankRawMessage(_responseBuilder.ReversalAdviceResponse(model))); }
public BankRawMessage GenerateReversalResponse(ReversalRequestModel model) { BankRawMessage result = new BankRawMessage(_responseBuilder.ReversalAdviceResponse(model)); return(result); }