iTunes Connect - in app purchases - objective-c

I have added a new in app purchase for my app. I have uploaded the screenshot and the status is "Waiting for Review".
I have NOT submitted the binary yet as I wanted to do some testing once the purchase has been approved.
The in app purchase has been in the "Waiting for Review" state for about 2 weeks now.
Does this indicate a problem? Or has anyone experienced a wait as long as this for approval?
Cheers,

You can test the in app purchase without being approved. See the docs how. You should submit a screenshot when you want the in app purchase to be tested. This is, when your app is already submitted.

Related

Facebook audience bidding is not working: bundle status is invalid

I have a react native application on IOS, and I implemented Facebook Audience Network Bidding with Admob.
Everything looks fine; bidding requests are being sent from Admob to Facebook. But Facebook is barely responding to bid requests.
When I use the debugger, there is an error called "Bundle status is invalid" with zero documentation on the internet.
I can see test ads without any problems. I used the Ad Inspector to validate everything, and it looks fine. But production users are not able to see any Facebook ads.
SDK versions:
FBAudienceNetwork 6.2.1
Google-Mobile-Ads-SDK 7.69.0
GoogleMobileAdsMediationFacebook 6.2.1.0
GoogleMobileAdsMediationTestSuite 1.4.0
Is there any knowledge about this problem and what is "Bundle status is invalid"?
After trying lots of solutions, I think I found out the reason.
The problem was missing tax information.
Step by step solution
Go to monetization manager
Click payouts
Select your payment account
Click edit account
It should navigate you to the organization management page.
Click to payout settings
Now, you will see the missing tax information and an update button.
Download your appropriate tax form from here
Complete the form, print it, sign it then scan it.
Upload the completed form using the update button.
After few hours, it should work and you can see the "Bundle status is invalid" is gone from the debugger.
If this solution works for you, please add a comment. So I can be sure about giving the correct solution, I will mark it as an answer.
I resolved this issue by releasing the updated app on the store (google play store in my case), now the debugger shows all green ticks.
edit: just to clarify that I still haven't uploaded a tax info form, ill wait to see if its mandatory first.

Titanium in-app purchase with ti.storekit - product not found

I have my in-app product all set up for purchase in iTunes Connect via ti.storekit:
My Appcelerator 4.0 app compiles and deploys to my device (dev profile). The ti.storekit is linked to my app and it compiles. It also seems to execute correctly, in terms of no unhandled exceptions. But it is telling me that it can't find my In-App purchase product. I have tried handing "15 Keys" and also "15Keys" to ti.storekit. I wasn't sure which one it wanted (Reference Name or Product ID) - but anyway neither works.
Here's the documentation I've been following.
And here is the function in ti.storekit that produces the error message:
function requestProduct(identifier, success)
{
Storekit.requestProducts([identifier], function (evt) {
if (!evt.success) {
alert('ERROR: We failed to talk to Apple!');
}
else if (evt.invalid) {
alert('ERROR: Invalid product: ' + identifier);
}
else {
success(evt.products[0]);
}
});
}
The "else if" line is being executed: alert('ERROR: Invalid product: ' + identifier);
What am I doing wrong? Should I be handing it the Reference Name (15 Keys) or the Product ID (15Keys)? And since I have tried both and neither works, how can I troubleshoot this? What am I doing wrong?
EDIT:
I am unclear on 3 things:
1- Should I go into Settings on my ipad and log in to itunes/store with my TEST USER apple sandbox account? I'm unable to do this because it keeps requiring me to enter a credit card. Test credit cards I've used in the past (on other non-iOS systems), such as 4111111111111111 do not work, and I cannot continue and sign in. Not even sure if I'm supposed to do this. If so, what CC credentials can I use? Should I use a REAL CC for this? Based on everything I'm reading in other articles and posts, it says to never link a test account to a CC number...then WHY won't apple let me log in my test user to my apple device (inside Settings) without entering a credit card?
2- I'm not following the steps in https://github.com/appcelerator-modules/ti.storekit/blob/master/ios/example/app.js EXACTLY, because in my app there is nothing to download, nothing to host, etc. In my app, users can buy keys, which are just digital entities in my app -- nothing to download. So I have removed all code/steps that have anything to do with downloading/hosting.
3- Version 1.0.0 of my app is awaiting review in the app store. This version has no ti.storekit and no in-app purchase. Nothing. BUT I'm working on a newer version with all the storekit and in-app purchase stuff in my latest appcelerator 4.0 project. Shouldn't this work in my dev environment, on my connected ipad, in a dev build? The fact that I have 1.0.0 awaiting review, with no storekit stuff, should have nothing to do with my new version in my dev account with storekit, right? Also I am puzzled by this message:
Do I need to submit a new build to Apple before my DEV storekit stuff will work? If so, this seems very strange, as though an app-store release candidate is connected with stuff I have in development in my local environment. Is this message indicating why my dev storekit stuff won't work? My in-app purchase product seems correctly configured, but shouldn't I be able to connect with this in dev/sandbox regardless of the 1.0 app (no storekit) awaiting review in the app store?
Thanks everyone for your help...I must be missing some critical step I'm not seeing.
Did you check if you use the Sandbox for testing?
https://github.com/appcelerator-modules/ti.storekit/blob/master/ios/example/app.js#L86
And are you aware that you have to sign out of your existing App Store account to test?
https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectInAppPurchase_Guide/Chapters/TestingInAppPurchases.html
You have to use the Product ID (15Keys).

