Premium WooCommerce Plugin

WC Universal Import Export Documentation

Installation, license activation, import/export workflows, templates, background jobs, logs, and troubleshooting for the Freemius paid version.

Version 1.0.3Updated May 2026Menu: WooCommerce > Import Export

Overview

WC Universal Import Export is a premium WooCommerce migration and store-management plugin. It lets store owners export and import products, orders, users/customers, coupons, product reviews, product categories, custom fields, and metadata using CSV or JSON files.

CSV and JSONUse spreadsheet-friendly CSV files or developer-friendly JSON files.
Metadata supportCustom fields are handled through the meta_json column.
Freemius licensingLicense activation, account links, and updates are handled by Freemius.

Requirements

RequirementMinimum / Notes
WordPress6.2 or newer
WooCommerceRequired and must be active
PHP7.4 or newer
User capabilityAdmin users with manage_woocommerce
LicenseA valid Freemius license is required for premium import/export actions
Important: Always test imports on a staging site first. Import operations can create or update real store records.

Installation

  1. In WordPress admin, go to Plugins > Add New > Upload Plugin.
  2. Upload the plugin ZIP file.
  3. Activate the plugin.
  4. Make sure WooCommerce is installed and active.
  5. Enter your license key when the Freemius activation screen appears.
  6. Go to WooCommerce > Import Export.
Freemius license activation screen

Freemius license activation screen. Customers paste their license key here to unlock the premium plugin.

Plugin menu location under WooCommerce

After activation, customers can open the plugin from WooCommerce > Import Export. Freemius account and contact links appear below it.

License Activation

This is a paid Freemius version. Customers do not need to edit wp-config.php or add developer constants. They only need the license key from their purchase email or Freemius account.

  1. Install and activate the plugin.
  2. Paste the license key into the Freemius license activation screen.
  3. Click Activate License.
  4. Open WooCommerce > Import Export.
Developer note: Freemius may show optional sandbox constants in the developer dashboard. Those are for private local testing only and are not customer installation steps.

License-gated actions

  • Export data
  • Import data
  • Run queued background jobs
  • Premium metadata workflows

Admin Dashboard After Activation

After a valid license is activated, the plugin dashboard opens as a guided workspace with modern cards for export, import, templates, logs, background jobs, and safety guidance.

Main WC Universal Import Export dashboard

Main plugin dashboard with export and import panels.

Supported modules, templates, jobs, and logs

Supported modules, templates, safety checks, background jobs, and activity logs.

Export panelSelect data type, file format, limit, offset, and optional status filter.
Import panelUpload CSV or JSON files, choose dry run, enable updates, add column mapping, or queue larger imports.
Templates panelDownload starter CSV templates for each supported module.
Logs and jobsReview recent activity and manually process queued import jobs.

Supported Data Types

Data typeMatching ruleCommon fieldsMetadata
ProductsID or SKUName, SKU, status, prices, stock, categories, tagsmeta_json
OrdersExisting order ID, otherwise new orderStatus, customer, totals, billing, shippingmeta_json
Users / CustomersExisting user ID or emailEmail, username, name, billing and shipping detailsmeta_json
CouponsID or coupon codeCode, amount, discount type, usage limits, expirymeta_json
Product ReviewsComment IDProduct ID, author, rating, content, approval statusmeta_json
Product CategoriesSlugName, slug, parent slug, descriptionmeta_json

Exporting Data

  1. Go to WooCommerce > Import Export.
  2. In the Export Data panel, choose the data type.
  3. Select CSV or JSON.
  4. Set a limit and offset when exporting large stores.
  5. Optionally enter a status filter, such as publish, completed, or processing.
  6. Click Export Now.

Large exports

For large stores, export in batches. Example: export 500 rows with offset 0, then 500 rows with offset 500, then 500 rows with offset 1000.

FieldPurpose
LimitMaximum number of records to export.
OffsetNumber of records to skip before export starts.
Status filterOptional filter for statuses when supported by the selected data type.

Importing Data

  1. Go to WooCommerce > Import Export.
  2. In the Import Data panel, choose the matching data type.
  3. Select the file format that matches your upload.
  4. Upload the CSV or JSON file.
  5. Enable Dry run first to validate the file without saving data.
  6. Enable Update existing records when the import should update matching records.
  7. Use background mode for larger files.
  8. Click Import Now.
