I had an active TestFlight beta running. Build 2020, version 407
I submitted an app for official App Store review. Build 2020, version 435, and it was approved. It is just sitting there, waiting for me to push it live into the App Store.
Without adding a complicated side story, what I wanted to do is to give my TestFlight beta users an updated version to preview the official App Store version for a few days, before making the App Store version live. Why, you ask? Because they were getting free features, there were about to cost money once the app would go live.
So, I submitted Build 2020, version 436, to TestFlight, and it was rejected.
It was rejected because I have an approved official App-Store candidate with the same build number
Solution: Change the build number of your TestFlight version. I submitted Build 20200 (I added an extra zero) version 436 to TestFlight, and it was approved. Don't worry, you can still push this build to the same TestFlight beta group, as long as you're still using the same BundleID.