diff --git a/cart-grain.go b/cart-grain.go index f00c9e7..4c99e1a 100644 --- a/cart-grain.go +++ b/cart-grain.go @@ -472,17 +472,19 @@ func (c *CartGrain) HandleMessage(message *Message, isReplay bool) (*FrameWithPa } var klarnaOrder *CheckoutOrder if c.OrderReference != "" { + log.Printf("Updating order id %s", c.OrderReference) klarnaOrder, err = KlarnaInstance.UpdateOrder(c.OrderReference, bytes.NewReader(orderPayload)) } else { klarnaOrder, err = KlarnaInstance.CreateOrder(bytes.NewReader(orderPayload)) } - + log.Printf("Order result: %+v", klarnaOrder) if nil != err { return nil, err } - - c.OrderReference = klarnaOrder.ID - c.PaymentStatus = klarnaOrder.Status + if c.OrderReference == "" { + c.OrderReference = klarnaOrder.ID + c.PaymentStatus = klarnaOrder.Status + } orderData, err := json.Marshal(klarnaOrder) if nil != err {