diff --git a/indexedDb/implementation.go b/indexedDb/implementation.go
index 110df126dd91339c2ea80667db1e58e5ae7f59dc..0b7236429b84ea237553cd667a2928464ac612ef 100644
--- a/indexedDb/implementation.go
+++ b/indexedDb/implementation.go
@@ -382,7 +382,14 @@ func (w *wasmModel) receiveHelper(newMessage *Message) (uint64,
 	err = txn.Await(ctx)
 	cancel()
 	if err != nil {
-		return 0, errors.Errorf("Upserting Message failed: %+v", err)
+		err = errors.Errorf("Upserting Message failed: %+v", err)
+		msgID := cryptoChannel.MessageID{}
+		copy(msgID[:], newMessage.MessageID)
+		uuid, _ := w.msgIDLookup(msgID)
+		if uuid == 0 {
+			return uuid, nil
+		}
+		return 0, err
 	}
 	res, _ := addReq.Result()
 	uuid := uint64(res.Int())