TEST SERVER

How can we help?

Tutorial: Selling a subscription and creating a membership site.

Subscriptions allow you to charge your customers for an item on a recurring basis. Using subscriptions, you can create a full-featured membership site with your content gated in any fashion you choose.

In this tutorial, we’ll create a membership site with two different levels:

  • Logged-in users (anyone who has registered)
  • Users who have purchased the ‘ChatBot’ product.

Prerequisites

Specifically, we need the ‘ChatBot’ subscription defined in Stripe.

Create content

We’re going to create two protected pages:

  • A welcome page for registered users.
  • A ChatBot-specific page that only users who have a current subscription can access.

You can have as many pages per subscription, but we’ll use only one initially.

NOTE: If you don’t see a product in the dropdown, re-save that product in your Stripe dashboard.

WELCOME
The welcome page will be available to any registered user of your site, so there is no associated product.

Create a ‘welcome’ page as usual in the WordPress dashboard. In the right-hand sidebar, open the ‘Access.’
section and click the ‘Locked’ checkbox. Once that checkbox is selected, a list of products is
shown. Don’t select any products from the list to indicate that no specific product is required, only a known user.

CHATBOT
Create the ‘chatbot’ page like the ‘welcome’ page above, but after selecting the ‘Locked’ checkbox,
also select the ‘ChatBot’ product in the select box that is shown. This limits page access to only
users who have a current ChatBot subscription.

NOTE: You can multi-select products from the list to make a page available to a user who has any of the selected products.

Add the ‘Add to Cart’ link.

Creating a buy button for a subscription is just like a one-time product since a
subscription is a product, just one with a recurring price.

Choose one of the ‘Add to Cart’ blocks and select the desired product/price in the block controls.

Try It!

We’ll need two users to try out each of the three levels. To do this, we’ll need
two email addresses. Many email providers – including Gmail – ignore characters after a
plus (+) sign, allowing you to create a distinct email addresses that use the same inbox.

For instance, if my Gmail address is getmindspun@gmail.com, then sending emails to the following
addresses all get delivered to my Gmail:

  • getmindspun@gmail.com
  • getmindspun+chatbot@gmail.com

However, WordPress would consider them separate users.

Buy each of the products with the associated email and verify the access.

If you don’t have an email that supports the plus trick, sign up for a free Gmail account to do this tutorial.

This process best demonstrates the new user experience on your site, so you should be happy with the experience. If you have trouble with it, so will your users.

Updating a payment method

In the ‘Products’ tutorial, we created an ‘Account’ page (if not, create it now).

Clicking on it will take you to the login page if you are not logged in already. Make sure that you are logged in as the ‘ChatBot’ user.

On the ‘Account’ page, there is now a ‘Subscriptions’ section along with payment information. Click on the ‘ChatBot’ subscription, which provides information about that subscription item.

The page shows you the last four (4) digits of the credit card you used for the subscription.

Enter another test credit card. For instance, if you used the Visa card, switch to Mastercard. Any other card will do.

Click ‘Update,’ and you are navigated to the subscription item page. All future charges will use the new credit card.

Canceling a subscription

The ‘Cancel’ action is on the same subscription item page as the update action.

There is a ‘Cancel’ link towards the button of the page. You are asked to confirm the cancellation by clicking ‘Cancel Subscription.’ Once you confirm the cancellation, you are taken back to the ‘Accounts’ page, where the subscription no longer shows up.

NOTE: the payment for the subscription is still there, but the active subscription is not.

Next up: Branding your site