diff --git a/cmix/client.go b/cmix/client.go
index d26045a1786a5f900b676f2e8a7aa593f72445eb..15318e5f7cd4cdad302547f09bef96a3d09f8655 100644
--- a/cmix/client.go
+++ b/cmix/client.go
@@ -113,6 +113,10 @@ func NewClient(params Params, comms *commClient.Comms, session storage.Session,
 		c.verboseRounds = NewRoundTracker()
 	}
 
+	// Set up Message Handler
+	c.Handler = message.NewHandler(c.param.Message, c.session.GetKV(),
+		c.events, c.session.GetReceptionID())
+
 	return c, nil
 }
 
@@ -160,10 +164,6 @@ func (c *client) Connect(ndf *ndf.NetworkDefinition) error {
 	c.Retriever = rounds.NewRetriever(
 		c.param.Historical, c.comms, c.Sender, c.events)
 
-	// Set up Message Handler
-	c.Handler = message.NewHandler(c.param.Message, c.session.GetKV(),
-		c.events, c.session.GetReceptionID())
-
 	// Set up round handler
 	c.Pickup = pickup.NewPickup(
 		c.param.Pickup, c.Handler.GetMessageReceptionChannel(), c.Sender,