Can I add an IAP without releasing a new build? - ios

Hello I had to fix an IAP id after my iOS app was approved and published.
The app was pointing to IAP with id "MyIAP1" but the id on the AppStore was "MyIAPABC".
This obviously wasn't working... since the App was looking for a non existant IAP ID.
So to avoid releasing a new App build, I've created a new IAP on the AppStore with ID "MyIAP1", the one available in the published App. The IAP is working correctly when I run the App from Xcode but it is not working on production. Do I need to release a new build to somehow enable new IAP products on production? (even if the code is exactly the same of the previous build)

You can since you have already submitted IAP before.
Note: If you have already submitted an in-app purchase with your app,
and you decide to add additional in-app purchases later, you can do so
without submitting an app version.
ref: https://help.apple.com/app-store-connect/?lang=en#/dev1986a0e5c

Related

Consumable In-App Purchase not available during app review process

My App was rejected because of error during payment process. The reason of an error was an empty product list returned via store kit API.
I’ve added Consumable In-App purchase with all required details. In-App Purchase is currently in Waiting for Review state and Cleared for sales is selected. Everything is working fine when I'm testing this via TestFlight using Sandbox mode.
Should I wait till In-App Purchase will be in Ready to submit state, before I will submit first version of my app for review?
Please advice.
Finally my build was approved.
I've noticed that in-app product after the 3rd review changed to Developer Action Needed with marked Localizations sections.
In my opinion everything was fine with it so I've just added new English (US) version (not required for that product).
Before I've submit a new build I've change one more thing in the code:
- Purchases.setDebugLogsEnabled(true);
+ Purchases.setDebugLogsEnabled(false);
Not sure if any of those changes had an impact but anyway build has been approved

App Store Connect. Disable in-app purchases for new version of app

I have already released an application to the App Store. This current version contains an in-app purchase item to unlock premium features.
Now we made a new design for the app and want to release a new version of the app and this new build will not include any purchase options.
So now as you see I have two versions. First one provides in-app purchases and the second one doesn't.
How to disable in-app purchases for the second version of the app?
Just remove in-app-purchase related code from the new version so It will not affect existing in-app-purchase in the AppStore Connect. And do not delete your in-app-purchases from the AppStore Connect so it'll work for the older version.
In-app purchases are independent from app versions. You cannot enable/disable them in App Store Connect for specific versions. You will simply need to "hide" the purchase option directly in the app, if you want it to be available for older app versions.
If that is not the requirement, simply remove the in-app purchase from sale in App Store Connect.

iOS App ID - In App Purchase Disabled (Can't be enabled)

I have created beta version of my app and uploaded it to iTunes Connect for TestFlight testing without any problems.
Later, I decided to implement In-App purchase. I visited apple page with identifiers and found out that there is already explicit App ID for my app. I wanted to edit my explicit App ID and enable In-App purchases.
When I clicked "Edit" button, I found out that In-App Purchase checkbox is grayed out and cannot be edited.
The In-App Purchase should be enabled by default according to the apple documentation:
Explicit App IDs are App IDs whose Bundle Identifier portion is a string without the wildcard ("*") character. Furthermore, they are automatically registered for in-app purchase and Game Center
Any idea how to enable the In-App Purchase? (I would like to use the same bundle ID).
Am not sure if it was some sort of bug or I really resolved the issue.
Here are the steps I have done:
1.)
Enable In-App Purchase in Capabilities
2.) Upload new version of the app to the TestFlight testing. I have checked my AppID afterwards, but In-App purchase was still disabled.
3.) Wait... Relax, enjoy the weekend. :)
4.) Check your App ID after the weekend

Unable to restore purchases from previous version of the same app

I have prepared a new build for my client's app - brand new, redesigned app. Everything is cool except that users of the new version are reporting that they are unable to restore their old non-consumable products (purchased in the old app). To make things even more weird - they are able to restore the same products, but purchased in the new app.
I believe that there is no difference in restored transactions no matter if they have been purchased within this or previous version of app when bundle identifier stays the same. I have double checked in Testflight app (with live Apple Id for restore) that only one out of six purchased products is already being restored.
My question is have you ever had such a weird issue in your apps? Any hints on peculiarities related to restoring purchases from previous versions of the app? Is it a bug in SDK? Does it make sense at all?
Problem solved. Clients were using live Apple ID in TestFlight build, not in the live app. Even if you use live account on TestFlight build it still operates in sandbox, and products purchased in production environment wont appear in sandbox when you restore purchases.

In-App Purchase not working in Apple Store but working in the sandbox

I am developing an iOS application with In-App Purchase (IAP). I have tested the IAP (in the sandbox environment) and it's working fine. Apple accepted the application and my IAP is ready for sale. But when users download the application and try to buy, they receive the alert the product is not yet available.
For information, I have two Apple accounts, one for the client and one for me. I have added the same productID in the two accounts. In my account it's just for testing and I have used the same productID for the release of the application with the client's account.
Do you think that the use of the same productID can cause this error in the Apple store?
Finally it was a Bug from the Apple Store, after waiting (6 days) it's OK.
how long did you wait after approval? My experience is that 4-hour of waiting, check it out here --- plus you can go thru a few things in the link to see if any of that was not properly set for your app.
IAP fails after release, but no in development stage

Resources