Setting up Subscription based App with Upgrade/downgrade option

Hello All,

I have set up my app which is subscription based app.

My current set up (without upgrade option):
I have right now four plans (Free, Plan 1, Plan 2 and Plan 3)

Free plan is Promo/Launch plan which will be accessible only upto particular date (say 31st March 2022).
I have user profile sheet which contains all current plan details of each user.

What I want to achieve:
User can upgrade to new plan at any time during free period or at the expiry of Free Plan. I want to know what can be best set up capturing Upgrade plan details (including dates of start and expiry, payment details etc.) and get these details (updated details in User-profile sheet).

Also how can I keep all such plan details of each user in such a way that, if user wants to see all his/her transactions, can see it at once place. Need help in structuring the data.

Thank you in advance

What I would probably do is have a table to record each subscription purchase, with an email, a plan type, and date.

In you user sheet, create a relation joining email to your purchase log table. This relation can be used to display purchase history. Then create a rollup column that will get the max date from the relation. Then create a template column in both tables that joins both the email and the date together. Then create a new single relation to link the template columns together. This will give you a final single relation containing the last purchase record for each user. From there you can use Lookup columns to get the purchased plan and purchase date. Then you can use a series of IF columns and math columns to calculate the expiration date. Now you will have the plan type and expiration date in the user profile, that you can use for filters or visibility conditions of content.

6 Likes

Thank you Jeff for detailed explanation as always. Will set this up and will let you know. Thanks

2 Likes

Another alternative is using PayHere + Integromat, I have done that quite a few times and they handle this well enough for you, through the pieces of info sent through webhook.

2 Likes

Thank you @ThinhDinh. I wanted to use Indian payment gateway as payhere only has Stripe integration.

@Purvang_Joshi has given a tutorial on integrating Razorpay with Glideapp through Google App script.

However I would also like to know how to integrate payhere using integromat. I am sure you must be having some tutorial for this. Can you please share knowledge purpose?

Thanks

1 Like

The master of tutorials has already done it :wink:

1 Like

Thanks

1 Like

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.