Bulk update subscriptions with the Import tool
Subscription properties, such as price, product title, subscription frequency, etc., can be easily updated using the merchant portal’s bulk management tools.
This guide provides instructions for performing the different subscription management bulk update types with the Import tool.
Before you start
- Store owners have default account permissions to use bulk management tools. Store owners can grant permissions to other staff members from the accounts page.
- Recharge recommends disabling any third-party notifications you don’t want triggered during bulk updates. This prevents customers from receiving unwanted emails during the update.
Update subscriptions using the Import tool
The Import tool utilizes CSV files to perform multiple update types independent of search criteria or filters. The CSV file used by the Import tool can be customized to include multiple subscription property updates in a single bulk update request.
Bulk update types
You can use the Import tool to action the following changes in bulk:
Update type |
Description |
| Update subscriptions |
Edit the properties of your subscriptions. Refer to Updating subscriptions in bulk to understand the specific properties you can update. |
| Delete subscriptions |
Warning: Deleting a subscription cannot be reversed. Permanently delete subscriptions from your store. Refer to Pause, cancel, or delete a subscription for more information. |
| Update one-time products |
Edit the properties of your one-time products. Refer to Bulk managing one-time products for more information. |
| Reschedule charges |
Edit the scheduled date of your charges. This update requires the charge_id column as all subscriptions associated with the charge_id will be moved to the specified date. Refer to Bulk managing charges for more details on updating charges in bulk. |
| Apply discounts | Apply discounts to existing addresses. Refer to the Bulk managing discounts and addresses for more information on bulk updating discounts. |
| Remove discounts | Remove discounts from existing addresses. Refer to the Bulk managing discounts and addresses for more information on bulk updating discounts. |
| Create discounts | Create discounts in bulk. Refer to the Bulk managing discounts and addresses for more information on bulk updating discounts. |
| Delete discounts | Delete existing discounts in bulk. Refer to the Bulk managing discounts and addresses for more information on bulk updating discounts. |
| Update addresses | Edit the properties of your addresses. Refer to the Bulk managing discounts and addresses table for a full list of available properties to update. |
| Delete dynamic bundle contents | Delete items from dynamic bundle subscriptions. For more information on bulk deleting one or more products from a dynamically-priced bundle, refer to How to bulk delete products from dynamic bundle subscription. |
| Issue credits |
Issue credits to customers. Refer to Managing Credits in bulk for more information. |
| Update credits |
Edit the properties of your credits. Refer to Managing Credits in bulk for more information. |
| Add free gifts |
Add free gifts to specified upcoming charges. Refer to How to bulk add or remove free gifts using the Import tool for more information. |
| Remove free gifts |
Remove free gifts from specified upcoming charges. Refer to How to bulk add or remove free gifts using the Import tool for more information. |
| Update customers | Clean up customer data (such as names and phone numbers) and update streak counts. |
| Update customer communication preferences |
Accept or deny consent for specific communication channels. Refer to Bulk update consent statuses for more information. |
| Swap bundle selections for specific subscriptions |
Update bundle selections for specific subscriptions in bulk. Refer to How to bulk swap bundle selections for specific subscriptions for more information. |
Step 1 - Prepare CSV file
To use the Import tool, you must prepare a CSV file:
- In the merchant portal, click Tools & apps and select Exports.
- Create an export using the Subscriptions option from the dropdown list.
- After processing the export, download and open the export.
- Depending on the update type you are performing, you will need to add specific properties to your CSV file. The following table is split into the different bulk update types and lists the columns required for the update. Add columns to the CSV file using the applicable properties for your bulk update type:
Note: Ensure you delete the columns you do not need on your CSV file. Failure to delete unnecessary columns may cause the update to fail or update properties you do not wish to update. If you include the status column, double-check that cancelled subscriptions are not marked as "active", otherwise they will be reactivated.
COLUMN TITLE |
SUMMARY |
ALL BULK UPDATES |
|
|---|---|
|
address_id |
The numerical Address ID associated with a customer’s subscription. If you need to find Address IDs in Recharge:
This column is optional for all bulk update types except discount and address updates. |
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
CHARGE FREQUENCY AND INTERVAL UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
charge_interval_frequency |
The numerical value of how often the product is charged depending on what is configured in the ruleset. For example, if a product were configured to charge every three months, the value here would be three. This column is required for updating the frequency. |
|
order_interval_frequency |
The numerical value of how often the product is shipped depending on what is configured in the ruleset. For example, if a product were configured to ship every month, the value here would be one. This column is required for updating the frequency.
Warning: This update remove skips and manually
updated charges. Error charges will disappear, and Recharge recalculates
the charge date based on the new frequency.
|
|
order_interval_unit |
The period in which the product is shipped as configured in the ruleset. For example, if a product were configured to ship every month, the value would be "month." This column is required for updating the frequency.
Warning: This update removes skips and manually
updated charges. Error charges will disappear, and Recharge recalculates
the charge date based on the new frequency.
|
BULK CANCELLATIONS |
|
|
status |
The status of the charge. Depending on which export you pull, the status will be different. Values are ACTIVE or CANCELLED. This column is required for bulk cancellations. |
|
cancellation_reason |
The reason the product has been canceled from the customer's subscription. This can be selected by the store owner, customer, or automatically by Recharge (e.g., max retries reached). This column is optional for bulk cancellations. |
|
send_email |
Determines whether to send an update email to the customer. Values are True or False. This column is only available for bulk cancellations. |
PRODUCT TITLE OR VARIANT TITLE UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
product_title |
The title of the subscription product. This column is required for product title updates. |
|
variant_title |
The title of the specific variant that the subscriber is subscribed to. This column is optional if you do not use variants. |
RECURRING PRICE UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
recurring_price |
The recurring cost for the subscription product. This column is required for recurring price updates. |
NEXT CHARGE DATE UPDATES |
|
|
next_charge_date |
The scheduled date when the system processes the next payment for this subscription in YYYY-MM-DD format. This column is required for next charge date updates. |
|
charge_id |
A unique string of numbers given to each charge. The charge ID is used to reference a specific charge. This column is required when completing the Reschedule charges bulk update. |
CHARGE DAY OF THE MONTH OR WEEK UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
order_day_of_month |
The specific day of the month the product is submitted to your eCommerce platform on a recurring basis.
Note: Only valid if order_interval_unit is month.
|
|
order_day_of_week |
The specific day of the week the product is submitted to your eCommerce platform on a recurring basis.
Note: Only valid if order_interval_unit is week
|
EXPIRE AFTER [x] AMOUNT OF CHARGES UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
expire_after_specific_number_of_charges |
The number of charges before the subscription expires. |
PRODUCT SWAP UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
product_title |
The title of the subscription product. This column is optional for product swap updates. |
|
variant_title |
The title of the specific variant that the subscriber is subscribed to. This column is required for product swap updates. |
|
external_variant_id |
A unique string of numbers is used to identify the specific variant on the subscription. Even if a product has no variants created in your eCommerce platform, it will still have one variant ID assigned. Recharge uses the variant ID to create each charge. This column is required for BigCommerce stores. To locate variant IDs for this column, see Finding and exporting BigCommerce product and variant IDs. This column is optional for Shopify stores if you do not use variant IDs. |
LINE ITEM PROPERTIES UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
properties |
Line item properties are custom forms on a product used to collect additional customization information. Must be styled in JSON format.
For example: |
SKU UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
sku |
This column reflects if any SKU overrides exist and will be populated if `sku_override` is set. |
|
sku_override |
If a SKU override exists, this column will show the actual SKU used to create the charge. Retrieved from `general_arttributes[sku_override]` Values are True or False. If set to True, we will override the SKU set on Shopify. |
OTHER UPDATES |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
created_at |
The date the product was added. |
|
quantity |
This is the number of products ordered. |
STORES WITH MULTI-CURRENCY |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for all bulk update types. |
|
presentment_currency |
The currency that the customer uses when they pay for their orders at checkout. This can differ from your store's default currency. The value used in this column is the abbreviated version of the currency, ie. GBP, AUD, CAD, or USD.
This column is required for multi-currency price updates. |
|
recurring_price |
The recurring cost for the subscription product. This column is required for recurring price updates. |
BULK ADDING AND REMOVING FREE GIFTS |
|
|
external_variant_id |
A unique string of numbers is used to identify the specific variant of a product in a subscription. This field specifies the variant IDs of the free gifts variant to be added. This column is required for adding or removing a free gift. |
|
charge_id |
A unique string of numbers given to each charge. This field specifies the upcoming charges to add the free gift to. This column is required for adding or removing a free gift. |
|
quantity |
This is the number of free gifts added. This column is required to add a free gift. |
BULK DELETE DYNAMIC BUNDLE CONTENTS |
|
|
subscription_id |
The numerical Subscription ID associated with a customer’s subscription. If you need to find Subscription IDs in Recharge:
This column is required for bulk deleting products from dynamically priced bundle subscriptions. |
|
external_variant_ids_to_delete |
A unique string of numbers is used to identify the specific variant of a product in a subscription. This field specifies the variant IDs of the products to be removed from a customer's bundle. Recharge uses the variant ID to create each charge. This column is required for bulk deleting products from dynamically priced bundle subscriptions. |
Bulk swap bundle selections for specific subscriptions |
|
|
bundle_variant_id |
The identifier for a specific variant within a bundle |
|
source_external_variant_id |
The original variant ID for the product you are swapping from |
|
target_external_variant_id |
The new variant ID for the product you are swapping to |
Step 2 - Import the CSV file
Note: Make sure to delete any unnecessary columns from your CSV file to avoid import errors. If you include the status column, double-check that cancelled subscriptions are not marked as "active", otherwise they will be reactivated.
After preparing the CSV file, you must import the file into the bulk management tool.
- From the merchant portal click Tools & apps and select Bulk Updates, then click Import a CSV update.
- Select your update type from the dropdown menu and click Next. Refer to the Bulk update types section for more information.
- Upload the prepared CSV file and click Next.
- Confirm the details of your update.
Step 3 - Perform the bulk update
Once your file is validated, you can perform the bulk update.
- In the merchant portal, click Tools & apps and select Bulk updates to view your validated files.
- Click Process update to begin the bulk update.
- On the pop-up modal, click Update to confirm the bulk update.
- Once the update is done, the Processing status will be marked Complete.
- From the merchant portal, click Subscriptions to confirm the updated charge dates are correct.
Revert, delete, or cancel the bulk update
If records cannot be processed or you encounter issues with the update, you can revert the bulk update using a backup file. See Revert, delete, or cancel a bulk update.
Considerations
Consider the following when processing a bulk update:
Consideration |
Notes |
| Bundles |
|