App Rejection - in-app purchase

My iOS application is rejected. I have changed some basics and now it's ready for the next submit for review but the In-app purchase still in review. Should I submit it again while (In-app purchase) is in review?
Yes you can submit your app when it is in review. Make sure you have uploaded your app with proper testing.
All the best! :)

What are the circumstances in ios7 where an app won't have a receipt on the device

From reading the Apple docs [1], an app gets an updated receipt when it is downloaded, updated, or in-app purchases are restored. Is there ever a case where it won't exist at all?
Some specific cases where it is not clear:
if a user installs an app in ios6 and then updates to ios7 will the receipt be missing?
if a user restores a backup are receipts included in the backup/restore?
The reason for the question is to understand how many of an app's users might see the login prompt when the app has to retrieve the receipt from the server. And related how many users might hit an issue as they are offline when this happens.
[1] WWDC 2013 Session 308: Unified Receipt on iOS7 and OSX (only available to registered developers)
Answering this question: Is there ever a case where it won't exist at all?
From this bit of the same presentation, I would conclude that there is a case where it might not exist, I haven't been able to find however, a case where the receipt won't exist. (See below)
For consumable purchases and non renewing subscriptions, the receipt for those purchases will only be issued at the time of purchase. It will not be present in subsequent receipts.
If a user installs an app on iOS6 and then updates to iOS7 will the receipt be missing?
I used iExplorer to check this by finding an app I downloaded when I had iOS6 and seeing if the receipt is still there. It is:
If a user restores a backup..
If an app is restored from iCloud, the receipt is still present.
I deleted an app
Reinstalled it from iCloud
Checked it if the receipt is still there
If a device is restored completely, I speculate that the receipt will still be present as all apps are redownloaded from the store in the normal manner.

iTunes Connect: How revert app status from waiting for upload to Prepare for upload

I'm uploading the first version of my iOS application for review, Whereas my application has an In-App purchase. I made my app status to Ready for upload while getting in its Binary upload section. But later I got that I have to submit my first In-App purchase along application version.
Now I can't edit In-App purchase section in application version meta data as it states that you can't submit in app purchase with this version as its already submitted for review.
I haven't uploaded binary yet in this version, now two solutions which I think could be
1- I email Apple review team to change my app status from Ready to upload back to Prepare for upload
OR
2- Upload a binary and then reject it but I'm confused that whether rejecting binary would revert my app status to Prepare for upload or Waiting for upload.
I forgot to submit any IAPs with my first binary and got rejected ("can't purchase anything = can't review app"). I also hurried and clicked 'ready to upload binary' without editing IAPs first. I just submitted the same binary again and quickly rejected it. Then, I could edit IAPs, and finally re-submitted the binary one more time. Hope this helps.
1.Upload the current binary.
2.Make it "developer rejected".
3.Upload a new binary of your choice.