public ActionResult Index() { AuthorizeSessionResponse asr = new AuthorizeSessionResponse(); var message = new AuthorizeSession() { Gateway = "PAYEEZY", ApiKey = "aRRMPmVZ1YcYg1TYPDTShbF7MTHyINy1", ApiSecret = "fcaccf88badd97b8e436035f074c5a1139dfb0528722dad7ad7c651fc5fb852", AuthToken = "fdoa-b5074351a146da5885d6648325b09e16b5074351a146da56", TransarmorToken = "NOIW", ZeroDollarAuth = true }; var pv2Repo = new P_Repository(); var payeezyResponse = pv2Repo.AuthorizeSession(message); if (payeezyResponse != null) { asr = payeezyResponse; } return(View(asr)); }
public ActionResult Index() { AuthorizeSessionResponse data = new AuthorizeSessionResponse(); //var message = new AuthorizeSession() //{ // Gateway = "PAYEEZY", // ApiKey = "G26mPwHd0zkPLdRjZXwHzbvbZGARSYOv", // ApiSecret = "69d81c12e3a5b5b6f08f06bf14478bf5fc124018e24833138e3d751217dff62c", // AuthToken = "fdoa-58b315cee9dfdf98ab62efa24904a8a2aef8e02f5e0e259e", // TransarmorToken = "NOIW", // ZeroDollarAuth = false //}; var message = new AuthorizeSession() { Gateway = "PAYEEZY", ApiKey = "aRRMPmVZ1YcYg1TYPDTShbF7MTHyINy1", ApiSecret = "fcaccf88badd97b8e436035f074c5a1139dfb0528722dad7ad7c651fc5fb852", AuthToken = "fdoa-b5074351a146da5885d6648325b09e16b5074351a146da56", TransarmorToken = "NOIW", ZeroDollarAuth = true }; var payeezyV2Repo = new PayeezyRepositoryV2(); var payeezyResponse = payeezyV2Repo.AuthorizeSession(message); if (payeezyResponse != null) { data = payeezyResponse; } return(View(data)); }
private AuthorizeSessionResponse CallPayeezyApi(dynamic request, string url) { AuthorizeSessionResponse model = new AuthorizeSessionResponse(); string jsonString = JsonConvert.SerializeObject(request); Random random = new Random(); string nonce = (random.Next(0, 1000000)).ToString(); DateTime date = DateTime.UtcNow; DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0); TimeSpan span = date - epoch; string time = ((long)span.TotalMilliseconds).ToString(); string hashData = this.apiKey + nonce + time + jsonString; string message = this.CalculateHMAC(hashData, this.paymentJsSecret); HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(this.payeezyUrl + url); webRequest.Method = "POST"; webRequest.Accept = "*/*"; webRequest.ContentLength = jsonString.Length; webRequest.ContentType = "application/json"; webRequest.Headers.Add("api-key", this.apiKey); webRequest.Headers.Add("Nonce", nonce); webRequest.Headers.Add("Timestamp", time); webRequest.Headers.Add("Message-Signature", message); var writer = new StreamWriter(webRequest.GetRequestStream()); writer.Write(jsonString); writer.Close(); try { using (HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse()) { using (StreamReader responseStream = new StreamReader(webResponse.GetResponseStream())) { var stringData = responseStream.ReadToEnd(); for (int i = 0; i < webResponse.Headers.Count; ++i) { if (webResponse.Headers.Keys[i] == "Client-Token") { model.ClientToken = webResponse.Headers[i]; } } model.PublicKeyBase64 = JsonConvert.DeserializeObject <payeezyAuthorize>(stringData).publicKeyBase64; } } } catch (WebException ex) { if (ex.Response != null) { using (HttpWebResponse errorResponse = (HttpWebResponse)ex.Response) { using (StreamReader reader = new StreamReader(errorResponse.GetResponseStream())) { string remoteEx = reader.ReadToEnd(); model.Errors = remoteEx; } } } } return(model); }