I have an app that uses in app purchases for auto renewing subscriptions. I need to offer users a free trail but Storekit's free trail feature does not fit my needs. Storekit's free trial feature forces the user to sign up for a subscription to get a free trial. I am concerned that this will turn away users since I am asking for a commitment before they've had a chance to try the app. I understand that they can cancel the subscription before the trail ends. It still is extra work on the user's part.
I would like to allow users to start a free trail without signing up for a subscription. At the end of the trial, they can sign up for a subscription to continue to create new data. If they don't, they can still use the app to view their existing data.
In effect, I am using Storekit for auto reewing subscriptions but would like to offer a free trails using my own implementation. Has anyone done this before or has experienced a rejection for this scenario? I am trying to figure out if this is allowed/disallowed.
Free trials for anything in code is not a violation of any guideline. (The only requirement is that after the free period the app must continue to function at some level.)
Apple makes it super easy to offer free trials for stuff that is included in an IAP using the autorenewable free trial period and the 'free' non-consumable IAP tier. Because all other non-consumable IAP purchases can't be time limited they had to explicitly state:
"Non-subscription apps may offer a free time-based trial period before presenting a full unlock option by setting up a Non-Consumable IAP item at Price Tier 0 that follows the naming convention: “XX-day Trial.”
But this statement removes a restriction on IAP purchases for that free tier, it does not place a restriction on anything.
Although it is not a guarantee, I have a free trial period in OptionPosition+ before the user is required to purchase the autorenewable IAP just as you propose. It is code left over from before autorenewable subscriptions. I did not do it for your reason - I did it for those people who find purchasing an IAP a foreign and confusing experience.
You will want to either write something to the device's keychain or write something to the user's iCloud key-value file to prevent a user from deleting and reinstalling the app to restore their free trial period. The first approach grants a new free trial everytime the user gets a new device.