public async void InitiateCardChargeRequest() { //Arrange var req = new CardChargeRequest { User = new User { FirstName = "John", LastName = "Doe", Email = "*****@*****.**", IP = "192.168.33.10", FingerPrint = "cccvxbxbxb" }, Card = new Card { CardNumber = "5438898014560229", ExpiryMonth = "09", ExpiryYear = "19", CCV = "789", Pin = "3310" }, Amount = "10000", Country = "NG", Currency = "NGN" }; //Act var res = await _gladepayService.PutAsync <CardChargeRequest>(req); //Assert Assert.True(res.StatusCode == HttpStatusCode.Accepted); }
public async void ValidateChargeRequest() { //Arrange var res = new Response(); var req1 = new CardChargeRequest { User = new User { FirstName = "John", LastName = "Doe", Email = "*****@*****.**", IP = "192.168.33.10", FingerPrint = "cccvxbxbxb" }, Card = new Card { CardNumber = "5438898014560229", ExpiryMonth = "09", ExpiryYear = "19", CCV = "789", Pin = "3310" }, Amount = "10000", Country = "NG", Currency = "NGN" }; //Act res = await _gladepayService.PutAsync <CardChargeRequest>(req1); Debug.WriteLine(res.Data); var req = new CardChargeValidationRequest { OTP = "123456", TxnRef = res.Data["txnRef"].ToString() }; res = await _gladepayService.PutAsync <CardChargeValidationRequest>(req); //Assert Assert.True(res.StatusCode == HttpStatusCode.OK); Debug.WriteLine(res.Data); }
public async Task <CCResponse> ChargeCard(CCRequest request) { var response = new CCResponse(); try { PayStackApi _payApi = new PayStackApi(_configuration[Constants.PayStackKey]); decimal price = Convert.ToDecimal(request.Amount); decimal newAmount = (Convert.ToInt32(price) + 100) * 100; var req = new CardChargeRequest { Amount = newAmount.ToString(), Card = new Card { Number = request.CardNumber, Cvv = request.cardCvv, ExpiryMonth = request.cardExpiryMonth, ExpiryYear = request.cardExpiryYear }, Email = request.Email, Reference = DateTime.Now.Ticks.ToString().Substring(0, 10), Pin = request.pin }; var payAesponse = _payApi.Charge.ChargeCard(req); if (!payAesponse.Status) { throw new Exception(payAesponse?.Data?.Message); } var JsonObj = JsonConvert.SerializeObject(payAesponse); var resObj = JsonConvert.DeserializeObject <CCResponse>(JsonObj);// Variable to test if Serialized Object Holds Contents resObj.data.RealAmount = newAmount; response = resObj; } catch (Exception ec) { throw ec; } return(await Task.FromResult(response)); }