public SkrillAuth Authorize(CartModel model) { var response = skrillApi.Checkout(model); if (!response.Success) throw new PaymentException(response.Error.Message); return response; }
public PayPalAuth Authorize(CartModel model) { payPalApi._ppCurrency = model.Currency; var response = payPalApi.Checkout(model); if (!response.Success) throw new PaymentException(response.Error.Message); return response; }
public HomeController() { cart = new CartModel(); cart.Currency = "USD"; cart.CancelURL = "http://*****:*****@yahoo.com"; cart.Items.Add(new ProductModel { ProductName = "Test", Quantity = 1, UnitPrice = 60 }); }
internal SkrillAuth Checkout(CartModel cart) { NameValueCollection outgoingQueryString = HttpUtility.ParseQueryString(String.Empty); outgoingQueryString["pay_to_email"] = _merchantEmail; outgoingQueryString["status_url"] = _statusUrl; outgoingQueryString["return_url"] = cart.ReturnURL; outgoingQueryString["cancel_url"] = cart.CancelURL; outgoingQueryString["pay_from_email"] = cart.ClientEmail; outgoingQueryString["language"] = "EN"; outgoingQueryString["amount"] = cart.Total.ToString(); outgoingQueryString["currency"] = cart.Currency; outgoingQueryString["prepare_only"] = "1"; string endpoint = _isSandboxed ? _sandboxEndpoint : _releaseEndpoint; var response = Web.Post(endpoint, outgoingQueryString); SkrillAuth skrillResponse = new SkrillAuth(response); return skrillResponse; }
internal PayPalAuth Checkout(CartModel cart) { NameValueCollection outgoingQueryString = HttpUtility.ParseQueryString(String.Empty); outgoingQueryString["METHOD"] = "SetExpressCheckout"; outgoingQueryString["RETURNURL"] = cart.ReturnURL; outgoingQueryString["CANCELURL"] = cart.CancelURL; outgoingQueryString["BRANDNAME"] = cart.VendorName; outgoingQueryString["PAYMENTREQUEST_0_AMT"] = cart.Total.ToString(); outgoingQueryString["PAYMENTREQUEST_0_ITEMAMT"] = cart.Total.ToString(); outgoingQueryString["PAYMENTREQUEST_0_PAYMENTACTION"] = "Sale"; outgoingQueryString["PAYMENTREQUEST_0_CURRENCYCODE"] = _ppCurrency; for (int i = 0; i < cart.Items.Count; i++) { outgoingQueryString["L_PAYMENTREQUEST_0_NAME" + i] = cart.Items[i].ProductName.ToString(); outgoingQueryString["L_PAYMENTREQUEST_0_AMT" + i] = cart.Items[i].UnitPrice.ToString(); outgoingQueryString["L_PAYMENTREQUEST_0_QTY" + i] = cart.Items[i].Quantity.ToString(); } outgoingQueryString.Add(AuthQuery); var result = Web.Post(_endpoint, outgoingQueryString, ContentType.Default); var decodedResponse = HttpUtility.ParseQueryString(result.Response); decodedResponse["HOST"] = _host; return new PayPalAuth(decodedResponse); }