question

Dan Tracy avatar image
Dan Tracy asked

RVS 2.0 cancelDate semantics

Hi there, I had a couple of question about the nature of the `cancelDate` field coming back in the RVS response.

The docs read

cancelDate - Long Integer - The date the purchase was cancelled, or the subscription expired. The field is null if the purchase was not cancelled.

My understanding is that the cancelDate will always be in the past but I want to make sure I'm not making a false assumption.

My questions are:

1. When present and not-null in the API response is cancelDate always going to be in the past.

2. If the cancelDate is in the future is that the date at which the subscription _will lose_ their entitlements? Or should we rely on renewalDate (or the larger of the two values) for that?

3. If the cancelDate is present in the API response and the value is in the past but renewalDate is in the future should we give the user their entitlements for the maximum of the two values or should we revoke access right away?

4. Unrelated to cancelDate but still within the context of subscription management, are there any plans for supporting webhook notifications for subscription lifecycle events? Like cancelation, payment made, free trial start, etc? Such things would help out from a reporting perspective quite a bit.

Thanks for all the help!

iappurchasing
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

Dan Tracy avatar image
Dan Tracy answered

I got an answer to this (as of 2017-02-07). Here's the response...

>>>

My questions are:

1. When present and not-null in the API response is cancelDate always going to be in the past.

[Amazon Rep] Yes. cancelDate is populated immediately when a subscription is canceled by Customer Service (in the event the customer contacted Amazon). If auto renew is turned off, the cancelDate remains null until the subscription expires. Once the subscription expires, the cancel date will show the date of expiration.

2. If the cancelDate is in the future is that the date at which the subscription _will lose_ their entitlements? Or should we rely on renewalDate (or the larger of the two values) for that?

[Amazon Rep] The date should never be in the future. A non-null cancelDate indicates that a subscription is canceled. Note that the cancelDate is in GMT.

3. If the cancelDate is present in the API response and the value is in the past but renewalDate is in the future should we give the user their entitlements for the maximum of the two values or should we revoke access right away?

[Amazon Rep] You should revoke access. A non-null value for cancelDate effectively means they either 1) Have gone through the subscription term and turned off auto-renew or 2) contacted Amazon Customer Service and cancelled the subscription. Note that a customer cannot "cancel" a subscription via self-service, they must either 1) Turn off auto-renew or 2) contact Amazon Customer Service.

To also clarify, renewalDate is the date when the current term of the subscription should be renewed. It will be a future date unless the subscription is cancelled (in the scenario you described). It will be null if auto-renew is turned off.

4. Unrelated to cancelDate but still within the context of subscription management, are there any plans for supporting webhook notifications for subscription lifecycle events? Like cancelation, payment made, free trial start, etc? Such things would help out from a reporting perspective quite a bit.

[Amazon Rep] Our reporting team is working on a revamp of the reporting that is available on the Developer Portal which does include information regarding the customer lifecycle. APIs are being discussed for that revamp. But currently, there are none.

10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.