How to grant free months to an auto-renewal subscription (iOS)?
Asked Answered
B

3

10

I have an iOS app with different auto-renewal subscription possibilities, and I want to offer it's user the chance to earn a free month when they invite friends to the app.

I know how to handle the scenario where I'd give a free month to a user that's not already subscribed, but I'm wondering how to handle a user that's in the middle of a year-long paid subscription and should receive a free month..

Bellbella answered 22/2, 2016 at 15:4 Comment(3)
any possible solution for this ? because i want do same.Rattlehead
I haven't worked with subscriptions lately but I'd say no :-/Bellbella
@DixitAkabari, it is possible using Promotional Offers. Check out the answer I just postedClarita
C
1

1. Promotional Offers

This option allows you to add a free or discounted price for a period that you specify and it will be executed before the next payment cycle. You can use this feature starting with iOS 12.2.

Apple Documentation:

You can provide lapsed or current subscribers a limited-time offer of a discounted or free period of service for auto-renewable subscriptions on macOS, iOS, and tvOS.

Some useful links:


2. Offer Codes

Apple Documentation:

Offer codes can help you acquire, retain, and win back subscribers by providing a subscription at a discount or for free for a limited time.

Read more


3. "Extend a Subscription Renewal Date" endpoint:

Potentially simpler alternative that is not really suggested to use for this use-case. It has certain limitations though:

  • you can move the renewal date for a customer’s subscription up to 90 days into the future for each extension
  • you can extend the renewal date twice within a year (365 days) per customer

The following types of subscriptions aren’t eligible for renewal date extensions:

  • Subscriptions in a free offer period
  • Inactive subscriptions in a billing retry state
  • Subscriptions in a grace period state, with an expiration date in the past
  • Subscriptions that have already received two renewal date extensions within the last 365 days

Read more

Clarita answered 14/2, 2022 at 16:34 Comment(8)
I updated my old reply so new readers can catch your input, seems legit, thanks for sharing!! If anyone coming here validates the reply as well I'll mark it as the accepted answer.Bellbella
@alasker, sounds good. We just successfully tested another alternative today so I've updated my answer. Sill going to check with Apple if it is ok to use it for the use-case in your questionClarita
thanks so much @Clarita this is so helpful in this ocean of information. What solution did you go for in the end ?Meara
@gkpo, we went with the third optionClarita
Aren't you limited by the fact that this is maximum twice a year? did you find a workaround or does it fit your use case?Meara
We use it on a referral functionality. If a paid user refers someone to our app, and that new user also becomes a paid user, the one referring the new user gets a free extension to their subscription. We explain that they can claim their rewards twice a year. The limitation of doing it max twice a year wasn't a problem yet.Clarita
@Clarita Hello, 1 user may invite more than 1 user right? that means the reward must be stackable. (e.g. invited 2 users = 2 months). Then how the promotional offer works in this scenario since it only can be used once? (unreusable). I m just curious and asking because i m stuck at here as wellMcallister
@JackNoob We use the option 3 where they can claim their reward twice a year. If they claim twice (once for each month) then if they get a third reward in the same year, they won't be able to claim it. Basically we communicate apple limitations to them so they know they can claim their rewards only twice per year.Clarita
B
3

EDIT

Make sure to read budiDino reply below, it seems this is now possible (Full disclosure, I haven't tried it myself but I did glance over the references linked).


OLD ANSWER

Ok, after some digging and asking around on Apple's forums I can confirm it's not possible.

The only way to achieve this is to give users a free month outside of Apple's subscription process...meaning users should turn off auto renewal to enjoy those free months.

Whether this is good or bad for your app depends, but it required that the user manually turns off auto-renewal while using the earner out of charge time, and then turn it on to get back into the normal auto-renewal flow handled by Apple.

Bellbella answered 18/3, 2016 at 5:43 Comment(0)
D
1

You can maintain a value like additionalMonths on your server side.

So once his subscription period gets over, you can check for the value of additionalMonths and accordingly provide him subscription for those number of months.

Ditty answered 24/2, 2016 at 12:25 Comment(1)
Yeah, I thought of that options but I'm not sure how to handle those free months vs auto-renewal process on apple's side.. Say I give you a free month from my server, if you're still under an auto-renewal deal, you're charge by apple anyway.Bellbella
C
1

1. Promotional Offers

This option allows you to add a free or discounted price for a period that you specify and it will be executed before the next payment cycle. You can use this feature starting with iOS 12.2.

Apple Documentation:

You can provide lapsed or current subscribers a limited-time offer of a discounted or free period of service for auto-renewable subscriptions on macOS, iOS, and tvOS.

Some useful links:


2. Offer Codes

Apple Documentation:

Offer codes can help you acquire, retain, and win back subscribers by providing a subscription at a discount or for free for a limited time.

Read more


3. "Extend a Subscription Renewal Date" endpoint:

Potentially simpler alternative that is not really suggested to use for this use-case. It has certain limitations though:

  • you can move the renewal date for a customer’s subscription up to 90 days into the future for each extension
  • you can extend the renewal date twice within a year (365 days) per customer

The following types of subscriptions aren’t eligible for renewal date extensions:

  • Subscriptions in a free offer period
  • Inactive subscriptions in a billing retry state
  • Subscriptions in a grace period state, with an expiration date in the past
  • Subscriptions that have already received two renewal date extensions within the last 365 days

Read more

Clarita answered 14/2, 2022 at 16:34 Comment(8)
I updated my old reply so new readers can catch your input, seems legit, thanks for sharing!! If anyone coming here validates the reply as well I'll mark it as the accepted answer.Bellbella
@alasker, sounds good. We just successfully tested another alternative today so I've updated my answer. Sill going to check with Apple if it is ok to use it for the use-case in your questionClarita
thanks so much @Clarita this is so helpful in this ocean of information. What solution did you go for in the end ?Meara
@gkpo, we went with the third optionClarita
Aren't you limited by the fact that this is maximum twice a year? did you find a workaround or does it fit your use case?Meara
We use it on a referral functionality. If a paid user refers someone to our app, and that new user also becomes a paid user, the one referring the new user gets a free extension to their subscription. We explain that they can claim their rewards twice a year. The limitation of doing it max twice a year wasn't a problem yet.Clarita
@Clarita Hello, 1 user may invite more than 1 user right? that means the reward must be stackable. (e.g. invited 2 users = 2 months). Then how the promotional offer works in this scenario since it only can be used once? (unreusable). I m just curious and asking because i m stuck at here as wellMcallister
@JackNoob We use the option 3 where they can claim their reward twice a year. If they claim twice (once for each month) then if they get a third reward in the same year, they won't be able to claim it. Basically we communicate apple limitations to them so they know they can claim their rewards only twice per year.Clarita

© 2022 - 2024 — McMap. All rights reserved.