iOS IAP cordova-plugin-inapppurchase

I am stuck for weeks now.


I keep getting the following error when I try to pay() (using inapppurchase plugin for cordova) for an IAP in the App store:

RMStore: unknown product id com.galgomedia.chaski.noads

I've tried every single way get it working with no avail. After several calls with Apple useless support, they just keep responding this (when I try to submit the app):

We found that your In-App Purchase product(s) exhibited one or more bugs, when reviewed on iPad running iOS 10.1.1 and iPhone running iOS 10.1.1.


IAP inactive

The irony is that the IAP is "Waiting for Review" and support said that for Sandbox Testing it does not matter what the status of the IAP purchase is (Tried with "Developer Action needed" and "Missing Metadata" aswell). What am I doing wrong?


PLEASE HELP!

You are doing three things wrond; using Cordova, referring to Apple support as 'useless' and some third thing that is preventing your app from working correctly. I recommend that in order to solve the third thing you refrain from the first two, certainly the second - it won't solve your problem.


There are many reasons why products can be returned as invalid. Many are described here:

https://developer.apple.com/library/content/technotes/tn2413/_index.html#//apple_ref/doc/uid/DTS40016228-CH1-TROUBLESHOOTING-WHY_ARE_MY_PRODUCT_IDENTIFIERS_BEING_RETURNED_IN_THE_INVALIDPRODUCTIDENTIFIERS_ARRAY_


Be sure to delete old builds of your app and log out of the app store before reinstalling from Xcode.


The particular response you are getting seems to be from app review. That would certainly be caused by having your IAPs being in the state 'developer action needed'

Thanks for the link I'll go through it:

  • You did not use an explicit App ID. - I am using an explicit App ID - com.galgomedia.chaski
  • If you or App Review rejected your most recent binary in iTunes Connect. - My app was rejected due to Invalid IAP - now my app and IAP are Ready to Submit, testing on my iPhone, still same error.
  • You did not clear your In-App Purchase products for sale in iTunes Connect. - It does not clear for sale because first IAP must be first submitted with a binary
  • You did not sign your app with the Provisioning Profile associated with your explicit App ID. - I did
  • You might have modified your products, but these changes are not yet available to all the App Store servers. - On this matter for over 3 weeks, surely a couple of days in between would have cleared the issue.
  • You did not complete all the financial requirements. See Contracts, Tax, and Banking Information for more information. - I did, just triple checked
  • Your product is an Apple-hosted one whose content has not yet been uploaded to iTunes Connect. See Hosting Non-Consumable Products with Apple for more information on to upload hosted content.Note: Your product identifier will be invalid until its content is uploaded to iTunes Connect. However, if your content is not ready, disable the
    Hosting Content with Apple
    feature for your product in iTunes Connect to resolve this issue. Re-enable this feature once your content is ready to be uploaded. - Not Apple Hosted
  • Your product identifier specified in iTunes Connect does not match the identifier used by the
    SKProductsRequest
    object in your app. See Technical Q&A, QA1329, 'In-App Purchase Product Identifiers' for more information about product identifiers. - The link is broken, but managed to find it: https://developer.apple.com/library/content/qa/qa1329/_index.html - I am using the product identifier "com.galgomedia.chaski.removeads"


Old builds have been removed. Logged out from Xcode and reinstalled all the Provisioning profiles.


I tried with the following IAP statuses:

  • "Waiting for Review"
  • "Developer Action needed"
  • "Ready to submit"
  • "Missing Metadata"


None worked.


The app works well on the Play Store without issues.


I cannot attach the console log, but says:

RMStore: unknown product id com.galgomedia.chaski.removeads


Nothing else. No crashes, nothing.

the error message is "RMStore: unknown product id com.galgomedia.chaski.noads" and you wrote "I am using the product identifier "com.galgomedia.chaski.removeads" " - those two statements suggest that your code is asking for the wrong productIdentifier. Search your code for "noads" and replace it with "removeads".

Also - if you renewed your developer account recently see the other posts on this issue.

Sorry, I just copy/pasted from the previous post line. (using another computer to write this, couldn't copy the console output).

I created a new product and tested everything from the beginning. The new product ID is com.galgomedia.chaski.removeads (already corrected my previous post).


Also Apple technical support gave me the same link as it was posted here in the previous post, refering them here so they can see my answer to every line stated in the link.


PS: 7th time I create a new product and start from zero based on Apple's support guidelines.

And did you add a new IAP on iTunesConnect that matches that productIdentifier?

Yes they are both the same (its not the product ID as I tested several times with several different ones).

It seems it has more to do with the links I added in my last reply, than an oversight of Product ID names.

In case someone else is struggling with this - 8 years later Apple support still has no clue why this is happening and does not point to the correct places. What I found out is that there are two main reasons:

  1. Make sure you have agreed to all legal documents in the appStoreConnect
  2. The RMStore requires that you first ask for the products, before initiating a purchase. Even if you know the id of the product in advance, just ask for the products first.

The second one solved the problem for me.

iOS IAP cordova-plugin-inapppurchase
 
 
Q