public override async Task<VerifyPaymentResponse> VerifyPayment(VerifyPaymentRequest verifyRequest) { double rs = -1000; try { PaymentGateway.ServiceReference.SamanGateway.Payment.PaymentIFBindingSoapClient client = new PaymentGateway.ServiceReference.SamanGateway.Payment.PaymentIFBindingSoapClient( ServiceReference.SamanGateway.Payment.PaymentIFBindingSoapClient.EndpointConfiguration .PaymentIFBindingSoap12); rs = await client.verifyTransactionAsync(verifyRequest.ReferenceNumber, Configuration.TerminalId); if (rs < 1) throw new Exception("Saman Gateway Error : Error Code = " + rs.ToString()); return new VerifyPaymentResponse { ReferenceNumber = verifyRequest.ReferenceNumber, SaleReferenceId = verifyRequest.ReferenceNumber, PaymentAmount = rs > 0 ? Convert.ToInt64(rs) : 0, IsVerified = rs > 0, OriginalStatus = rs.ToString() }; } catch (Exception ex) { throw new Exception("Saman gateway Error " + rs.ToString() + " /r/n" + ex.Message); } }
public abstract Task <VerifyPaymentResponse> VerifyPayment(VerifyPaymentRequest verifyRequest);