Recommended flow: Run a dry run first. Review created, updated, skipped, and error counts. Then run the real import after the file looks correct.

What skipped rows mean

Rows are usually skipped when the plugin finds an existing matching record and update mode is disabled, or when a row does not contain enough identifying information.

CSV and JSON Format

CSV

CSV files must include a header row. The plugin can detect common delimiters including comma, semicolon, and tab.

sku,name,regular_price,stock_quantity,meta_json
TSHIRT-001,Blue T-Shirt,29.99,50,"{"_custom_label":"Summer"}"

JSON

JSON imports should be an array of objects where each object represents one record.

[
  {
    "sku": "TSHIRT-001",
    "name": "Blue T-Shirt",
    "regular_price": "29.99",
    "stock_quantity": "50",
    "meta_json": { "_custom_label": "Summer" }
  }
]

Metadata column

The meta_json field stores custom fields as a JSON object. During import, those values are written back to the correct WordPress object meta table.

Column Mapping

Column mapping lets you import CSV files generated by another plugin, marketplace, supplier, or ERP system without renaming every header manually.

Use a JSON object where the left side is the source CSV header and the right side is the plugin target field.

{
  "Product Name": "name",
  "SKU": "sku",
  "Price": "regular_price",
  "Stock": "stock_quantity"
}
Tip: Download a template first, then compare your source file headers against the template fields.

Downloadable Templates

The plugin includes CSV templates for all supported modules. Templates help customers build valid import files quickly.

  • products-template.csv
  • orders-template.csv
  • customers-template.csv
  • coupons-template.csv
  • reviews-template.csv
  • categories-template.csv

Templates are available from the plugin dashboard and are also included in the plugin package under the samples folder.

Background Imports

Background imports queue the uploaded file and process it through WP-Cron in batches. This is useful for larger files where a normal browser request may time out.

  1. Select Run in background before starting an import.
  2. The plugin creates a queued job.
  3. WP-Cron processes the job in batches.
  4. If the site has low traffic, click Run queued jobs from the dashboard.
Server note: If WP-Cron is disabled or blocked, background jobs may not run automatically. Use the manual Run queued jobs button or configure real cron on the server.

Logs and Troubleshooting Data

The plugin records recent actions to help with support and debugging.

Log typeWhat it records
ExportsSelected data type, format, and result.
ImportsCreated, updated, skipped, and error counts.
TemplatesTemplate downloads.
JobsQueued and processed background jobs.

Ask customers to send the log result, plugin version, WooCommerce version, and a small sample import file when reporting issues.

Safe Migration Checklist

  • Make a full database and file backup before real imports.
  • Test on a staging site before using production data.
  • Run dry run first and check the result counts.
  • Use unique SKUs for products and unique emails for customers.
  • Validate meta_json before import.
  • Import customers before orders when migrating a whole store.
  • Use small batches for very large stores.

Troubleshooting

IssueLikely causeFix
All rows skippedExisting records were found and update mode is disabled.Enable Update existing records or remove matching IDs/SKUs/emails when creating new records.
Invalid user IDImported customer IDs belong to another site.Import by email. The plugin creates missing users and stores the source ID as reference.
License key is not acceptedThe key may belong to another product, plan, or site limit.Check the license in your Freemius account, then retry from the plugin license screen.
Background jobs do not runWP-Cron is disabled or no site traffic.Use the manual Run queued jobs button or configure server cron.
Metadata not importingInvalid JSON in meta_json.Validate the JSON and escape quotes correctly in CSV files.

FAQ

Does the plugin require WooCommerce?

Yes. WooCommerce must be installed and active.

Can the plugin import custom fields?

Yes. Custom fields and metadata are imported through the meta_json field.

Do customers need to edit wp-config.php?

No. Customers only need to install the plugin and activate the Freemius license key.

Which file formats are supported?

The current version supports CSV and JSON.

Does it support scheduled imports?

Not yet. The current version supports manual imports and background queue processing.

Support and Updates

Support should include plugin installation help, licensing questions, bug reports, and guidance for documented import/export features.

Support should not include custom development, server configuration, theme customization, unrelated third-party conflicts, or manual data cleanup services unless offered separately.

Recommended support request details:

  • Plugin version
  • WordPress and WooCommerce versions
  • PHP version
  • Selected data type and format
  • Dry-run result
  • Small sample of the import file
  • Error message or screenshot