Implementing Node.js server-controlled "Freemium" system with PayPal purchase & temporary free extensions

38 Views Asked by At

I'm developing a Node.js application with a "Freemium" model. Users can initially purchase access for 6 months through PayPal. However, after that period, I want the server to have the ability to grant specific users an additional 3 months of free access based on certain criteria (e.g., high engagement, positive reviews).

The issue is that using PayPal Subscriptions doesn't seem feasible for this scenario, as it wouldn't allow me to dynamically award the free 3 months to individual users after their initial purchase expires.

My desired functionality:

User purchases 6 months access via PayPal. After 6 months, the server checks specific criteria for the user. If the criteria are met, the server extends the user's access for an additional 3 months without requiring another PayPal payment. After the extended 3 months, the user reverts to a free (limited) tier or needs to purchase again to regain full access.

My questions:

What best practices should I follow for implementing this "Freemium" model with paypal payments and server-controlled access manipulation?

I found that we can create charge directly from our Node.JS server using stripe. But I'm currently not able to find anything useful in paypal.

0

There are 0 best solutions below