This document provides the steps to migrate to Chargebee if:
We can import all the Subscriptions available in Stripe, along with the Customers that are associated with them. Subscriptions will be imported along with the current subscription status (trial, active, canceled, and so on).
Historical data such as past invoices and transactions cannot be imported.
If a Customer present in Stripe is not associated with a Subscription, the Customer will not be imported. If you need Customers without Subscriptions to be imported into Chargebee, you should inform our migration team about the same, during the import.
The cards stored in Stripe's vault will continue to remain there along with the Customer details. Once we import the subscriptions into Chargebee, we will map them to the Customer information present in Stripe.
You should enable your LIVE site in Chargebee and connect it with your Stripe account.
Create all the necessary Plans, Addons, and Coupons in your Chargebee TEST and LIVE sites. You need to create them yourself because we will not use the plans and coupons that are already in your Stripe account. You can learn more about setting up your web interface here.
Once you've made all the required configurations in Chargebee, test your sign up flow to ensure you have everything covered.
Before the migration commences, you should start getting all new signs up through Chargebee. This is to ensure that there are no new additions to the subscriptions that need to be migrated and also to ensure your sign up flow is well-tested.
Here's a summary of the process:
Once we receive your migration request, our support team will send a migration checklist with instructions on getting your Chargebee account setup for the migration.
After you have ticked everything off the list and have set up your Chargebee account, we will get the subscription data from your Stripe account and import the Subscriptions into your Chargebee TEST site for review.
The data imported into your TEST site will contain slightly modified email addresses to ensure that your Customers do not accidentally get an email while you are testing. We will also map the card details, so you will be able to see the last 4 digits and expiration date in Chargebee to help you with the verification.
Once you have reviewed the data and given us the go-ahead, we will retrieve the Subscription data again from Stripe on the day of migration. Depending on your preference, we can cancel the corresponding Subscriptions in Stripe, leaving only the Customers intact (Customers will remain in Stripe since the card details are part of the Customers). Or, you can cancel the Subscriptions in Stripe and let us know.
The Subscriptions will then be imported into your LIVE site and we will also map them to the card details in Stripe.
The migration process ensures that there will be no double billing. First, you need to have stopped all new sign ups from happening in Stripe. This task will be a part of the migration checklist that we will share with you; we cannot proceed with the migration unless this is done.
Next, before the import begins in Chargebee, all the subscriptions in Stripe should be canceled. As explained above, based on your preference specified in the migration checklist, this can either be done by us or by you.
As an additional precaution, if there are any subscriptions that have been scheduled to renew on the date of migration, the renewal will be postponed by a few days (usually 2 or 3 days, based on your preference). This will allow you sufficient time to review all the data in the LIVE site and make any changes if needed before renewals start happening. Say the migration is scheduled for the 1st of June and a few subscriptions are also scheduled to be renewed on that date, and you'd like the renewals to be postponed by 2 days, the renewal will happen on the 3rd of June.
After we receive the migration request, we will share a migration checklist. The checklist is a set of tasks that need to be completed before the migration can happen. This is to ensure that everything is set up for the migration to be completed without any issues or delays.
Most tasks are quite straightforward; however, we have explained some of them here:
Invite a Chargebee user (Settings > Site Settings > Users) to your Chargebee LIVE site as an Admin.
We need access to verify the data during the migration. After the migration is complete, you can revoke access.
Invite a Chargebee user with read-only access to your Stripe LIVE account. Needed to map the cards in Stripe with the Customers in Chargebee.
We need access to your Stripe account so that we can verify the data during the migration and also review the subscription status and plan details. After the migration is complete, you can revoke access.
Chargebee will not send any email notifications to customers that are being imported during the migration process. Is that okay?
During the migration, we do not trigger any email notifications by default. If you need your customers to receive an email when their subscriptions are created, you can specify that and we will send the email notification.
Should Chargebee disable webhooks for events that are triggered for subscriptions during the import process?
Generally, if you are integrating with Chargebee via the API and you have also configured your webhook URL, events generated in Chargebee will be notified via the webhook URL. During data migration, if you have configured a webhook URL in Chargebee, we will notify your system of the events that are generated. If you do not want your system to be notified of these events, you can specify your preference accordingly. If you are not an API user, you can specify "NA".
Mapping plans between Stripe and Chargebee: You will have plans already in Stripe and will be creating corresponding plans in Chargebee. We need to know the plan mapping between Chargebee and Stripe to be able to correctly import the Subscriptions. You should specify the Plan ID and not plan name or description.
In Chargebee, you will find them in the Plans page, parallel to the plan name:
In Stripe, you can get the plan ID from the Plan Details section as shown below:
You can submit a migration request here.
We hope to see you aboard soon!