views:

27

answers:

1

Opinion seems to be split on whether an app binary is required to be uploaded to iTunes Connect before a testing an in-app purchase. I've created the app (no binary uploaded yet), created the in-app purchase, enabled by App ID for in-app purchase and marked the purchase "available for sale". I've followed the instructions in the guide as far as I can tell.

However, when I try it on my device I am unable to retrieve the products - SKProductRequest returns my request product as invalid.

Any suggestions what I need to do?

Does the in-app purchase product need to "Developer Approved" for this to work?

Any definitive answer on whether a binary needs to be uploaded? I would like to avoid that if possible but am willing to do it if required.

+1  A: 

Binary does not need to be uploaded. Source: my current in-development app.

I am getting my test in-app purchases without uploading my binary, and without setting the purchase to be developer approved. I followed the instruction included in the docs to set it up.

Have you been testing on the device? in-app purchases do not work in the simulator. Perhaps if you posted some more info we could help a little bit better.

coneybeare
Thanks - that sounds promising. Yes, testing on the device. I'm deploying a debug build on the device - do I need a distribution build (not sure if I can get one on the device though)?Any chance I need to have my bank-account info entered before this works? And did it take a few hours (i'm at ~12h since I set up the in-app purchase) to start showing up? I'm happy to provide more info if you have specific leads.
psychotik
You do not need a distribution build, just use a debug build. No bank info needed. I seem to remember it not taking a few hours, but I could be wrong.
coneybeare
How about the actual device - did you need to reset anything on there? I signed out of the Store using my retail account (no user signed in). I alternate between invalid product ID and "Cannot Connect to iTunes".
psychotik
I did not other than what you had mentioned
coneybeare
Turns out I need an active paid-apps contract. I was going from a free app to one that has in-app purchases, and you must provide your bank/tax info before these APIs succeed. Undocumented awesomeness from Apple.
psychotik
glad you got it resolved and documented here.
coneybeare