public void CreateOrderOnCustomerToken() { // X-Example: POST /customer-token/v1/tokens/{customerToken}/order var username = "******"; var password = "******"; var klarna = new Klarna(username, password, KlarnaEnvironment.TestingEurope); var customerToken = "234534...345345....345"; var orderData = new CustomerTokenOrder { PurchaseCurrency = "SEK", OrderAmount = 1000, OrderTaxAmount = 2000, MerchantReference1 = "StoreOrderId", AutoCapture = true, OrderLines = new List <OrderLine>() { new OrderLine { Type = OrderLineType.physical, Name = "Foo", Quantity = 1, UnitPrice = 10000, TaxRate = 2500, TotalAmount = 10000, TotalTaxAmount = 2000, TotalDiscountAmount = 0, } }, }; try { var order = klarna.CustomerToken.CreateOrder(customerToken, orderData).Result; Console.WriteLine("OrderId: " + order.OrderId); } catch (AggregateException ae) { foreach (var e in ae.InnerExceptions) { if (e is ApiException) { var apiException = (ApiException)e; Console.WriteLine("Status code: " + apiException.StatusCode); Console.WriteLine("Error: " + string.Join("; ", apiException.ErrorMessage.ErrorMessages)); } else { // Rethrow any other exception or process it Console.WriteLine(e.Message); throw; } } } // /X-Example: POST /customer-token/v1/tokens/{customerToken}/order }
public void CreateOrderOnCustomerToken() { var username = "******"; var password = "******"; var klarna = new Klarna(username, password, KlarnaEnvironment.TestingEurope); var customerToken = "234534...345345....345"; var orderData = new CustomerTokenOrder { PurchaseCurrency = "SEK", OrderAmount = 1000, OrderTaxAmount = 2000, MerchantReference1 = "StoreOrderId", AutoCapture = true, OrderLines = new List <OrderLine>() { new OrderLine { Type = OrderLineType.physical, Name = "Foo", Quantity = 1, UnitPrice = 10000, TaxRate = 2500, TotalAmount = 10000, TotalTaxAmount = 2000, TotalDiscountAmount = 0, } }, }; try { var order = klarna.CustomerToken.CreateOrder(customerToken, orderData).Result; Console.WriteLine("OrderId: " + order.OrderId); } catch (ApiException ex) { Console.WriteLine(ex.ErrorMessage.ErrorCode); Console.WriteLine(ex.ErrorMessage.ErrorMessages); Console.WriteLine(ex.ErrorMessage.CorrelationId); } catch (Exception ex) { Console.WriteLine(ex.Message); } }
/// <summary> /// Creates a new order using the customer token /// </summary> /// <param name="customerToken">Customer token</param> /// <param name="order">A <see cref="CustomerTokenOrder"/> object</param> /// <returns><see cref="CustomerTokenCreateOrderResponse"/></returns> public async Task <CustomerTokenCreateOrderResponse> CreateOrder(string customerToken, CustomerTokenOrder order) { var url = ApiUrlHelper.GetApiUrlForController(ApiSession.ApiUrl, ApiControllerUri, $"{customerToken}/order"); return(await Post <CustomerTokenCreateOrderResponse>(url, order).ConfigureAwait(false)); }