Skip to main content

My product isn't returned

If a product isn't returned from the products for sale, you have an issue.
But don't worry we'll walk through the different possibilities that could cause this issue.

Check the products are configured correctly

First let's double check your products are configured correctly:

  • You've created your product on the Products page (of the IAPHUB dashboard) and on Google Play Console & App Store connect.
  • The product sku is correct (it is the same on the IAPHUB dashboard, the Google Play Console & App Store Connect).
  • The product type is correct.
    • On the Google Play Console, a auto-renewable subscription must be created in Subscriptions, a consumable or non-renewing subscription in In-app products.
    • On App Store Connect, a auto-renewable subscription must be created in Subscriptions, a consumable in In-app purchases, a non-renewing subscription in Non-Renewing Subscriptions
  • The product status is valid.
    • It should be displayed as Active on the Google Play Console.
    • It should be displayed as Ready to submit or Approved on App Store Connect (no need to submit it yet).
  • The product is available in your country.
  • You've published a listing with the products you want to sell and all the previous listings are offline (grey bubble icon).

Check if the product isn't returned by GooglePlay/iTunes

If everything listed above is correct we can assume it is an issue with GooglePlay/iTunes not returning the product (which is the most common).

When a product is returned by IAPHUB but not by GooglePlay/iTunes, the product is filtered.
The getProductsForSale method of IAPHUB SDK doesn't return an error but you can use the error listener to catch the error.

info

If you're using React Native, you should have an error message '...did not return the product, the product has been filtered...' in the debug console without the need to use the error listener.

var listener = Iaphub.addEventListener('onError', (err) => {
  // This is how to catch when a product is filtered from the products for sale
  if (err.code == "unexpected" && err.subcode == "product_missing_from_store") {
    console.log("Error: My product isn't returned by GooglePlay/iTunes, sku: " + err.params.sku);
  }
  // You can also check any other error you might have
  else {
    console.log("Error: ", err.message);
  }
});
React Native
Swift
Kotlin

Check if it is a caching issue

The first thing to assume is that it is a caching issue, it can take a while for the product to be available right after you create it on GooglePlay/iTunes. So wait a little.

But it is posible to speed up things on Android by clearing the cache of the Google Play App!
Go to Settings -> Apps -> Google Play Store -> Store & cache and click on Clear cache.
The navigation might be a little different depending on your Android version but you should be able to find it.

Check if it is an issue with your phone or the configuration of your project

Check your project configuration is correct, a few things you should check:

  • Check your bundle ID match the one of the app you've created on GooglePlay/iTunes.
  • For iOS, check you've enabled the In-App purchases capability in XCode.

Also make sure your phone has no issue:

Check if it is an issue with your configuration of the Google Play Console / App Store Connect account

The last thing to check and the most common issue.

If anything is missing or incorrect on your account or your sandbox environment isn't configured properly, GooglePlay/iTunes will simply not return any product. And unfortunately they also do not return an error that would allow us to tell you exactly what's going wrong.

So double check you've done correctly all the steps we list on our guides to configure your sandbox environment for iOS and Android.

info

Configuring the sandbox environment is necessary to be able to test products that aren't approved yet and make test purchases for free. You should test your implementation is working in sandbox before submitting your app to production.