Stripe Trial System

Hello,

I am building a Saas app using Stripe to manage the subscriptions available in the platform with a 14 day trial. I have set up the trial in both the workflow (subscribe user to a plan) and the subscription options in my Stripe dashboard.

My problem is… how do a stop/limit users to one trial per card or billing email?
My current situation is that after trialing is over and the first billing month is over, users can cancel the subscription and when subscribed again (using same billing email) stripes labels them as trialing and does not make the charge.

Hey there @donfile322,

Is there not a setting in Stripe for this? You can also check if there’s a customer that exists with the current user’s email.

If there is not a setting in Stripe for this, you could setup a webhook notification for a user subscribing and run the actions in your app to check the users email address against your app data to check if they subscribed before and if so then run the API calls to cancel them and send them an email to the area of your app where they could subscribe with a need to pay.

1 Like

The best way to go about this is creating a field “trial-used” under the user data type and set the default to no. Now set up a subscription workflow, the first step is to subscribe the user to the plan with free trial included ( with a conditional that says “only when current user’s trial-used is no”), the second step is to subscribe the user to the plan without a free trial (with a conditional that says only when current user’s trial-used is yes"), the third step is to "Make change to current user, the change to be made is (“trial-used = yes”) …

With this set up, the first time the user subscribes, he will have the Free trial option. But after the first time, he won’t be able to get another free trial because it’s already stored in the database that the “trial-used” is “yes”.

I hope this helps!