Apple rejecting app because they can't test IAP's

My app was rejected 3-4 times because of some error that doesn't load IAP's for apple engineers.
It loads perfectly for my Test Flight users and works for me as well, it doesn't load on simulators though and I get this error:

Code Block
Error Domain=SKErrorDomain Code=0 "UNKNOWN_ERROR" UserInfo={NSLocalizedDescription=UNKNOWN_ERROR, NSUnderlyingError=0x60000013ea00 {Error Domain=ASDErrorDomain Code=507 "Error decoding object" UserInfo={NSLocalizedDescription=Error decoding object, NSLocalizedFailureReason=Attempted to decode store response}}}


I can't load IAP's in the simulator at all without a storekit config file, and even with that attatched, apple rejected my app
This was their response :



Guideline 2.1 - Performance - App Completeness

We found that your in-app purchase products exhibited one or more bugs when reviewed on iPhone running iOS 14.5 on Wi-Fi.

We cannot select an In-App Purchase product to purchase.
No action took place after we tapped on any In-App Purchase product.

Next Steps

When validating receipts on your server, your server needs to be able to handle a production-signed app getting its receipts from Apple’s test environment. The recommended approach is for your production server to always validate receipts against the production App Store first. If validation fails with the error code "Sandbox receipt used in production," you should validate against the test environment instead.


They ask me to change validation servers, but I am not validating the receipts in my app at all!
When I asked about it, they didn't reply to my message

I'm very confused right now because I have other apps with IAP's already live and they were approved pretty easily, I tried using the same exact code as one of those apps and even it was producing an error in the simulator, but working fine in the app store build on an actual device.

Every time Apple rejects my app, the IAP's move from waiting for submission to Developer action needed, and I fix that before uploading a new build so the problem is not that.

It's weird that it won't load IAP's for apple engineers but it will load for my test flight users.

Any help is greatly appreciated!


Answered by bakedPotato in 678901022

Yeah, my app is live now. I had 2 apps, one was already live and one was in development, both were facing the same issue. Here's what I did

In the live app: I fixed the developer action needed error in the IAP's by just adding a random character in the localization title, and then saving, then changing it back to the original name and saving again. This time it changed to waiting for review. If you submit the app for review while your IAP's are in review, they won't load for apple testers as they test in production. So I waited 3-4 days, and when my IAP's were approved I submitted my app and everything was pretty smooth after that

In the Dev app: I thought I'll wait for the IAP's to approve for the development app just like the live one. I did the same thing and waited for a week, the IAP's never even went in review. It was always ready to submit. After a week I realized that when submitting for the first time, the IAP's are reviewed with the containing app. So basically I did nothing and submitted my app again after a week of fixing the developer action needed errors and Its nor approved and live :)

I am having the exact same issue.

Did you manage to get it working? If yes, what did you do?

Accepted Answer

Yeah, my app is live now. I had 2 apps, one was already live and one was in development, both were facing the same issue. Here's what I did

In the live app: I fixed the developer action needed error in the IAP's by just adding a random character in the localization title, and then saving, then changing it back to the original name and saving again. This time it changed to waiting for review. If you submit the app for review while your IAP's are in review, they won't load for apple testers as they test in production. So I waited 3-4 days, and when my IAP's were approved I submitted my app and everything was pretty smooth after that

In the Dev app: I thought I'll wait for the IAP's to approve for the development app just like the live one. I did the same thing and waited for a week, the IAP's never even went in review. It was always ready to submit. After a week I realized that when submitting for the first time, the IAP's are reviewed with the containing app. So basically I did nothing and submitted my app again after a week of fixing the developer action needed errors and Its nor approved and live :)

My app is accepted by reviewer team but IAP is showing developer action required and mention a note like this.

We have begun the review of your in-app purchases but aren't able to continue because your submitted in-app purchases indicate a change of business model for your app. Specifically, your existing Non-Consumable and Auto-Renewable Subscription business model has changed to include a consumable in-app purchase business model type.

I updated localisation and submit again then again they said same response. What we should do now?

Could you please tell us- In iOS app can we add all type of purchase option?

Apple rejecting app because they can't test IAP's
 
 
Q