diff --git a/wasm/channels.go b/wasm/channels.go
index e72e300f9a53c4cf27de2a6022a907598c3acbef..550ba506f4e0e08bbff1b1bf9beb49434195eab8 100644
--- a/wasm/channels.go
+++ b/wasm/channels.go
@@ -10,6 +10,8 @@
 package wasm
 
 import (
+	"encoding/base64"
+	"gitlab.com/elixxir/crypto/channel"
 	"syscall/js"
 
 	"gitlab.com/elixxir/client/bindings"
@@ -184,7 +186,6 @@ func NewChannelsManager(_ js.Value, args []js.Value) interface{} {
 //    using [Cmix.GetID].
 //  - args[1] - Bytes of a private identity ([channel.PrivateIdentity]) that is
 //    generated by [GenerateChannelIdentity] (Uint8Array).
-//  - args[2] - Username (string).
 //
 // Returns:
 //  - Javascript representation of the [ChannelsManager] object.
@@ -192,7 +193,16 @@ func NewChannelsManager(_ js.Value, args []js.Value) interface{} {
 //    manager fails.
 func NewChannelsManagerWithIndexedDb(_ js.Value, args []js.Value) interface{} {
 	privateIdentity := utils.CopyBytesToGo(args[1])
-	em, err := indexedDb.NewWasmEventModel(args[2].String())
+
+	// Get the public key to use as a key for indexedDb
+	pi, err := channel.UnmarshalPrivateIdentity(privateIdentity)
+	if err != nil {
+		utils.Throw(utils.TypeError, err)
+		return nil
+	}
+
+	key := base64.StdEncoding.EncodeToString(pi.Identity.PubKey)
+	em, err := indexedDb.NewWasmEventModel(key)
 	if err != nil {
 		utils.Throw(utils.TypeError, err)
 		return nil