Hi
As mentioned in the in this thread and also in this doc (https://www.revenuecat.com/docs/event-flows) in the billing issue flow section that if a billing issue is encountered, then the following events happen:-
1. If grace period is enabled, then billing issue and cancellation event is dispatched simultaneously and when the grace period ends, then expiration event is dispatched immediately.
2. If grace period is not enabled, then billing issue, cancellation and expiration is dispatched immediately.
I have been testing the events in the sandbox environment for two products I created in play console in which I enabled grace period in one of them and disabled in the other one and I bought the subscription successfully and then I chose the test card always decline option before renewal to test the billing issue events. I observe that billing issue and cancellation event is dispatched in both scenarios but the expiration event is dispatched exactly after 10 mins (equivalent to 30 days in real transactions as per google docs ) if I don’t enable grace period and is dispatched exactly after 15 mins if I enabled the grace period. My whole concern is that I don’t get any events when the grace period ends. As per docs, an expiration event should have been dispatched immediately when the grace period ends if any but I don’t see it happening in the sandbox environment.
I have attached the screenshot(when grace period is not enabled) and all the screenshot shows the timestamp of the events at the top right corner. The expiration event is sent 10 minutes later after the billing and cancellation event is sent. This 10 minutes is equivalent to 30 days of account being put to hold in real transactions. I have a use case where I need to update the custom claim of the user when the grace period ends but I don’t receive any events for it. Ideally as per docs, expiration event should have been received but it’s not happening. Please look into the issue and let us know if this issue is specific to the sandbox environment only or if this will happen when real transactions are done.
Regards,
Abhishek