Restoring tempstore with another session ID
I've experienced the same issue while trying to pass private.tempstore data through anonymous to authenticated user in Drupal 8. 

The function 

user_login_finalize($user); 

Performs de migrate() method. This method migrates anonymous session to authenticated session, but only the Native Session Storage (Symfony).

Private.tempstore has to manually be migrated as Ekta tells.

If you can't or you d'ont know how to implement it, just store the data in native $_SESSION['yourkey']

The problem it's that native Session it's loaded every time a page it's called, and with Tempstore you have more control about this. For this reason it's not the better solutions!.

This could be a good issue for Drupal Core in a future, migrate the tempstore too when session login.