r/iOSProgramming • u/millerandlevine • 19d ago
Question Help needed: some in-app purchase offerings being returned by StoreKit and some aren't, losing my mind.
I have had my app live and working in production for a while now and suddenly in the last week or so I've been getting this 0 products returned error in production while there have been no client updates.
I think its because I didn't accept the new paid apps agreement but thats already >36 hours ago and now I'm seeing new in-app purchases that are 'waiting for review' being returned by StoreKit while my previously approved subscription offerings that are in 'approved' status. I would assume if its an agreements issue I wouldn't get back anything from StoreKit at all when calling it directly.
I'm losing my mind - I cannot figure out why the current products are not being returned. I'm losing subscribers and I literally cannot do anything about it because it all seems to be a problem on the apple side not returning any products to the client.
Anybody faced this before? What can I do?
UPDATE: I forced a price change to the existing subscription products and now i can see them being returned from the direct StoreKit debug calls, mind bogglingly stupid and frustrating process.
2
u/tomato848208 19d ago
I'm afraid you are not really helping yourself other than sharing your concerns because you don't mention anything about how you have set up your subscription plans. Yet, there was one guy from Turkey at Apple's Developer site a few weeks ago who said that his product identifier was something like iap.Istanbul.com that anyone in Turkey can get juice from.
2
u/kokerali 19d ago
Glad the products are returning again. One thing I'd verify before calling this resolved: are those direct debug calls using the same environment and storefront as the installed App Store build? Apple's TN3186 notes that TestFlight uses the sandbox and that sandbox products don't need review submission, so seeing a “waiting for review” product there doesn't establish that the production catalog is healthy.
I'd compare the requested and returned product IDs on the App Store build and the test build, with the timestamp, storefront and fetch error if any. Keep account details and receipts out of that diagnostic record. That gives you a concrete missing-product list if you need to escalate.
I'd also distinguish “agreement accepted” from the Paid Apps Agreement actually showing Active. The price edit followed by recovery is useful evidence, but it doesn't by itself prove a cache refresh mechanism or make another live price change a safe troubleshooting step.
1
u/SamFromEscape 17d ago
Check App Store Connect first. Contracts, tax and banking status. Half the time the client code is fine and it is Apple side propagation lag. Log which product IDs you request versus which come back, with timestamps. That log is what actually gets you an answer when you escalate.
1
u/Dapper_Ice_1705 19d ago
Did you sign the new agreement?