WP Manifestindependent plugin directory
manifest / ecommerce / shopify-woocerce-migrator

Advanced Shopify to WooCommerce Importer

Transfer all the products and categories from Shopify to woocommerce with Shopify API

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/enigmart/shopify-woocerce-migrator/archive/refs/heads/master.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

logo_teal_horizontal

Advanced Shopify to WooCommerce Importer

A powerful WordPress plugin that migrates products and collections from Shopify to WooCommerce using the Shopify Admin API with advanced features like duplicate protection, error handling, and real-time progress tracking.

Features

  • ✅ Complete Product Import - Full product data with images, prices, stock, SKU, and descriptions
  • ✅ Collections Import - Shopify collections as WooCommerce categories
  • ✅ Multiple Image Support - Featured image + gallery images
  • ✅ Duplicate Protection - Safe to run multiple times without creating duplicates
  • ✅ Error Handling & Logging - Comprehensive error handling with detailed logs
  • ✅ Progress Tracking - Real-time progress bars and status updates
  • ✅ API Connection Testing - Test your Shopify connection before importing
  • ✅ Cursor-based Pagination - Compatible with latest Shopify API (2025-07)
  • ✅ Timeout Protection - Handles large catalogs with automatic timeout management

Requirements

  • WordPress 5.0+
  • WooCommerce 3.0+
  • PHP 7.4+
  • Shopify store with Admin API access

Installation

  1. Download or clone this repository
  2. Upload the shopify-woo-importer folder to /wp-content/plugins/
  3. Activate the plugin through the WordPress admin panel
  4. Navigate to Shopify Import in the admin menu

Shopify API Setup

Step 1: Create a Shopify App

  1. Go to your Shopify Admin → Settings → Apps and sales channels
  2. Click "Develop apps" or "Build apps in Dev Dashboard"
  3. Click "Create an app"
  4. Enter app name (e.g., "WooCommerce Importer")
  5. Set App URL to your WordPress site URL

Step 2: Configure API Permissions

  1. Go to Configuration → Admin API integration
  2. Click "Configure Admin API scopes"
  3. Enable the following permissions:
    • ✅ read_products
    • ✅ read_inventory
    • ✅ read_product_feeds
  4. Click "Save"

Step 3: Install App & Get Token

  1. Click "Install app"
  2. After installation, go to "API credentials"
  3. Click "Reveal token once" under Admin API access token
  4. Copy the token immediately (starts with shpat_)

⚠️ Important: The token is shown only once. Store it securely!

Plugin Configuration

  1. Go to WordPress Admin → Shopify Import
  2. Enter your configuration:
    • Shop URL: yourstore.myshopify.com
    • Admin API Access Token: shpat_... (from Shopify)
  3. Click "Save Configuration"
  4. Click "Test Connection" to verify setup
  5. If successful, you'll see your shop name and domain

Usage

Import Process

  1. Import Collections First

    • Click "1. Import Collections (Categories)"
    • This creates WooCommerce categories from Shopify product types
    • Watch the progress bar and logs
  2. Import Products

    • Click "2. Import Products"
    • This imports all products with full data
    • Process may take time for large catalogs
    • Safe to run multiple times (duplicate protection)

What Gets Imported

Collections → Categories

  • Category name and description
  • Category images (if available)
  • Shopify collection ID (for reference)

Products → WooCommerce Products

  • Basic Data: Title, description, short description
  • Pricing: Regular price, sale price (if applicable)
  • Inventory: SKU, stock quantity, stock management
  • Images: Featured image + gallery images
  • Categories: Auto-assigned based on product type
  • Metadata: Shopify product ID for reference

Advanced Features

Duplicate Protection

The plugin automatically prevents duplicate imports by:

  • Storing Shopify product IDs as WordPress meta data
  • Checking existing products before importing
  • Skipping already imported products with log messages

Error Handling

  • Individual Product Errors: If one product fails, others continue
  • API Rate Limiting: Automatic handling of Shopify API limits
  • Network Timeouts: Graceful handling of connection issues
  • Detailed Logging: Every action is logged for troubleshooting

Performance Optimization

  • Small Batches: Imports 10 products at a time to avoid timeouts
  • Cursor Pagination: Uses latest Shopify API pagination methods
  • Memory Management: Automatic memory limit increases
  • Timeout Protection: 5-minute timeout limits with progress tracking

Troubleshooting

Common Issues

401 Unauthorized Error

  • Verify your Admin API Access Token is correct
  • Ensure the token has required permissions
  • Check that the Shopify app is properly installed

404 Not Found Error

  • Verify your Shop URL format: yourstore.myshopify.com
  • Ensure you're using the correct API version (2025-07)

Timeout Errors

  • Normal for large catalogs - the plugin will resume where it left off
  • Run the import multiple times to complete large catalogs
  • Check server PHP memory and execution time limits

Image Import Issues

  • Ensure WordPress can download external images
  • Check file permissions in /wp-content/uploads/
  • Verify your server allows external HTTP requests

Performance Tuning

For large catalogs, consider:

// In wp-config.php or .htaccess
ini_set('memory_limit', '512M');
ini_set('max_execution_time', 300);

Logs and Debugging

All activities are logged in:

  1. Plugin Interface: Real-time logs in the import screen
  2. WordPress Debug Log: If WP_DEBUG_LOG is enabled
  3. PHP Error Log: Server-level error logging

API Rate Limits

Shopify has API rate limits:

  • REST Admin API: 40 requests per app per store per minute
  • The plugin automatically handles rate limiting with small batches

Limitations

  • Variable Products: Basic support (creates simple products for variants)
  • Product Attributes: Not imported (Shopify options → WooCommerce attributes)
  • Customer Reviews: Not imported
  • SEO Metadata: Not imported
  • Product Variants: Creates simple products instead of variable products

Support

Before Requesting Support

  1. Check the Import Log for detailed error messages
  2. Verify your Shopify API setup and permissions
  3. Test the connection using the built-in test feature
  4. Check WordPress and server error logs

Getting Help

  • Review Shopify's Admin API documentation
  • Check WordPress and WooCommerce compatibility
  • Ensure server meets minimum requirements

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

License

This plugin is open source and available under the GPL v2 or later license.

Changelog

Version 1.0

  • Initial release
  • Complete product and collection import
  • Duplicate protection
  • Error handling and logging
  • Progress tracking
  • API connection testing
  • Cursor-based pagination support