We design work with iOS subscriptions: client or server storage of products

Today, about 80% of mobile applications work on a subscription system. Thanks to this, we have hundreds of different approaches to how and when to show the user a screen with a subscription proposal, how to motivate the user to buy, the best way to lure the user.





When embedding subscriptions, sometimes important questions are overlooked:



  • how and where to store the id for the offered products?
  • How often do you plan to iterate on new products?
  • at what stage of application is it worth requesting a product? At startup or before screen display
  • do you have time to build a complex system to work with products or do you need a quick start?


Unlike a huge number of UX approaches for working with subscriptions, a technical solution has only two development paths:



  1. We transfer all work to the server
  2. All the logic of working with products remains on the client


There are pros and cons to each approach, and we'll look at the following questions below:



  1. Storing product id: client or server?
  2. At what point in the application is it worth requesting products?
  3. Should I cache products or not?
  4. Purchase Analytics: Client or Server Again?


So, let's go!



Product id storage



, id — , , .



, id: .



SaaS , . id , . , store.



- ? AB-, ? , , , . .



id , , , . c . - . :



  1. id


id , , "". , , - .



* ** ***
** *** *




? , . , . : , , .





, . : , . n-, , , , .





id Apple.





id , , id . , id, , , . " " , , n-, id , .



, , A/B . : , . . , . , , :  ?





image


, , , , , . , , , , .





, , . :



  • -?
  • ?
  • ?


These three questions will help you understand which design steps to take and where to look next. Also, if you are a small project, but you need to have server-side logic, then it is always better to look at ready-made solutions and BaaS, which have already gone through the main pain and will save you a lot of time.




All Articles