public Uri Create() { var cart = _klarnaCheckoutUtils.GetCart(); var merchant = _klarnaCheckoutUtils.GetMerchant(); var supportedLocale = _klarnaCheckoutUtils.GetSupportedLocale(); var gui = _klarnaCheckoutUtils.GetGui(); var options = _klarnaCheckoutUtils.GetOptions(); var shippingAddress = _klarnaCheckoutUtils.GetShippingAddress(); var klarnaOrder = new KlarnaCheckoutOrder { Cart = cart, Merchant = merchant, Gui = gui, Options = options, ShippingAddress = shippingAddress, Locale = supportedLocale.Locale, PurchaseCountry = supportedLocale.PurchaseCountry, PurchaseCurrency = supportedLocale.PurchaseCurrency }; var dictData = klarnaOrder.ToDictionary(); var connector = Connector.Create(_klarnaSettings.SharedSecret, BaseUri); var order = new Klarna.Checkout.Order(connector); order.Create(dictData); var location = order.Location; var kcoOrderRequest = GetKcoOrderRequest(_workContext.CurrentCustomer, location); _klarnaRepository.Insert(kcoOrderRequest); return(location); }
public Order Fetch(Uri resourceUri) { try { var klarnaOrderId = _klarnaCheckoutUtils.GetOrderIdFromUri(resourceUri); var connector = Connector.Create(_klarnaSettings.SharedSecret, BaseUri); var order = new Klarna.Checkout.Order(connector, klarnaOrderId); order.Fetch(); return(order); } catch (Exception ex) { throw new KlarnaCheckoutException("Error fetching klarna order: " + resourceUri, ex); } }
public Uri Create() { var cart = _klarnaCheckoutUtils.GetCart(); var merchant = _klarnaCheckoutUtils.GetMerchant(); var supportedLocale = _klarnaCheckoutUtils.GetSupportedLocale(); var gui = _klarnaCheckoutUtils.GetGui(); var options = _klarnaCheckoutUtils.GetOptions(); var shippingAddress = _klarnaCheckoutUtils.GetShippingAddress(); var klarnaOrder = new KlarnaCheckoutOrder { Cart = cart, Merchant = merchant, Gui = gui, Options = options, ShippingAddress = shippingAddress, Locale = supportedLocale.Locale, PurchaseCountry = supportedLocale.PurchaseCountry, PurchaseCurrency = supportedLocale.PurchaseCurrency }; var dictData = klarnaOrder.ToDictionary(); var connector = Connector.Create(_klarnaSettings.SharedSecret, BaseUri); var order = new Klarna.Checkout.Order(connector); order.Create(dictData); var location = order.Location; var kcoOrderRequest = GetKcoOrderRequest(_workContext.CurrentCustomer, location); _klarnaRepository.Insert(kcoOrderRequest); return location; }
public Order Fetch(Uri resourceUri) { try { var klarnaOrderId = _klarnaCheckoutUtils.GetOrderIdFromUri(resourceUri); var connector = Connector.Create(_klarnaSettings.SharedSecret, BaseUri); var order = new Klarna.Checkout.Order(connector, klarnaOrderId); order.Fetch(); return order; } catch (Exception ex) { throw new KlarnaCheckoutException("Error fetching klarna order: " + resourceUri, ex); } }