How does the new EXPIRATION event handle grace periods?

  • 11 October 2021
  • 3 replies



I am using a web hook to track user subscription status on my server. The new EXPIRATION event seems like a good way to tell if the user should be downgraded or not. This raises a couple of questions though:

If a grace period is defined in the App Store for billing issues, when does the EXPIRATION event get fired (assuming the billing issue is not resolved): before the grace period or after?
Another question we have is: if a subscription is paused (possible only on Google Play), is this event (EXPIRATION) fired?


Yariv from the Bizillion team

3 replies

Userlevel 3
Badge +3

Hi @Bizillion, that’s a great question. Let me clarify the exact conditions with the engineering team and get back to you.

Userlevel 3
Badge +3

Hi @Bizillion, thanks for your patience. We checked this and we seem to have some inconsistencies there currently in how grace periods are handled. What should be the case is that the EXPIRATION event fires after the grace period ends. In other words, you should be able to rely on the EXPIRATION event to revoke access to premium entitlements. We will work on fixing the inconsistent behavior. 

For paused subscriptions, you can rely on the SUBSCRIPTION_PAUSED event.


Hi Jens,

Thanks for your reply. It would be greatly appreciated if you could post here when any inconsistencies have been fixed.

As for paused subscriptions, I understand that the SUBSCRIPTION_PAUSED event indicates that - but I would still like to know if the EXPIRATION event will also be fired when the subscription is paused (as that is also an instance when premium entitlements should be revoked).

I think it’s a great idea to have one event that correctly signals revoking premium entitlements - I’m just trying to make sure EXPIRATION is that event.

Thanks again!