Design your Subscription Management Flow

This implementation guide has two parts. Part 1: Selecting your subscription management (sub mgmt) method. Part 2: Designing and diagramming your post mgmt flow. When you’re finished, you will know which mgmt method to use for end-customers, which to use for your staff, and have finished diagrams for your Post-Management Flows.

Part 1: Choose your method Part 2: Post sub-mgmt workflow


Summary

Chargify Feature
All subscription mgmt methods: Billing Portal, API, Chargify Admin UI, Salesforce, Hubspot
You Need
An understanding of how end-customers, and your staff, manage subscriptions; your post-management flows (if any).
Code
No
Difficulty
◎◎

Self-Assessment 1: Subscription Management Methods

In this Self-Assessment, you will review Chargify's mgmt methods, and select the best method for your business.

1. Choose your mgmt method

There are 6 mgmt methods.
1. Choose one for your end-customers (if applicable)
2. Choose one for your staff (if applicable)
3. Review the implementation overview tab, to determine if the implementation approach matches your preferences.

Mgmt Methods (6) Implementation Overview

Mgmt Methods
Review the signup methods below, and select your preferred method for your End-Customers, and/or for your Staff.

Method

For your

Reasons to use

Billing Portal

End-Customer

Most common. No code, quick launch.

API
Developers

End-Customer

Fully custom, fully in your control. Deployed in a web app.

None

End-Customer

You do not allow your customers to self-manage their subscriptions.

Chargify Admin UI

Staff

Most common for Staff. No code, no implementation.

Salesforce

Staff

Your company uses Salesforce to manage subscriptions, and wants all changes to sync to Chargify.

Hubspot

Staff

Your company uses Hubspot to manage subscriptions, and wants all changes to sync to Chargify.

2. Review feature availability

Review the information below to ensure compatibility.

Subscription Structures Payment Methods
 

End-Customer

Staff

Structure

Billing Portal

API

Chargify Admin UI

Salesforce

Hubspot

Standard

         
Grouped          
Parent/Child          
Standalone
Parent
         
Standalone
Child
         
3. Determine authentication method

Question 1
If your method from Part 1 is Billing Portal, how do you want your users to authenticate into it?

Answer

How it Works

Email Invite

When a new subscription is created, a Billing Portal Invite email is automatically sent to the user, and the email contains a one-time access link to user Bililng Portal. Upon clicking the link, the user is logged in for the first time, and they are prompted to set a password. For each subsequent login, the user signs in with their email (the one used when signing up for their subscription) and password.

Login Page

On your website (typically in a menu, header bar, or footer bar), link directly to the main login page for your company's Billing Portal. The user signs in with their email (the one used when signing up for their subscription) and password.

In App Button

Inside your web app, a logged in user clicks a “Manage My Subscription” button. When clicked, a new browser window opens, and the Billing Portal loads.

 

4. Results

Based on your research in step 1 and 2, and based on your answer to step 3, find your guide. Below this chart, find your diagram.

If you chose...

and authentication is...

Your guide is...

Billing Portal Email Invite 1. Configure the Billing Portal
2. Configure login with Email Invite
Login Page

1. Configure the Billing Portal
2. Configure login with Link from your website

In App Button

1. Configure the Billing Portal
2. Configure login with Get One-click sign on

API n/a (api is already in your app) Build your own portal with the API

None

n/a (no users)

n/a

Chargify Admin UI

n/a (Staff)

Guide does not yet exist. These features are prebuilt and straightforward to use. For assistance, please ask your IC.

Salesforce

n/a (Staff)

Guide does not yet exist. These features are prebuilt and straightforward to use. For assistance, please ask your IC.

Hubspot

n/a (Staff)

Guide does not yet exist. These features are prebuilt and straightforward to use. For assistance, please ask your IC.


Design & Diagram: Your Post Sub Mgmt Workflow

Designing your post subscription management (sub mgmt) workflow is an important step, and typically one of the most difficult. You have an idea of what the end result should be, but it's difficult to determine exactly how to do it, and have it be easy to understand. To help, we're sharing a simple framework to think about your workflow, and providing clone-able LucidChart diagram templates that will walk you through the exact questions to ask when building your workflow.

