Android Question Google Playstore (monthly) subscriptions with trial period

Discussion in 'Android Questions' started by Syd Wright, Jan 20, 2018.

  1. Syd Wright

    Syd Wright Active Member Licensed User

    I am offering an app with an "In-App" monthly subscription, but also with a free 14 day trial period.
    (I specified this trial period in my Google play console when creating the in-app subscription).
    After some experimentation, I am still not certain how the Playstore handles the trial period.

    Three questions:

    1. Is it correct to assume that the "manager_OwnedProducts" sub only returns TRUE for pu.PurchaseState = pu.STATE_PURCHASED after the trial period and during the trial period returns FALSE?

    2. Do I need to call: manager.RequestPayment([inapp ID],"inapp",[text]) or is it in case of in-app periodic subscriptions sufficient to just use: manager.GetOwnedProducts?

    3. I read somewhere that the format should be: manager.RequestPayment([inapp ID],"subs",[text])
    but this does not seem to work. In stead I am using the format in question 2. Is this correct in the case of periodic subscriptions?
     
  2. Erel

    Erel Administrator Staff Member Licensed User

    Free trials documentation: https://developer.android.com/google/play/billing/billing_subscriptions.html#trials
    1. Based on my understanding it will treat the product as a purchased product during the trial period.
    2. You should call RequestPayment when the user wants to make a purchase. You should call GetOwnedProducts to check the current status. Note that the current status reported is not updated immediately.
    3. It should be "subs" for subscription products.
     
  3. Syd Wright

    Syd Wright Active Member Licensed User

    Thank you. I was hoping that the user would not have to use his/her Credit Card (or Gift Card debet) before starting the trial period because this is an obstacle that will deter users to try an app. With ordinary inApp purchases the app starts as free of charge and the software developer can/will decide if and when an inApp purchase should be made.

    If I want to do the same with a subscription, then I need to find a way te determine whether the trial period has expired before calling RequestPayment. However, there is no secure way to do this (users can keep on re-installing the app for another free period). It would be good if the Playstore could report back whether the trial period (as I have specified in the developer console) has expired and/or howmany days are still left of the trial. It seems Google has not catered for this (unless I am wrong?).

    I probably need to use my own trial period (ftp-server) routine (which I already use for one of my ordinary apps)...
    If anybody has other suggestions then please tell me!

    PS: Apparently Google's concept is based on instantly asking the user to make a (down)payment, which will be refunded if the app is deleted before the trial period has expired. Pity, because users won't like such a setup (I think). Among other they will be affraid that they will forget to delete the app before payment is due.
     
    rboeck likes this.
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice