sveawebpay/svea-sdk-dotnet

Unauthorized error while using `DeliverOrder` action for order

Closed this issue · 5 comments

While using order action order.Actions.DeliverOrder the order is delivered as expected but I also get the following error at the same time.

Svea.WebPay.SDK.Exceptions.HttpResponseException
  HResult=0x80131500
  Message=GET: https://paymentadminapistage.svea.com/api/v1/orders/*orderid* failed with error code Unauthorized using bearer token *token*. Request body: . Response body: 
  Source=Svea.WebPay.SDK
  StackTrace:
   at Svea.WebPay.SDK.SveaHttpClient.<SendHttpRequestAndProcessHttpResponse>d__10`1.MoveNext()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Svea.WebPay.SDK.SveaHttpClient.<HttpGet>d__4`1.MoveNext()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
   at Svea.WebPay.SDK.SveaHttpClient.<ExecuteResourceRequest>d__9`2.MoveNext()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Svea.WebPay.SDK.SveaHttpClient.<HttpPost>d__8`2.MoveNext()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Svea.WebPay.SDK.PaymentAdminApi.OrderActions.<>c__DisplayClass0_0.<<-ctor>b__3>d.MoveNext()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult()

Steps to reproduce.

  1. Create order with client.Checkout.CreateOrder
  2. Render Gui.Snippet
  3. Select Invoice payment
  4. Deliver order with order.Actions.DeliverOrder

Basic procedure for step 4.

var order = await client.PaymentAdmin.GetOrder(checkoutOrderId);
var orderRowIds = order.OrderRows.Select(r => r.OrderRowId).ToArray();
var delivery = new Svea.WebPay.SDK.PaymentAdminApi.Request.DeliveryRequest(orderRowIds);
var polling = new Svea.WebPay.SDK.PaymentAdminApi.PollingTimeout();
await order.Actions.DeliverOrder(delivery, polling);

@Flybring We will look into this

@Flybring When do you get this error? Are you trying to get the order after delivery?

Is it in row #1 var order = await client.PaymentAdmin.GetOrder(checkoutOrderId); that you get this error?

@Flybring When do you get this error? Are you trying to get the order after delivery?

Is it in row #1 var order = await client.PaymentAdmin.GetOrder(checkoutOrderId); that you get this error?

It's during the usage of DeliverOrder action. This row throws the error await order.Actions.DeliverOrder(delivery, polling);

@Flybring Do you get this every time? We can't reproduce

@lounge I haven't seen this error for a while now. I think we can close this.