Recharge Migrations Overview

Welcome to Ordergroove! We’re excited to help you power your best subscription experience for happy, high-lifetime value customers. Migrating your existing subscription program is a big step towards this seamless experience, so we’re proud to offer you an Ordergroove-managed, white glove migration experience.

You’re in great company - over 70% of current Ordergroove customers have migrated prior programs to get started, including the likes of Dollar Shave Club, Daily Harvest, and OLLY. This guide will walk you through the steps of our migration process, ownership of each task, and where we’ll need your direction/preference. So let’s dive in.

Ordergroove will Where we need your help
Extract the subscription, customer, and payment data from Recharge using purpose-built tools.
  • Provide Recharge API key
  • Clarify payment gateway considerations and select preferred approach.
  • Provide direction + mapping for promotion structure of migrated subscriptions.
Automatically transform data into supported JSON file. We use a newline delimited JSON file - you can read more about that here. This one’s on us!

Pre-process data and identify errors to resolve pre-migration and implement fixes based on your input. These include standardized fixes that do not require additional input from your team, and some merchant-specific fixes dependent on your current program data that may require additional direction from your team.

Load data into system. Post migration, run scripts to update migrated subscriptions with promotion structure based on mapping your team provided.

  • Provide canary test accounts
  • Some errors will need to be fixed directly in Recharge.
  • Provide direction + preference for other error resolution.

Pre-migration Steps

Recharge API Token

Prior to beginning the extraction process, your team will need to provide us with a Recharge API token. This API token allows Ordergroove to extract data from Recharge and migrate it to our platform. To create one, follow the following steps:

  1. Open the ReCharge app inside Shopify
  2. On the left side nav bar, click Apps and then click API Tokens
  3. image1.png
  4. Click Create an API token button on the top right
  5. Fill out the form
    1. Token nickname is your name
    2. Contact email is your email address
    3. API Client Secret will be left blank
  6. Change the Scope settings to Read access for each permission. This allows Ordergroove to read the data to be migrated. You can leave Custom Notifications permission as No access
  7. Check the Terms of Service consent
  8. Click Save

image2.png

You're all set, the Recharge API key is created.

 

Canary/Test Subscriptions

You will also need to create 5-10 “canary” subscriptions that we can run a test migration on prior to your actual migration (we’ll cover that in the actual migration section of this guide).
A test customer/subscription is a subscription in your Recharge program associated with you or one of your employees. Create a customer in Recharge using your information or a coworker's information.

We recommend going through the full process, testing out both Ordergroove and Shopify:

  1. Extract data from ReCharge
  2. Import the test customer/subscription into Ordergroove
  3. Place an order through Ordergroove into Shopify
  4. Confirm the payment processed correctly

You should also ensure all Recharge migration requirements are met. You can read more about those here.


The Extraction Process + Key Considerations

The extraction process for migrations will vary depending on the following program specifications:

  • Your payment gateway
  • Your Shopify checkout configuration
  • Your discount/promotional structure

So let's break that down.

Your Payment Gateway

A note on all payment gateways: Shopify Subscription APIs only support specific payment providers. Please make sure your payment provider is supported.

If using a non supported gateway:

You will need to migrate to a Shopify Subscription API supported gateway prior to your Ordergroove migration. As this migration will only involve your eCommerce platform and payment gateway, this is an external, separate migration to your subscription provider migration. This migration must be performed prior to migrating to Ordergroove.

Helpful Tips: While these migrations aren’t within our influence, we can share that they typically take around 6-8 weeks to complete and can be conducted by Shopify Pro Services for an additional fee. Please speak to your Shopify representative for more information.

If using Auth.net:

Luckily, Auth.net is a Shopify supported payment gateway. However, some Recharge merchants use Spreedly tokens in place of authentic Auth.net tokens, which are unsupported by the Shopify Subscription APIs. Ordergroove has purpose-built tooling to update these Spreedly tokens to authentic Auth.net tokens - all we need from Recharge + your team is mapping between these two token types to direct our update.

