Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

[Solved] Support for IAP and Google play non-consumable refund?

Discussion in 'Unity IAP' started by vlater, Aug 17, 2018.

Thread Status:
Not open for further replies.
  1. vlater

    vlater

    Joined:
    Jun 4, 2013
    Posts:
    18
    Hi
    Is refund still not supported in Unity IAP?
    I have non-consumable product in Google play and used the google console to cancel an order. Unity IAP can't find the product anymore, but when I try to purchase it again - it says that there is duplicate transaction.
    If it is not supported are there any alternatives / workarounds ?

    Thanks
     
  2. vlater

    vlater

    Joined:
    Jun 4, 2013
    Posts:
    18
    Ok, so it seems the product is still there - product.hasReceipt returns true. Is there any way I can tell if the product is refunded?
     
  3. JeffDUnity3D

    JeffDUnity3D

    Unity Technologies

    Joined:
    May 2, 2017
    Posts:
    14,446
    What version of IAP are you using?
     
  4. yuantaoHuang

    yuantaoHuang

    Joined:
    Aug 3, 2017
    Posts:
    7
    1. update you IAP plugin to 1.21(newer then 1.19)
    2. search code in IAP demo. See Below. You can put the code in callback " OnInitialized() " when you app init purchase progress. Then you can get the product info.

    Tips : in google play store, you can get several empty items event you purchase nothing. But in appstore, it will throw a "null reference error" . You need to check if controller return a null object.

    3. Subscription info could also be load through "subscriptionInfo". Search it in IAP demo then you can see it.

    4. keep programming, then you might see next problem I mention in another thread. subscription.png subscript2.png
     
  5. JeffDUnity3D

    JeffDUnity3D

    Unity Technologies

    Joined:
    May 2, 2017
    Posts:
    14,446
    The previous post looks to be incorrect, not sure on the "several empty items" mention. "Keep programming" is not a valid troubleshooting technique. I am checking with the team here on the status of handling refunds.
     
  6. vlater

    vlater

    Joined:
    Jun 4, 2013
    Posts:
    18
    I'm using version 1.21. Trying to make purchase to a refunded non-consumable product. Google play console says it is refunded. But when I run the next code - it always returns true:
    Code (CSharp):
    1. public bool HasBoughtNoAds()
    2. {
    3.         var product = m_StoreController.products.WithID(kProductIDNonConsumable);
    4.         if(product != null && product.hasReceipt)
    5.         {
    6.             return true;
    7.         }
    8.      
    9.         return false;
    10. }
    I've tried clearing the cache on the device, removing and then installing the game again, but still it shows the product as purchased. I've tried looking on the receipt but didn't find any data about the refund.
     
  7. JeffDUnity3D

    JeffDUnity3D

    Unity Technologies

    Joined:
    May 2, 2017
    Posts:
    14,446
    Can you elaborate how you are creating a "non-consumable" product in the Google developer console, perhaps show a screenshot? Regarding refunds, I don't believe Google allows the user to purchase it again. If the user complains and wants a refund, shouldn't you allow them to keep the product, and also give them their money back? Refund vs return
     
  8. vlater

    vlater

    Joined:
    Jun 4, 2013
    Posts:
    18
    I'm creating managed product by using the "In app products" section. You are right about the refunds, I should leave it as it is now. Thank you for the help.
     
Thread Status:
Not open for further replies.