Hi there,
After some further research, I have found the cause of the problem.
For any reasons, the order in which App Store Connect returns the list of products may change in time. So in your code, if you fetch the products with an index (product0, product1, etc.), your products and IAPs will probably be mixed up. Don't rely on how it displays locally via Xcode, for things might change once on the production environment.
To solve this, use product identifiers to identify, display and purchase your products, rather than a list index.
May this be useful.