If using any other supported gateway:

Congratulations! Our purpose-built tooling will automatically extract the payment data from Recharge for you. We’ll let you know if we need any further direction at this stage.

 

Verify Shopify checkout configuration

Before migrating, we need to ensure your Shopify checkout settings are configured correctly. Here are the steps to check your settings:

  1. Navigate to your Shopify store and click on Settings, located on the bottom left of the navigation
  2. Click Checkout on the left navigation
    image3.png
  3. Under the Customer information section
    1. If Shipping address phone number, Address line 2, or Company name field are set as Required, open a ticket requesting Ordergroove to enable the specific fields in Ordergroove. 
    2. If Shipping address phone number, Address line 2, or Company name field are set as Don’t include or Optional, you’re all set!

Your Program Discounts and Subscription Types

Subscription program discounts and differing subscription types are components separate from the active subscriptions in your program. We’ll discuss both aspects here.

 

Discounting/Promotions

It’s subscription industry standard that promotions/discounts aren’t migrated over with the subscription and customer data. But we’ve built options into our migration process that allow your team to choose and apply the promotional structure of your choice.

Important: Prior to extracting your subscription, customer, and payment data, please let our team know which approach you prefer.

Subscription discounting/promotions are separate from other, advanced subscription “types,” like prepaid subscriptions or bundle subscriptions (see the next section for those). We can apply most discounts to your migrated subscriptions post migration, including flat rate discounting, GWP, or Subscribe More, Save More logic - so long as your entire program is receiving the same discount/offer and you provide us with some important input. You can also elect to have your team apply these to your migration file pre-migration with our guidance.

Some offers, like Nth order incentives, require your team to make changes to the migration file pre-migration to denote how many orders of that subscription have already been received. We’ll walk you through some available migration options for your program discounts below.

1: Apply a programmatic discount to migrated subscriptions post migration

This is the most straightforward path forward. After we’ve migrated your subscription, customer, and payment data into Ordergroove, our team can apply any supported discount/promotional structure. This approach will apply the same discount to all migrated subscriptions; so it’s not possible to have some subscriptions on grandfathered discounts and others on new, different discounts. Our team uses the product feed price as the base price, and then discounts the price programmatically with set logic.

2: Pricelock subscriptions

Ordergroove subscriptions base pricing off of the real-time, dynamic price of a product, which allows your team to flexibly manage your product catalog as new pricing and/or packaging needs arise. Whereas on Recharge, recurring orders are based on whatever the price was at initial purchase. If you prefer the pricelocked approach, we can pricelock your subscription into the discounted price your customers are currently paying for their subscriptions. This is a simple approach that achieves the goal of keeping your customers on the same pricepoint as pre-migration. We can do this post migration if your team provides us a CSV of OG subscription IDs, mapped to the correct price to assign.

This can be complicated to manage programmatically, however, if your brand conducts a pricing increase or changes the discount offering on your subscription program. Additionally, SKU swap, or the ability for customers to swap their product to another variant (flavor, roast, etc.), is complicated with pricelock. Subscribers will be locked into their pricelocked subscription, and if SKU swapping to another product of a differing price, won’t be charged the new price.

3: Apply mapped discount logic to migrated subscriptions based on initial data

This approach is best for programs where some subscriptions are on differing discounts than others, and you’d like to transfer these 1:1 during your migration. This is possible to achieve by making changes to the migration JSON file prior to migration. There are a few ways to approach this - we’ll list out the options below.

  1. Within the migration file, your team can set extra_data on a subscription to identify the right offer to assign to it prior to migrating. If done post migration, we’ll need a CSV of OG subscription IDs and the correct extra_data value to add.
  2. Set a subscription to use a specific offer profile (to create different discounts for different subs). If done post migration, we will need a CSV of OG subscription IDs and OG offer IDs to change to.
  3. Your team can set a customer price_code (to apply specific discounting to all customer subs if price code is set) pre migration. If done post migration, we’ll need a CSV of OG Customer ID and price_code value to add.

