Skip to main content

Our app implements renewable subscriptions for Monthly and Annual. We are also implementing a “Day Pass” where users can purchase this and have access to locked content for 24 hours. The user can repurchase after it expires. We manage the expiration on our own servers.

I created the “Day Pass” products as in-app purchases and added them to their own entitlement in RevenueCat. After some thought, I think I shouldn’t have added them to an entitlement.

What’s the recommended setup?

If you set up your Day Pass as a non-renewing subscription, then it is not unheard of to add it to an entitlement, but it’s important to note that the logic for expiration would need to be handled on your end - which it sounds like you are!

This is because Apple doesn’t provide an expiration date for non-renewing purchases, and so our system treats them more like consumable purchases, which unlock Entitlements for a “lifetime” (or relatively).

 

 


If you set up your Day Pass as a non-renewing subscription, then it is not unheard of to add it to an entitlement, but it’s important to note that the logic for expiration would need to be handled on your end - which it sounds like you are!

This is because Apple doesn’t provide an expiration date for non-renewing purchases, and so our system treats them more like consumable purchases, which unlock Entitlements for a “lifetime” (or relatively).

 

 

hey! i can set the expiration manually on my backend, but what about my iOS client? the SDK will keep telling me the user has “Pro” entitlement despite me wanting it to be expired after a day. How would i handle this on the client? would i need to always check the product_id and start_time when fetching CustomerInfo, and manually return false each time a user with a day pass uses my app?


Reply