I was starting to believe that, as well. However, I figured out how to make it work 100% of the time.
Requires a cellular connection & a PC.
Account gets flagged for phone verification in MP. Connect to the cell network with your PC - make sure you have a fresh IP. Disconnect & reconnect if need be. Do not use a proxy.
Open a private browser window, log in to the account in question.
You’ll see the phone verification screen. Go to smspva, get a number & feed it to IG.
You should have your code within a few minutes & should be able to successfully verify.
Keep the browser open - go back to MP, set the browser useragent (under social profile -> show advanced profile settings) to match the useragent of the browser you used to do the phone verification. See this page (http://www.whoishostingthis.com/tools/user-agent/)
If MP still wants you to phone verify, make a minor tweak or change to the username to get rid of that prompt (but make sure you reset the username to the correct value!) then click “verify”.
Should now show a verified status.
You should still have the browser up on your PC, browse around a little bit, like a few posts, do some random activity before closing.
I’ve phone verified 12 accounts this way since yesterday & every single one of them has worked.
Now, not all of those steps may be necessary, but I’m superstitious so I do it the same way every time
Use a hot spot, tether your phone, mobile router, etc.