After we’ve uploaded your migration file, our system will know which promotions to assign to which subscriptions based on their unique identifiers. 

 

Advanced Program Structure

Advanced subscription types include Prepaid and Bundle subscriptions. In both cases, you will need to update the JSONL file prior to the migration with the following components:

  • Prepaid: How many fulfillments have been received for prepaid subscriptions pre-migration
  • Bundles: Components of the bundles must be set by your team pre-migration

This should be done immediately prior to the actual migration itself to ensure the most up to date information, and to minimize the risk of additional modifications necessitated to the JSONL file post your team’s edits. This cannot be done post migration, as we can’t modify Pay as You Go (PAYG) subscriptions to Prepaid subscriptions or single product subscriptions to bundle subscriptions post migration. Our team will provide you with explicit instructions on how to format this information within the migration file.

  • Here is an example of the Prepaid subscription context data that you’ll need to update your migration file with immediately prior to migrating.
  • Here is an example of the Bundle subscription context data that you’ll need to update your migration file with immediately prior to migrating.

While we want to take as much off your team’s plate as possible, these components need to be updated by your team as we’re unable to retrieve this information from Recharge’s system.


The Transformation Process

This one’s on us - we’ll automatically transform your provided data into a supported JSON file. No work from you necessary!


The Loading Process

The Loading process of your migration can be broken down into 4 phases. We’ll explain the overview of what to expect from each phase below; but will take time with your team to review in more granular detail what to expect before kicking off your migration. A few components to highlight beforehand:

  • Timeline expectations: The migration process is iterative, dependent on how many Recharge data errors we discover that require correction. Barring any complications, you can expect the actual migration to take place over the course of 1-2 days, with regular updates from our team throughout this time. Resuming order processing varies depending on how many Recharge data errors we encounter during the migration itself - but migrations without extensive errors uncovered resume normal order placement in under 3 days.
  • Ordergroove support during your migration: As we’ve mentioned before, we will be by your side every step of this migration; keeping your team updated on progress as we complete essential tasks.
  • Customer communications: You’ll want to let customers know what to expect during your migration ahead of time; including temporary pauses to subscription management and order placement as well as timeline. You should be honest with them and emphasize that this migration is to improve their subscription experience; and even call out what improved functionalities they’ll have access to once migrated.

Where we’ll need your help during this phase:

To ensure the utmost integrity of your migrated data, we take a multi-fold approach to error resolution. We’ll handle the majority of your migration data errors during our pre-processing dry-runs; but residual errors will be automatically and programmatically fixed during the migration process. Any last errors will be fixed post migration during our error resolution phase. And for many of these errors, we’ll need your input/preferred changes to make to proceed. However, some errors need to be fixed directly in your Recharge instance - so for these, we’ll let your team know exactly what needs to be done. 

If you’ve chosen to map your subscriptions to a specific offer or promotion in the JSON file (see above, discount/promotional structure), you’ll want to work with our team to do this at this time.

 

Phase 1: Run canary test migration

As mentioned above, prior to running the migration, we'll "dry-run" or pre-process your migration data to identify and resolve any errors found.  After amending any errors, we’ll want to perform a test/canary migration on a few test subscriptions owned by members of your team (you should have created those in our pre-migration phase).

Phase 2: Run the migration

After validating the canary subscriptions’ migration success, we’ll run your actual migration for you.

Phase 3: Post-migration error resolutions

As mentioned, many of these errors will be automatically fixed by our team during the migration process. But there may be some errors we identify during the actual migration that we’ll need your input to resolve. We’ll tag your team in for direction at this point.

Phase 4: Program promotions updates

As outlined above, if you’ve chosen to apply standard, programmatic promotions to your migrated subscriptions, we’ll do so for you during this time. Work with our dedicated migrations teams to complete this.


Post Migrating Hypercare

For 30 days post migration, our team will monitor program performance and identify/solve any unmet requirements or issues that arise.