In App Purchases - empty product list - ios

I'm trying to understand how to work with In App Purchases. I've read many documents and seen a lot sample codes but I can't understand why product list is empty. According to documentation and forums I made this:
Setup contracts on iTunes connect.
Create AppID on provision portal with unique bundle ID
Create and install provision profile for this AppId and enable In App Purchases
Create application on iTunes connect.
Create purchases for this application.
Submit application.
Reject application.
In code, I've tried to receive product information by product ID and as result I can see empty list. However, I can see an array of invalid product IDs.
Could you help me to understand what is wrong?
Thanks.
According to Apple documentation:
Follow these steps to test your application in the sandbox.
- Log out from your iTunes account on the test iOS device.
- Before you can test your application, you must first log out of your regular iTunes account. iOS 3.0 includes a Store category in the Settings application. To log out of your iTunes account, exit your application, launch the Settings application and click the Store icon. Sign out from the currently active account.
- Important: Do not sign in with your test account in the Settings application.
- Launch your application.
- Once you have signed out of your account, exit Settings and launch your application. As you make purchases from your application’s store, Store Kit prompts you to authenticate the transaction. Log in using your test account to approve the payment. No financial transaction takes place, but transactions complete as if a payment was made.
I've tried it and can't see "Store Kit prompts you to authenticate" when I ask for products. Maybe I need to setup project in xCode?
Hm...
I can see products in Simulator of iOS 5 but can't buy it. Magic.

Try to delete your build and app on your device. I think this one should work.

It can take a good few hours for Apple's server to get round to enabling the in-app buys. I had the same problem that you did, but then it just started working half a day later.

Related

Show my app on app store to some selected user only

I want to install my app only on selected user's iPhone (100k users). Sharing app with development certificate is not possible there. So, I want my app on app store should be visible to only selected users.
Is it possible to mail a unique link to user then those user can only download/see my app on app store?
Yes, it is possible.
If you have an entreprise account, that is even the only you can do. If you need to look it up I suggest you check "OTA" or "Over-The-Air" app publishing method. It's great and exactly for your situation. But if you're on the appstore that means you don't have an entreprise account, so I'll skip to the second solution straight away.
You need to have beta testers. In your iTunesConnect account, where you can manage all sorts of settings for your app, you should find a TestFlight tab. In this tab, you can set emails for people to beta test.
There are two types of testers,
Internal testers
They're a part of your development team, and they must be set as Admin or Manager or Tester to access the app. This would be done in the People tab in your developer.apple.com account. 25 users max.
External testers
This is what you most probably need
You can simply add up to 10.000 email addresses (that are linked to itunes accounts), and organize them in to groups if you want. You can also publish specific versions to specific groups.
In your case it might be simple "one app for all", so don't bother with groups yet.
All they have to do is install the testflight app, and they will be able to download the app from there. It's like a private appstore for them if you want.
If they don't have testflight, they'll receive an email with a link that will do the same.

iOS In-App-Purchase Sandbox Environment Product issue

I’m new for IAP feature in iOS. I sent my couple of day to test IAP for learning purpose bur did not get success.
Something I’m missing to implement or whatever I don’t know exactly thats why I’m asking here. Basically I wrote code from this tutorial and my system is iOS 9/10 and Xcode 7/8 actually I tried with both.
I did all the step correctly Make “Test User”, Remove iTunes account from the device etc and also test cases from this web link but still facing “In Valid Product ID” don’t know why? but did not get list of product(s) from iTunes.
Just clear me for below point
1) Do I need upload app on AppStore (temporary then reject it) for first time test IAP in sandbox environment or no need to do?
2) Do I need to add ”Contracts, Tax, and Banking Information" in iTunes for sandbox environment or no need to do? (Right now added in my iTunes Account)
I added product on iTunes with and without screenshot uploaded but each time when I upload screenshot with product in iTunes then status was “Ready to Submit” and and without screenshot status was “Missing Metadata”
Is it correct status? and can we test IAP purchase with this status in Sandbox Environment?
1) No. There is no need to upload an App and reject it in order to test In-App purchases. You only need to create a sandbox account.
2)Yes, add the required information.
Make sure you have properly submitted each In-App purchase AND added them to the app - both steps required.

App missing from itunes connect

