How could we use auto_renew_status

At the document, it defines 'auto_renew_status' - The current renewal status for the auto-renewable subscription.


“1” - Subscription will renew at the end of the current subscription period.

“0” - Customer has turned off automatic renewal for their subscription.


If a user cancel the subscription through 'Manage Subscription', can we tell the subscription is canceled or not by auto_renew_status before the expired date? or it will only be updated when the subscription is expired?

Replies

>If a user cancel the subscription through 'Manage Subscription', can we tell the subscription is canceled or not by auto_renew_status before the expired date? or it will only be updated when the subscription is expired?


First - this is an "I'm not going to renew" event. It is not when the user contacts Apple and says 'I don't want the current subscription that I was charged for - give me back my money' and Apple agrees. If so, a current receipt will have a 'cancellation_field'. Be sure to differentiate between cancelling the subscription and cancelling the transaction.


Second - you need to get a current receipt because the previous receipt may have been issued when the subscription was last renewed. You can get a current receipt by sending a receipt to the Apple servers and looking at the latest_receipt field. (Aside - since there is no ASN.1 entry, decoding on board won't work)


Third - this will indicate that the receipt will most likely not be renewed when it next expires. It does not indicate the subscription is not valid.

Thank you for your answer.


Here is the problem I want to solve: When a user has a event - 'I'm not going to renew', at the same day, I send the receipt to APPLE to get the latest receipt. In the latest receipt, will the auto_renew_status=0 or not? If not, how could I know that a user has a "I'm not going to renew" event?

>When a user has a event - 'I'm not going to renew', at the same day, I send...


1) why do you care? Wait until the current subscription period ends and then ask - did he renew?

2) suppose the auto_renew_status changed at precisely X hours after the user so indicates - why do you care what X equals? Why does the timing matter? The user can decide not to renew three hours before time-to-renew, or three days before - so what are you trying to accomplish that precise timing matters (other than precisiely when the subscription expires)

First, We care this event and it is very important to our user experience.

Second, How could I know when the user decide not to renew? This is only I care about. Can I tell this from auto_renew_status? If not, what is the usage of auto_renew_status?

Third, timing is important. If we can know user decide not to renew within one day, it is OK.

Yes, you can tell what the user's chosen intent is by using that notification. I do not know the real world answer but it would be straightforward for Apple to generate those notices on a 'pull basis' within a few minutes to one hour of the user's selection. I'd be quite surprised if it was longer than 24 hours. The user can make the selection anytime within their then current subscription period.