What happens when I switch billing systems in ChartMogul?

Switching billing systems is something many ChartMogul customers have done (we've done it ourselves). We'll be here to help make it a smooth transition for you.

How ChartMogul interprets the switch depends on how you process customers in each billing system as well as your settings in ChartMogul. 


What happens

  • When you switch billing systems, your customers will exist in 2 places. If your data is being imported through one of the automatic integrations, duplicated customer profiles will always be created, even if customers have the same email address or external ID.
  • In ChartMogul, subscription metrics are generated from invoice data. If you're having subscription data migrated from 1 billing system to another, you should keep the old billing connector in ChartMogul, otherwise, customer history could be lost.
    For example, let's say you migrate subscription history from Stripe to Chargebee - though a customer might have started their subscription with you in 2019, and the first billing cycle in Chargebee begins in January 2020.  Despite being a legacy customer, you'll see the customer included in January's new business movements in ChartMogul.
  • Subscriptions in the old billing system should be canceled - this will stop MRR and subscriber counts from being inflated. This will initially create a large number of new business and churn movements, but these can be corrected with the steps outlined below.

The solution

  • Merge customers to remove duplicate profiles
  • Connect subscriptions to remove false movements

Understanding the data

It's important to understand changes in the charts and the customer list. The best place to start is by adding segments with data source filters. 


MRR Chart:

Click on Add filter > Data Source

Data source > is > [name of your billing connector]

Create another segment by clicking on NEW SEGMENT and add another data source filter. It should look something like this:



You can learn more about using segments here: https://help.chartmogul.com/hc/en-us/articles/207346675-Segmentation


Customer List:

By clicking on Customer we can sort the list by name and see all the duplicate customer profiles:




Click on EDIT COLUMNS to add a Data Source name column to the list:




You can now clearly see which data source each customer is from and their current subscriber status.


Correcting the data

Merge duplicate customers

To start, we'll merge duplicate customers so all of their subscriptions, attributes, and transactions are in the same profile.

Let’s look at Cindy as an example, Cindy now has a profile from the original data source and the new data source. She also contributes to churn events and new business events on the charts.

The following happens when merging customer records:

  • The merged customer will have the UUID, email address, and location of the customer that they are being merged into.
  • Both customers’ external IDs, tags, custom attributes, and notes will be preserved.
  • Subscriptions, MRR movements, and transactions will be collated and ordered by date.
  • If the same custom field exists on the customer record that you are merging into, the field value of the target customer will be preserved and the one from the source customer will be lost.

Note, merging customers is permanent and cannot be undone. 


This is Cindy’s original profile:



This is Cindy's new profile:


Cindy has more data in the second profile, so we’ll merge the first profile into the second profile.

  1.  Navigate to the profile with less data, or older data that should be updated.
  2.  Click Merge in the top right-hand corner.
  3.  Choose the customer you want to merge into. Suggestions will be made based on email or external ID, if nothing matches you’ll have the option to search.
  4.  Select the customer and click Next.
  5.  Check the details and then click Confirm and Merge.

We now have 1 profile for Cindy, will all of her details including:

  • The external IDs from the old and new data sources.
  • A merged customer tag.
  • The subscriber since date from her first subscription.
  • A record of her net payments.

The profile will contain her entire subscription and transaction history from both profiles:



Merging customers can be done manually through the ChartMogul interface or programmatically with the API. You can learn more about merging customers programmatically here: https://dev.chartmogul.com/docs/merging-customers-using-the-api


Connecting Subscriptions

When the old customer and the new customer profiles have been merged, the customer will still have 2 subscriptions, a churn movement, and a reactivation movement.

With everything in one profile, we can use the data editing tools to connect the 2 subscriptions and remove the false churn and reactivation movements.

You can only connect a canceled subscription to an active subscription and subscriptions paid for in the same currency. Make sure that all of the subscriptions are canceled in the old data source to proceed.

1. In the customer profile, scroll down to the MRR chart and click on Connect Subscriptions:


2. Click on both subscription lines to select:connect2.jpg

3. Click Connect:


With the subscriptions connected the false churn and reactivation events have been removed.

Before connecting subscriptions:


After connecting subscriptions:


Connecting subscriptions can be done individually through the UI or programmatically with the API. You can learn more about connecting subscriptions programmatically here: https://dev.chartmogul.com/docs/connecting-subscriptions-by-using-the-api


Please reach out to support@chartmogul.com if you need any further assistance.


Was this article helpful?