1. Getting started - understand the workflow framework

Workflows can be complex, but this framework will help you simplify. There are 3 parts to the workflow:

Workflow Section Description
1. Trigger How the workflow begins. Typically a Chargify webhook (or perhaps real-time if you're using Chargifyjs or API responses as triggers).
2. Data Determining the data you need, finding where it exists within Chargify data.
3. Action(s) Now that you have all of the data, you apply optional filters (eg: if subscription is active), and then you perform the action that matters. There are 2 types of actions:

1. Chargify Action - making an API call to Chargify, such as updating a subscription.
2. Database Action - making a database request in your system, such as updating a user's subscription status to active

Chargify Action Database Action Both
Begin at the green Start Workflow, and read through the diagram.

mgmt-Chargify_action.png
2. Get a diagram template  Lucidchart

Each template is powered by LucidChart, an industry leader in diagramming software. You may have an account already, but if you don't, just click on a template below and LucidChart will prompt you to create a free trial. From there, clone the template into your account, by clicking File > Duplicate.

Template Design a workflow that... Example Get Template*
Free LucidChart account required
Chargify Action Makes a Chargify API Action in Chargify. When a subscription is canceled, change the user's plan. Open in Lucidchart
Database Action Talks to your database. When a subscription is canceled, set the user as canceled in your database. Open in Lucidchart
Chargify Action & Database Action Makes a Chargify API Action in Chargify and talks to your database. When a subscription is canceled, change the user's plan, and set the user as canceled in your database. Open in Lucidchart

 

3. Create your diagram

Section 1: Trigger
The trigger represents how the workflow begins. With post sub mgmt workflows, you'll need to determine the webhook. See full list of webhooks.

Commonly used:
- subscription_state_change - used to detect status changes (eg: active to canceled)
- invoice_issued - used to detect when a new issued invoice is created
- component_allocation_change - used to detect user seat changes
- subscription_product_change - used to detect plan changes

Using the API to perform subscription updates?
If you are using the API to perform actions such as plan changes, there are times when you want a real-time workflow, such as changing a user's plan in your database which unlocks new features in your app. In your diagram, simply replace the webhook trigger with a "Real-time" trigger.


flow-1.1.png

 

Section 2: Data
Spend some time determining all of the data you need to make your workflow come to life. 

flow-2.png


If there are any remaining data points not in the webhook, an API call needs to be added to fetch the data. A common example is getting the number of user seats.

flow-3.png

Section 3: Action(s)
There are 2 actions in post sub mgmt workflows: a Chargify Action (an API request to Chargify to create/update a record), a Database Action (to update your web application).

If you are doing a Chargify Action, such as updating the next billing date, your diagram might look like this:

flow-4.png

If you are doing a Database Action, such as setting a user's status to active, your diagram might look like this:

flow-5.png

4. Determine how you will implement the workflow

There are 3 implementation methods for any type of workflow.

Method Select if... Example
No Code You already know the system that will power the workflow for you, or you hire a developer. You hire a developer.
Low Code You already know the system that will power the workflow for you, and some small code is required. Zapier
Custom Code
Most common
Developers
You, or your team, are developers who plan on writing custom code to build the workflow. You build an endpoint in your app that accepts Chargify webhooks and executes the workflow.
5. Create additional workflows  as needed

If you have more than 1 post sub mgmt workflow, repeat steps 1-3 as needed.

6. Start building

You're ready to get started. [Examples of builds coming soon]


Diagram Template Collection

Workflow Get Template*
Free LucidChart account required
On subscription state change, update user status in database Open in Lucidchart
When a user changes plans, update user's plan in database Open in Lucidchart
When a user upgrade/downgrades user seats, update user seat count in database Open in Lucidchart

FAQs

1. Can Chargify help me build my workflow?
No.

2. Can Chargify help me determine which API endpoints and webhooks to use?
Yes, depending on your Chargify Onboarding Plan. Ask your Implementation Consultant.

Was this article helpful?
1 out of 1 found this helpful