Всё, что ты описал, должно происходить после инициализации стора. А стор инициализировать нужно синхронно при старте приложения
На данный момент у меня это происходит в _app.tsx ( nextjs). в getInitialProps там я инициализую стор и соответственно делаю запрос к апишке и тому подобное. Все окей. Но мне не нравится что он это делает при каждом запросе, пришлось сделать проверку на window = "undefined" тогда только при ssr это выполняет. Я думаю что это костыльно, гуглил кучу boilerplate ничего нормального к сожалению не нашел, либо не так искал ;(