[Closed] IAP - "Unavailable product" issue

Hello,

I am trying to integrate IAP with Apple App Store.
but i have the following error when testing on device :

UnityIAP:No App Receipt found!
Unavailable product com.flipbook.version.full -com.flipbook.version.full

So, the product ID seems to be not recognized.

I use the Unity tutorial code (Survival shooter IAP demo),
and I followed all the steps of the guide published in the forum…

the Itunes product ID (non-consumable) is the same than the one in the code, of course.

So, I don’t see, where is the problem
I’m using unity 5.3 and Xcode 7.1

Thanks for your help !

1 Like

same here. it says unavailable product…i am running it under android.

to be precise the logs are:
E: Unavailable product test -com.unity3d.test.services.purchasing.consumable
D: OnInitializeFailed InitializationFailureREason:NoProductsAvailable

the documentation is clearly incomplete. its frustrating.

just found this in the forums here. why not put this in the getting started page? =[

anyway will check this later. i hope it works. excited

Hi, for Apple Store, I finally managed !

I changed the following things, perhaps was it obvious, but it is not written anywhere!

In itunes Store, add the IAP product(s) (consumable, non-consumable,…) in the main application form.
It indicates, when you publish your app, which IAP products must be validated by Apple.

In Unity Build settings:

  • Put the same app bundle that in iTunes.
  • Run in Xcode as release ( not debug )

I do not know if all these points are necessary, but it works perfectly with the test user in sandbox

I must try soon with Android. I hope not to have the same problem as you!

The original message about an app receipt not being found is informational and expected on a fresh install.

How do you fix it?
I get the same problem.
Need your help~:)

builder.addproduct(id,type,storeid) …this method
what’s your id and store id fill in??
I always report no recipe found.It’s so sad.
Need your help.
Thank you very much!!

@fyy for builder.AddProduct one could do any of the following, depending on whether you have the (A) exact same ID, or (B, C) different ID in your Store IAP Product ID(s) and app:

  • (A) builder.AddProduct(“500_gold”, ProductType.Consumable); // Using the same “500_gold” ID on both Store and app
  • (B) builder.AddProduct(“500_gold”, ProductType.Consumable, “500_gold_applestore”); // Using the different ID “500_gold_custom_id_for_the_store” just for one Store (could use any ID, but using “500_gold” everywhere inside the app
  • (C) Or see the example at the link below for different ID for two different stores, and using just one ID inside the app: Unity - Scripting API: Purchasing.ConfigurationBuilder.AddProduct
1 Like

There are many reasons why Apple may report your products as unavailable. Have you followed this checklist?

1 Like

So I’ve followed the checklist and I used the Survival game tutorial. I’m still getting this error message saying NoProductsAvailable. Please help me resolve this issue.

@Chibwemwn How about this guide (for Apple)? There are many steps to this process - do you have any additional information, or suspicions of where the problem may be at, which we could use as a diagnostic starting point?

Thanks so much for the reply! I was starting to wornder if this thread was even alive! So my only suspicions are if the tutorial is outdated. I did everything according to the tutorial. not sure what I missed.

I used this tutorial, is it still viable or is it outdated?

That error indicates a configuration problem rather than a problem with your code; likely with your itunes connect setup or itunes test user account. All you can do is double check you have set everything up correctly. There’s another checklist here.

Wow, thanks so much for the reply! I’ll take a look at this.

I was using IAP with OpenIAB and everything was working!

Now I replaced it with Unity IAP and I’m getting “the item you requested is not available for purchase” when testing on Android.
My IAP ID is ftdotd_unlockalllevels on iOS store and Google Play Store.

builder.AddProduct("ftdotd_unlockalllevels", ProductType.NonConsumable, new IDs       {
           {"ftdotd_unlockalllevels", ProductType.NonConsumable, GooglePlay.Name},
            {"ftdotd_unlockalllevels", ProductType.NonConsumable, AppleAppStore.Name}
        });

Am I doing something wrong?

Please attach a trace from the device using adb.

Note that you don’t need to specify store specific identifiers where they are the same as your cross platform identifier; you can just do AddProduct(“ftdotd_unlockalllevels”, ProductType.NonConsumable);

2 Likes

Hello,

I am integrating Unity IAP to my project. Product Id is same as in iTunes Connect. When i run this in iOS device using Developer mode in Xcode.

This is what am getting. Can anyone please help me with this??

OnInitializeFailed InitializationFailureReason:purchasingUnavailable
Purchaser:OnInitializeFailed(InitializationFailureReason)
UnityEngine.Purchasing.NativeJSONStore:OnSetupFailed(String)
UnityEngine.Purchasing.AppleStoreImpl:processMessage(String, String, String, String)
UnityEngine.Purchasing.Extension.UnityUtil:Update()
(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 37)

So, If i press the Buy Consumable button. It shows this error.

BuyProductID FAIL. Not initialized.
Purchaser:BuyProductID(String)
UnityEngine.Events.InvokableCallList:Invoke(Object[ ])
UnityEngine.EventSystems.ExecuteEvents:Execute(GameObject, BaseEventData, EventFunction`1)
UnityEngine.EventSystems.StandaloneInputModule:processTouchPress(PointerEventData, Boolean, Boolean)
UnityEngine.EventSystems.StandaloneInputModule:processTouchEvents()
UnityEngine.EventSystems.StandaloneInputModule:process()
(Filename: /Users/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebugBindings.gen.cpp Line: 37)

Have you followed all the steps in the configuration guide?

1 Like

This solution worked for me, thank you

1 Like

I have the same problem with another game now. The game is already published on store, but Unity IAP keeps failing to initialize.

Unavailable product somtbos_unlockalllevels -somtbos_unlockalllevels

But the product is ONLINE and available.

I don’t know what else I can do.

When Debugging on Visual Studio it should work or it will only work when published to store?