Shopify store migration
This guide explains how to use the Genstore Migration Tool to migrate your Shopify store data (including customers, products, orders, etc.) to Genstore.
Preparation
Before migrating, please ensure the following preparations are complete to ensure data integrity and smooth migration:
- Report payment channels: If the Shopify store has enabled payment functionality, please notify the payment channel in advance to avoid payment restrictions or risks due to store changes.
- Confirm store status: Ensure the Shopify store is operating normally, without freezing, closing, or other abnormal conditions.
- Check product inventory and order status: It is recommended to carefully check the product inventory and order status of the Shopify store to ensure data accuracy.
- Back up Shopify store data: It is strongly recommended to back up Shopify store data before migration to prevent unexpected situations.
- Clean up useless data: You can clean up useless draft orders, canceled orders, etc., to reduce the amount of migrated data and improve efficiency.
Start migration
TIP
- When the amount of store data is large, the migration may take a long time.
- Do not modify API permissions during the migration process, otherwise it may cause the migration to fail.
- Try to avoid large-scale data modifications to the Shopify store during the migration process to prevent data inconsistency.
Step 1: Obtain Shopify API access permissions
- Log in to the Shopify backend and go to Settings -> Apps and sales channels.
- Click Develop apps to create a new custom app.
- Fill in the app name in the App name field, and then click Create an app.
- In the app overview page, click API credentials, and check all
read
permissions for the modules you want to migrate. - Go to the API credentials interface, check all
Read
API permissions, and click Save. - CClick Install app to obtain the Admin API access token.
- [Optional] If the data volume is large, you can create a second Shopify app to obtain an additional API token to improve migration speed.
Step 2: Open the Genstore Migration Assistant
- Log in to the Genstore merchant dashboard and navigate to Apps.
- On the Installed tab, find Migration Tool.
- Click Launch app, select Shopify as the migration source, and click Start migration.
Step 3: Store authorization
- Enter the Shopify store domain to be migrated (example:
sample.myshopify.com
). - Enter the access token, that is, Admin API access token.
- [Optional] If you have an additional API token, you can click Add access token to improve migration speed.
- After completing the settings, click Next.
Step 4: Select migration modules
Genstore supports migrating the following modules from Shopify to Genstore:
- Store (required)
- Customers (requires selecting the store module)
- Products (requires selecting the store module)
- Orders
TIP
- Order migration requires selecting the customer and product modules at the same time, otherwise the migration cannot be completed.
- We recommend migrating your products and customers first. This ensures that when orders are migrated, they can be properly linked to the corresponding product and customer information in Genstore.
For common questions regarding the migration of each module, please refer to the FAQ section.
Step 5: Customize migration settings
You can select specific data for migration based on filter conditions:
- Products: Filter by status (published, draft, archived, etc.).
- Orders: Filter by order creation time (such as 2024-01-01 to 2024-12-31).
Step 6: Start migration
- After confirming all settings, click Start migration.
- The system will start processing the migration, and you can view the migration progress in the application interface. The migration time depends on the amount of data, please be patient.
- After the migration is complete, you can enter the Genstore backend to further improve the store settings. It is recommended to read Store Quick Launch Checklist
View migration records
After completing the store migration, you can view all migration history records in the Migration Assistant app, including:
- Migration time
- Migration platform (Shopify)
- Store domain
- Migration modules
- Migration data results
- View error details
FAQs
General issues
- Insufficient API permissions: You need to recheck the Shopify API access permissions and make sure that all Read permissions are checked.
- Data format incompatibility: Some field formats may need to be adjusted manually, please check the error details for specific information.
- Network connection exception: It is recommended to check whether your network connection is normal, or try changing the network environment, or try again later.
- Incomplete data after migration: Please carefully check the error details in the migration log to confirm whether any data migration failed. If you have any questions, please contact Genstore customer support.
- Can I operate the Shopify store during the migration process? In order to ensure data consistency, it is recommended to avoid large-scale data modification to the Shopify store during the migration process.
- What checks need to be done after migration? After the migration is complete, please be sure to carefully check the store, product, customer, and order data in the Genstore backend to ensure data integrity and accuracy.
Store module
Incompatible billing addresses
- If the billing address from Shopify falls outside the countries or regions supported by Genstore, it will not be migrated.
Media migration failures
- Media files will fail to migrate in the following cases:
- File format is not supported (e.g., unsupported image or video types)
- File size or duration exceeds the allowed limits
- Your current store plan's media storage capacity has been reached
Unsupported languages
- Languages not supported by Genstore will be skipped
- Associated translation content will not be migrated
Location limit exceeded
- The number of locations supported depends on your Genstore plan. Any locations beyond the limit will not be migrated.
Customer module
Duplicate customer records
- If a customer's email or phone number matches an existing one in your Genstore store, that customer will not be imported. The system will log the duplication. In future versions, a “replace on match” option will be available.
Phone number format requirements
- Customer phone numbers must follow the international E.164 format (e.g., +12025550123). If the country code is missing, the system will automatically add +1 (US/Canada). Numbers that do not meet the format will not be imported.
Customer tax exemption settings
- Only customers marked as
fully tax-exempt
ornon-exempt
will be migrated. Customers under special tax rules will not be migrated automatically. - These customers will be flagged in the migration log. You can manually update or add their tax settings in Genstore after the migration to ensure data completeness.
Customer account passwords
- For security reasons, passwords cannot be migrated. After migration, customers can log in using email verification or reset their password.
TIP
Recommended: After migration, send a password reset email to customers. You can also pair this with a marketing campaign (e.g., offer discount coupons) to encourage customers to set a new password.
Product module
Products
Field mapping and validation
- During the product migration process, the system performs field mapping and validation based on the following rules:
- Field length must comply with Genstore limits
- Field type and format must meet Genstore requirements
- Any invalid field content may result in failure to migrate that specific field or the entire product. Details will be logged in the migration report
Product pricing and currency
- Product prices will be migrated based on the primary market currency of the Shopify store. Prices in other markets are not supported during migration
- Multi-market pricing is not included in this migration. After the migration is complete, merchants can manually configure pricing for each market in the Market Settings section of the Genstore admin
Product inventory
- Physical products: Inventory data will be migrated for each location, including available stock, in-stock quantity, and unavailable inventory
- Digital products: Only available stock quantity will be migrated. Inventory locations are not included
Collections
Genstore supports migrating Shopify collections using either manual or automated product assignment.
Manual collection migration rules
- Collection titles and descriptions will be migrated
- Products manually assigned to a collection will be matched with products in Genstore
- If a product in the collection does not match any product in Genstore, it will be skipped and not included in the migrated collection
Automated collection migration rules
- Automated collection titles and descriptions will be migrated
- Collection filter conditions will be migrated as well, and Genstore will attempt to match products based on these rules
- If the conditions are incompatible with Genstore’s product structure, the collection will fail to migrate and will be noted in the migration log
Order module
Order functionality limitations
- Imported orders in Genstore are view-only. They appear in the merchant and customer order lists but do not support any fulfillment actions such as payment, shipping, cancellation, return, or exchange.
Currency and amount are preserved
- Orders will retain their original currency and amount. Genstore does not perform currency conversion.
Order timestamps are unchanged
- Order creation time and time zone are preserved as recorded in Shopify.
Sales market settings remain unchanged
- Orders will retain their original market information regardless of whether the corresponding market is enabled in Genstore.
Recommended migration sequence for customer and product data
Order migration does not strictly depend on customer or product data. However, it is recommended to migrate products and customers first.
- If product and customer data already exist in Genstore, imported orders will link to them.
- If product and customer data have not yet been imported, the order will be stored using the original data without linkage to Genstore records.