Skip to main content

Overview

This guide walks you through migrating subscription contracts from a Stripe-based system to Circuly Subscriptions on Shopify.

Step 1: Prepare Your Data

You need to export your subscription data into a JSON file. Each subscription requires:
  • The Shopify customer ID (the customer must already exist in Shopify)
  • The Stripe customer ID (cus_xxx) and payment method ID (pm_xxx)
  • The Shopify product variant ID for the subscribed product
  • Billing details (price, interval, next billing date)
  • The customer’s delivery address

JSON Format

Your file must be a JSON array of subscription objects:

Required Fields

Optional History Fields

Include these to preserve billing history from your old system:

Step 2: Find Your IDs

Shopify Customer IDs

You can find customer GIDs in the Shopify admin URL. When viewing a customer, the URL contains the numeric ID: admin.shopify.com/store/your-store/customers/123456789 The GID format is: gid://shopify/Customer/123456789

Stripe IDs

In your Stripe Dashboard:
  • Customer ID: Found on the customer detail page (starts with cus_)
  • Payment Method ID: Found under the customer’s payment methods (starts with pm_)

Shopify Variant IDs

Product variant IDs can be found in the Shopify admin URL when editing a variant, or exported via the Shopify Products CSV export.

Step 3: Run the Migration

  1. Navigate to the Migration page in the Circuly Subscriptions app
  2. Upload your JSON file using the drop zone
  3. Review the validation preview — check that all subscriptions show as “Valid”
  4. Click Migrate to start the process
  5. Wait for the migration to complete (approximately 2-4 seconds per subscription)
  6. Review the results — download the results JSON for your records

Step 4: Verify

After migration:
  1. Check the Subscriptions page in Circuly — migrated contracts should appear
  2. Open a few contracts in the Shopify admin to verify billing policies
  3. Check the customer portal — migrated contracts should be visible to customers
  4. Verify payment methods on customer records in Shopify admin

Troubleshooting

Validation Errors

These errors appear during the file upload/validation step:

Migration Errors

These errors appear after migration starts: