ERROR iTMS-90022: Missing required icon file. (120×120)

If you get a iTMS-90022 error message and you have what looks like the proper 120×120 icon file in your Images.xcassets, you can try to get this working the old fashioned way by adding the appropriate .png files to your project and updating your Info*.plist file. The entries for the plist file for iPhone targets should be:

<key>CFBundleIconFiles</key>
<array>
    <string>Icon-Small</string>
    <string>Icon-Small-40</string>
    <string>Icon-Small-50</string>
    <string>Icon</string>
    <string>Icon-60</string>
    <string>Icon-72</string>
</array>

Make sure your png files (along with the @2, @3 versions) match this naming convention as well. For me, it was the ‘Spotlight’ files that were misnamed to ‘Icon-40.png’, etc instead of ‘Icon-Small-40.png’.

The entries for the plist file for iPad targets should be:

<key>CFBundleIconFiles~ipad</key>
<array>
    <string>Icon-Small</string>
    <string>Icon-Small-40</string>
    <string>Icon-Small-50</string>
    <string>Icon-72</string>
    <string>Icon-76</string>
</array>

If you have a universal app, add both to your plist file, and make sure the matching png files are all in your project as well.

More info here if you are a developer.