I created an app on itunes connect, and created all the provision profiles for it.
The next day, when I logged into the developer account, it said i had no apps ?
And I have to create things all over again?
How do I get to the details of my app?
iTunes Connect is not where you create provisioning profiles.
Provisioning profiles are created in the Apple developer portal in the iOS Dev Center.
iTunes connect is then where you create actual apps for upload to the App Store. When you first create the app there are a LOT of mandatory fields. Even things like the icons and screenshots of the app are mandatory. If you haven't completed these then the app will not be created no matter how many times you press save.
I imagine that something was probably missing from the information and so it wouldn't let you save the app.
However, if the app was created then you will have received an email telling you that the app was created. Did you get an email?

iOS in app purchase - "this account does not have permission.."

Ok here goes trying to explain this as clearly as possible:)
I have developed an app for a partner.
They wanted to submit the app under their company so I was given the certs and profiles. I packaged the app ...they submitted and all was fine.
Now I need to update the app with new content. So all this is done and the client has set up new in App purchase products for the app.
The Problem:
When I am testing all of the "product requests" are successful and it displays the description of the product etc.
However when I come to test purchasing with a iTunes test account it does not work. It says
"This account doesn't have permission to make in app purchases. You
can change account permissions in iTunes Connect."
However to try and work out the problem, as a test I quickly set up a "test" app in OUR iTunes account and a new bundle id etc and set up same IAP products. I then changed the app ID for the actual client app to point at this. And this works fine no problem what soever when testing via Xcode on device.
I am at a loss at what is wrong here as when I did the original app all worked as expected as in I was able to use a iTunes test account I had set up to test their app.
Any ideas what might be going on?
regards
ade
Apparently the test user account needs to be on the same apple developer account as your app!

In-app purchase 'SKProductsRequest' failing to produce a successful response

We've been trying to test in-app purchases in a sandbox environment, but fail to receive any data back from an SKProductsRequest. The callback
- (void)productsRequest:(SKProductsRequest *)request didReceiveResponse:(SKProductsResponse *)response
does get called but the response returns an empty array. Im testing this only for ipad, but both 3.2 and 4+ all seem to not get a response when I try this request.
I have read throughly through all intunes connect documentation so to tie the app on the iTunes connect with its inapp purchase items, and also all apple documentation on the SKProductsRequest object and the In App Purchase Programming Guide for help. I have tried resetting the certificates and starting all from scratch and followed the 'build for distribution' helper in the ios provisioning portal.
I have also built the app in all debug, release and distribution versions onto the device. I have watched and followed the WWDC2010 session 310 'App Publishing with iTunes Connect', but this is old as the enable inapp payments check button is no longer visible when creating app-ids in the provisioning portal site.
I have also made sure that my code signing is correct and the program matches the right app-id to which the requested inapp purchases are signed-off with. (see attached, the bundleid matches the identifier in Xcode.
I have made sure that the ipad has signed out of any iTunes accounts when running the test app, and added test users on the iTunes Connect page to test with. Our iTunes Connect banking information is fully completed.
I have also checked many forums and this process seems to be a big grey area for many, I have exhausted all thought on this, I just cant seem to get a response back for any product id.
...can anyone help me?!! Thanks people!
I found myself in a similar situation. The problem was I was using the wrong "developer identity" to sign my (development) binary. Since I often work for other companies, I've always just used my "personal" developer certificate to sign debug builds. Since those are test builds, I don't care what the appid is nor what company it is associated with. However, I realized that it would be insecure for Apple to allow random developers to query details about purchases for appid's that are not associated with them.
Make an adhoc provision for the project, and make sure you are signing your test builds with a develeper certificate that is associated with that company. The sandbox interface into the appstore for iAP must be verifying this at runtime.
Your making a very common mistake I have made myself with in-app-purchases. You have taken all the right step but you are missing one step. You need to submit the in-app-purchase. You do this by clicking on the in-app-purchase in the section of iTunes Connect which you can find by going to Manage Applications -> your app -> manage in app purchases. In this detail view you click the "Submit In-App-Purchase" button in the upper right corner. This button may be grayed out. If it is you must upload a binary for your app. You can reject it right away if you want to. Once you have done that you can go back to the detail view and click the submit button.

Resources