public ActionResult Buy() { var paymentRequest = new CheckoutPageRequest(); paymentRequest.AdultContent = false; paymentRequest.Amount = "5.50"; paymentRequest.PaymentInfo = "Test"; paymentRequest.Title = "My new Phone"; paymentRequest.Description = "Buy your favorite Sony Phone!"; paymentRequest.AdultContent = false; paymentRequest.Roaming = false; paymentRequest.MerchantId = MerchantId; paymentRequest.CancelUrl = BaseReturnUrl + "?uid=43c2&sid=dc0d&purchase=cancel"; paymentRequest.ErrorUrl = BaseReturnUrl + "?uid=43c2&sid=dc0d&purchase=error"; paymentRequest.SuccessUrl = BaseReturnUrl + "?uid=43c2&sid=dc0d&purchase=success"; paymentRequest.CpServiceId = "xys-323-gh-ff"; paymentRequest.CpSubscriptionId = "23hkb379oh"; paymentRequest.CpUserId = "vghv5678"; paymentRequest.ImageUrl = "http://lorempixel.com/300/200"; paymentRequest.ContentType = "App"; paymentRequest.StoreSource = "Easypay-City"; var easypayConfig = GetEasypayConfig(); easypayConfig.Basepath = "/charging-engine-checkout"; var url = EasypayRequest.GetCheckoutPageUrl(easypayConfig, paymentRequest); return(Redirect(url.ToString())); }
public WebPage() { InitializeComponent(); Trace.WriteLine("Webpage loaded"); var paymentRequest = new CheckoutPageRequest(); paymentRequest.AdultContent = false; paymentRequest.Amount = "5.50"; paymentRequest.PaymentInfo = "Test"; paymentRequest.Title = "My new Phone"; paymentRequest.Description = "Buy your favorite Sony Phone!"; paymentRequest.AdultContent = false; paymentRequest.Roaming = false; paymentRequest.MerchantId = MerchantId; paymentRequest.CancelUrl = BaseReturnUrl + "?uid=43c2&sid=dc0d&purchase=cancel"; paymentRequest.ErrorUrl = BaseReturnUrl + "?uid=43c2&sid=dc0d&purchase=error"; paymentRequest.SuccessUrl = BaseReturnUrl + "?uid=43c2&sid=dc0d&purchase=success"; paymentRequest.CpServiceId = "xys-323-gh-ff"; paymentRequest.CpSubscriptionId = "23hkb379oh"; paymentRequest.CpUserId = "vghv5678"; paymentRequest.ImageUrl = "http://lorempixel.com/300/200"; paymentRequest.ContentType = "App"; paymentRequest.StoreSource = "Easypay-City"; var easypayConfig = GetEasypayConfig(); easypayConfig.Basepath = "/charging-engine-checkout"; var url = EasypayRequest.GetCheckoutPageUrl(easypayConfig, paymentRequest); checkoutView.Navigate(url); checkoutView.Navigated += CheckoutView_Navigated; }
public void TestGetCheckoutPageUrl() { var paymentRequest = new CheckoutPageRequest { AdultContent = false, Amount = "5.50", PaymentInfo = "Test" }; var url = EasypayRequest.GetCheckoutPageUrl(_config, paymentRequest); Assert.AreEqual(url.ToString(), "http://easypay-test.swisscom.ch/test-service/authorize.jsf?signature=TCVlgDU0eX%2Bld3bNOQUrvnxLeEk%3D&checkoutRequestItem=eyJ0aXRsZSI6bnVsbCwiZGVzY3JpcHRpb24iOm51bGwsImR1cmF0aW9uIjowLCJkdXJhdGlvblVuaXQiOm51bGwsInByb21vdGlvbkFtb3VudCI6bnVsbCwibWVyY2hhbnRJZCI6bnVsbCwiY2FuY2VsVXJsIjpudWxsLCJlcnJvclVybCI6bnVsbCwic3VjY2Vzc1VybCI6bnVsbCwiY3BTZXJ2aWNlSWQiOm51bGwsImNwU3Vic2NyaXB0aW9uSWQiOm51bGwsImNwVXNlcklkIjpudWxsLCJpbWFnZVVybCI6bnVsbCwiYW1vdW50IjoiNS41MCIsInBheW1lbnRJbmZvIjoiVGVzdCIsInJvYW1pbmciOmZhbHNlLCJhZHVsdENvbnRlbnQiOmZhbHNlLCJ1c2VyQWdlbnRPcmlnaW4iOm51bGwsInVzZXJTb3VyY2VJUCI6bnVsbCwiY29udGVudFR5cGUiOm51bGwsInN0b3JlU291cmNlIjpudWxsLCJvcGVyYXRpb24iOm51bGwsIm9yZGVySWQiOm51bGx9"); }
// GET: Easypay public async Task <ActionResult> Status(string paymentId, string reqId) { var easypayConfig = GetEasypayConfig(); easypayConfig.Basepath = "/ce-rest-service"; var message = await EasypayRequest.GetPaymentStatus(paymentId, easypayConfig, reqId); var msg = new Response { Title = "STATUS: " + message.Status, Message = "Msisdn: " + message.FormattedMsisdn + ", OrderID: " + message.OrderID + ", Payment Info: " + message.PaymentInfo + ", CHF " + message.Amount, PaymentId = paymentId, ReqId = reqId }; return(View("ResponsePage", msg)); }
// GET: Easypay/Callback?paymentId=xyz&purchase=success public async Task <ActionResult> Callback(string paymentId, string purchase) { var msg = new Response { Title = "Technical Problem", Message = "", PaymentId = paymentId }; if (purchase == "success") { var reqId = msg.ReqId = Guid.NewGuid().ToString(); var easypayConfig = GetEasypayConfig(); easypayConfig.Basepath = "/ce-rest-service"; try { var message = await EasypayRequest.CommitPaymentRequest(paymentId, easypayConfig, reqId); if (message.Success) { msg.Title = "Success"; } else { msg.Message = message.Messages.Select(x => string.Join(", ", x.Code, x.Field, x.RequestId)).FirstOrDefault(); } } catch (Exception ex) { msg.Message = ex.Message; } } else { msg.Title = "Purchase terminated with state: '" + purchase + "'"; } return(View("ResponsePage", msg)); }
private void CheckoutView_Navigated(object sender, NavigationEventArgs e) { if (checkoutView.Source != null && checkoutView.Source.AbsoluteUri.StartsWith(BaseReturnUrl)) { var parameters = QueryParse(checkoutView.Source.Query); var paymentId = parameters["paymentId"]; var purchase = parameters["purchase"]; if (purchase == "success") { var reqId = Guid.NewGuid().ToString(); var easypayConfig = GetEasypayConfig(); easypayConfig.Basepath = "/ce-rest-service"; EasypayRequest.CommitPaymentRequest(paymentId, easypayConfig, reqId).ContinueWith((message) => { if (message.Result.Success) { MessageBox.Show("Success"); } else { MessageBox.Show(message.Result.Messages.Select(x => string.Join(", ", x.Code, x.Field, x.RequestId)).FirstOrDefault()); } }); } else if (purchase == "cancel") { MessageBox.Show("User cancelled purchase"); } else { MessageBox.Show("Error in purchase"); } } }