This happens on our production server. We have a subscription based product and we listen to Google Play's Real-time developer notifications on our node backend. We use purchases.subscriptionsv2.get to parse the notification.

Recently we notice that there is couple SUBSCRIPTION_PURCHASED notifications from this one user, the subscriptionState of the purchase is SUBSCRIPTION_STATE_CANCELED from the beginning, with canceledStateContext set to {"systemInitiatedCancellation": {}} when we first receive the notification.

What does this mean? I mean usually a SUBSCRIPTION_PURCHASED notification comes with SUBSCRIPTION_STATE_ACTIVE and we ack the notification. From Google's doc it says "Make sure that the value of the subscriptionState field is SUBSCRIPTION_STATE_ACTIVE." In this case what should we do? Why the system cancel the subscription from the beginning?

We use purchases.subscriptionsv2.get to parse the notification. But if we parse the same notification with purchases.subscriptions.get, it shows the paymentState is 1 which means payment received, and cancelReason is also 1 which just indicates it is canceled by the system. I am not sure if paymentState always stays 1 or it changes from 0 to 1 (pending to received), there is no other notifications we received.

Please advise me what this scenario means and what the best practice should be here, Thanks!

0

There are 0 best solutions below