Best way to deploy "Free Trial" for paid Discourse site? ActiveCampaign + Wordpress + GravityForms

Use case: Utilizing Discourse as a forum with training content (course). The course is a paid-course, although I want to offer a FREE TRIAL. As I intend to be driving a dozen sign-ups a day or more, I want something automated and simple.

Further, I don’t want to pay an increased transaction fee for a membership site software plugin (for post-trial). Happy to pay a flat fee for the software, but not an additional 4% for transaction (!!).

Current software stack:

  • Wordpress
  • GravityForms (with User Registration plugin)
  • Discourse
  • Wordpress membership plugin - Wishlist Member (AppSumo lifetime deal)
  • ActiveCampaign (for email autoresponder, automation)
  • Zapier (I can’t create a new User in Discourse with Zapier?)

My thoughts on how I can do this:
Option 1:
WP page with GravityForm for 7-day trial sign-up --> Creates new WP user --> SSO to Discourse --> Wishlist deactivates user in WP after 7 days --> ActiveCampaign sends email to state this change


Option 2:
WP page with GravityForm for 7-day trial --> Adds new user to list in ActiveCampaign --> ?? Some magic automation to create a new user in Discourse ?? --> ActiveCampaign to send new user emails


… a third option?

My outcome is simple:

  • Easy to manage
  • As few moving pieces as possible
  • Not spending a ton on custom development (if any)

Thanks for any direction!

This would work. Just use the WP-Discourse Wordpress plugin to set up SSO.
You could add a small bit of code to log the user out of Discourse as soon as the WP user is deactivated and I guess you would be done.

Since you already have a membership plugin, you can/should absolutely use SSO with Wordpress and have Wordpress manage your members.


Awesome. Thank you @RGJ.

Do you know how to skip WP in totality as SSO by using ActiveCampaign and Zapier? That would be best - I can create rules in ActiveCampaign to add/remove a tag in a workflow, which can then start a Zapier Zap.

I would need Zapier to:

  • Create a new user
  • Change Trust Level of user
  • Change Group of user

For me, that’s the preference.

I have SSO setup, however I cannot understand how to sync someone who is a Free Trial user versus Paid.

Free Trial = WP User Group: Subscriber = Discourse group: Free Trial
Paid = WP User Group: Customer = Discourse group: Paid Customer

If I can sync those 2, this WP/Wishlist strategy will work.

Managing Discourse group membership with WP Discourse seems to shed some light, but I can’t find how to change membership levels. Any ideas?

Either write php code specific to your membership plugin, or swap to PaidMembershipsPro and use the example code which works with PMP as Simon provided.

1 Like

The membership packages that I’ve seen don’t distinguish between free trial and no-longer-free-trial customers. I think you’d need to create a separate free trial product/subscription to map to the free trial group. But, Do you really want or need to treat free trial people differently from the ones who have started paying? Seems like you’re making work.

There could be hooks available that fire when a payment is made, so you could conceivably use that to add the user to the no-longer-free group.

Do you really want or need to treat free trial people differently from the ones who have started paying? Seems like you’re making work.

Thanks for that question. You’re right - I can treat Free as “have access to one Category only, forever.”

For Paid, they get access to X additional categories and their subscription MUST end in X weeks. This is a single fee.

There’s a second Paid tier, Alumni, that will be billed monthly and given access to a few additional Categories.

In summary:
Free - Free forever, access to 1 category forever
Paid - Limited access to X additional categories. After 14 weeks, give them only access to Free’s 1 category
Alumni - Access to all Paid categories, plus a few more. If they stop paying, they lose access.

This is all quite easy to do in Wishlist. It’s just the syncing that I need to figure out.

You just need to have whatever is taking their money (in WordPress is the easiest way) update their group when they purchase or a subscription expires.

At least one of my client who wanted to use Zapier for something got hit by huge fees and it didn’t work that well. As much as I hate WordPress, that’s what I’d recommend. It’s well-supported here either with free support if you’re willing to spend some time figuring it out or in #marketplace.