Not sure if its the same issue I had but I managed to fix it by deleting the Spotify integration that had no entities then restarted HA and added it again and this time it worked for me and the Spotify media player entity was created correctly.
Have you followed all the steps and created an app on the Spotify Developer Dashboard?
Also I found that you need to get the redirect URIs correct otherwise it doesn’t work.
I have the following entered for the Redirect URIs on Spotify:
https://my.home-assistant.io/redirect/oauth
http://{my internal IP address of HA}:8123/auth/external/callback
Another thing to check is that the My Home Assistant link is correctly setup with the internal link to your HA. Use the URL below and it should open up a page with the link to your HA instance. If it is incorrect, fix it up and then try again.
Yes I’ve tried the internal IP as well as homeassistant.local:8123, as well as my domain name that I’ve set up to allow remote access to my HA, and all of them allow me to get to the next step but it’s when I click “link account” it just spins saying “Loading next step for Spotify” for a minute, then it goes blank.
I believe I figured it out. At least it worked for me. I was using google chrome, getting the “Timeout resolving OAuth token” error in HA. I then opened up Microsoft edge and went to spotify.com and logged in. I then went back to google chrome and opened up spotify.com and logged in and then went to HA in chrome and this time selected Add integration>Spotify. This time it actually linked to my account. I personally believe it was because I was logged in with Facebook as my Spotify account manager with MFA.
Thank you, the above didn’t work as well as I had hoped. So I had Premium and was unaware that it was different from the free version while adding this. One thing you might add to your guide is that if people are have the error to use this instead. http://homeassistant:8123/auth/external/callback or http://{my internal IP address of HA}:8123/auth/external/callback. This finally worked when I got the error!!!