How can I create a scenario with Stripe when someone opts in for a free trial

Hey, I want to create a scenario where when someone books a 14-day free trial of our product initiated through stripe, I need to create a subscriber in MailChimp, and when the free trial is done and they pay for our subscription, another tag.

So I don’t know which triggers and modules of Stripe to use for this, please let me know how I can do it.

Hi Fahad,

You should be able to use the Webhook event “New customer created” to trigger your scenario.
Our Blog
Need Make expert support quickly? Book a session


Oh thanks for letting me know Loic, one question I have is how can I differentiate between trial customers and monthly paying subscribers?

You have a few ways you could do this:

  1. you could have another scenario that is triggered by an event “New Payment”
  2. you could add a search step after your “new customer created” webhook and look for any associated payments for that customer using the endpoint “List Payment Intents”
1 Like

He Loic, so I still have 2 doubts about setting this up,

#1 Is figuring out how to create separate paths for free trial users and monthly subscribers (how can I differentiate them)

#2 is I like to add a tag Mailchimp when someone’s 14 trial has ended, how I do a do that, I see a "customer trial will end"web hook in stripe, how can I use them

I’ll attach the screenshots of the “Payment intent” and “Customer subscription” webhook options so you could help me figure out which one to use.

Thanks anyways for helping me so far
{Payment Intent}

{Customer Subscription}

The logic for the separate path (free vs paid) should be based on the results of your “list payment” module. If the number of bundles is 0 then the user is on a free plan. If the number of payments is greater than 0 then it is a paid client (make sure to add a filter so only the first bundle goes through, otherwise if the client has several payments that branch will run once for each bundle).

Regarding the workflow to add a tag at the end of the 14 days you can probably use the event “customer.subscription.updated” or “customer.subscription.trial_will_end” (this one will trigger 3 days before the end of the trial)

Alternatively, you could schedule a task to check the status of the user subscription in Stripe after 14 days using a system like explained in this blog post that I wrote a while back: Schedule Tasks with Integromat
Our Blog
Need Make expert support quickly? Book a session

1 Like

Okay thanks, one question.

I saw a thing(idk what we call it) under Retrieve a customer module called “Subscription”

Is it any help to me, what exactly does it do?

If it means subscriptions people in, can I use that to specify if they are monthly subscriber?

Hey Loic, thank you so much for letting me know about this, so while I was setting this scenario up, I faced a hurdle regarding the filter.

I just want to know if the filter I created is right and which operator should I use to specify the Zero in the value field (is it, text operator or number operator)

The filter looks ok. Both operators (text and number) should work.

My recommendation is to setup a test page with your Stripe in test mode and setup your scenario on test mode first

I am quite new to this so don’t know what a test mode is and how to do it, this is basically for a client so I need to get access to the stripe account first.

Once I get the stripe account, how can I set up a test page in stripe on test mode, and why exactly am I doing it.

Anyways I want to thank you for being very considerate and helping me with all my queries so far, I have finished creating the scenario draft

So the webhook is when a “new customer is added”
then 2nd module gets customer id, email, name etc.
3rd module gets the payment bundles info
4th module “set multiple variables” split full name to first and last name.
Then two filters are there,
first one checks if payment bundle=0, if yes then add a tag “In trial”
the second one check if payment bundle=or>1, if yes then add a tag “monthly”(ie. not a trial user and is already a subscriber)

I would like to know if I did it all right, can you please let me know if this is correct

1 Like

Hi, the only issue I see is the filter for paid plans. Make sure you set the filter to Bundle position = 1 not > 0. If you have > 0 you might have more than one bundle go through.

I recommended using a test environment so you can make sure everything works as intended before to go live. The devil is in the details and it’s rare to get everything right the first time. Testing is crucial.

1 Like

Okay, thanks for pointing it out, I’ll put the paid plans filter as =1.

Btw, you told me that If I want to add a tag when the 14day trial ends, I can use the “customer subscription updated” webhook right,

So can you let me know what modules I need to add after that to add 3 tags called “Trial ended”, “subscription purchased”, subscription canceled"

You can use the “add tag” module

Okay, I understood that.
I created a completely new scenario, I know how to add the tag but don’t know how to tell the system that only when the user’s trial end, add a tag

I’ll attach a screenshot here (webhook=customer subscription updated)

So how will tell the system when the trial ends, do this.
what output from the above Json above should I use or what filter?

Btw, I need the customer ID to use the “Retrieve a customer” module so I get the email id to add a tag in Mailchimp, the 1st module’s output doesn’t have it as you can see in the screenshot, what can I do in this situation.

Thanks a lot for still helping me despite me being annoying and asking a lot of questions, I am trying to learn this tool and I am learning quite a bit from doing this and chatting with you.

Hi @Fahad_Sheji,

Check the Stripe documentation. The Subscription object has a variable called status:
" Possible values are: incomplete , incomplete_expired , trialing , active , past_due , canceled , or unpaid ."

You could use this.

By the way, your webhook returns the customer, I see it on your screenshot.

1 Like

You’re a saint @loic.wiseflow you really are :angel:

1 Like

Thank you so much man, thanks for sending the API reference docs, I was about to ask that so I don’t have to bother you with the questions I have about each API.

That was all the questions I had on this, you were very kind for explaining everything.
btw, I would like to know if you are willing to mentor or teach people MAKE, you seem quite knowledgeable.


yes, he really is.
Thanks @loic.wiseflow

1 Like

I actually do quite a lot of 1 on 1 coaching for Make :wink:

that’s great, how can I enroll