WP Manifestindependent plugin directory
manifest / ecommerce / wc-shipping-sync-export-import

WooCommerce Shipping Sync Export / Import

Export and import WooCommerce shipping classes and table-rate rows from WooCommerce > Settings > Shipping > Export / Import.

by TFA · github.com/raivis-kalnins/wc-shipping-sync-export-import

★ 0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/raivis-kalnins/wc-shipping-sync-export-import/archive/refs/heads/master.zip

A small WordPress plugin for exporting and importing WooCommerce shipping data from inside the WooCommerce admin area.

The plugin adds a new section at:

WooCommerce → Settings → Shipping → Export / Import

Features

Shipping classes

  • Export WooCommerce shipping classes to CSV.
  • Import WooCommerce shipping classes from CSV.
  • Paste copied shipping-class table text and import it.
  • Create missing shipping classes by name/slug.
  • Update existing shipping-class descriptions when possible.

Table rates

  • Export WooCommerce table-rate rows to CSV.
  • Import table-rate rows from CSV.
  • Preview imported/existing table rates in the admin screen.
  • Delete selected table-rate rows.
  • Delete all table-rate rows.
  • Map old numeric rate_class IDs to the correct WooCommerce shipping classes.
  • Re-link imported table rates to a real WooCommerce shipping method instance.

Installation

  1. Download the plugin ZIP file.
  2. In WordPress admin, go to Plugins → Add New → Upload Plugin.
  3. Upload the ZIP file.
  4. Activate WooCommerce Shipping Sync Export / Import.
  5. Go to WooCommerce → Settings → Shipping → Export / Import.

Requirements

  • WordPress
  • WooCommerce
  • A user account with permission to manage WooCommerce settings
  • For table-rate export/import, the WooCommerce table-rate database table must exist

The plugin looks for this table by default:

{database_prefix}woocommerce_shipping_table_rates

Example:

wp_woocommerce_shipping_table_rates

Shipping classes CSV format

The export uses these columns:

ID,Name,Slug,Description,Product Count

Example:

ID,Name,Slug,Description,Product Count
123,Large Item,large-item,"Large product shipping class",42

When importing, the plugin mainly uses Name, Slug, and Description. IDs from another site may not match the destination site and should not be relied on for syncing.

Table rates CSV format

The table-rate export/import uses these columns:

rate_id,rate_class,rate_condition,rate_min,rate_max,rate_cost,rate_cost_per_item,rate_cost_per_weight_unit,rate_cost_percent,rate_label,rate_priority,rate_order,shipping_method_id,rate_abort,rate_abort_reason

Example:

rate_id,rate_class,rate_condition,rate_min,rate_max,rate_cost,rate_cost_per_item,rate_cost_per_weight_unit,rate_cost_percent,rate_label,rate_priority,rate_order,shipping_method_id,rate_abort,rate_abort_reason
1,0,subtotal,0,50,5,0,0,0,Standard,0,0,table_rate:1,0,
  1. On the source site, export Shipping Classes CSV.
  2. On the destination site, import Shipping Classes CSV first.
  3. On the source site, export Table Rates CSV.
  4. On the destination site, import Table Rates CSV.
  5. If the table rates use old numeric class IDs, use the mapping tool to map old rate_class values to the destination site's shipping classes.
  6. Re-link imported table rates to the correct WooCommerce shipping method instance if needed.
  7. Test checkout shipping calculations before using the imported rates on a live store.

Safety notes

  • Back up the database before importing or deleting table rates.
  • Test on staging first when possible.
  • Imported shipping-class IDs from another site may not match the destination site.
  • Table-rate method instance IDs can differ between sites, so imported rates may need to be re-linked.
  • Deleting all table rates is destructive and should only be used after a backup.

Moving from theme-based import

If your theme previously loaded a file such as shipping-import.php, remove that include from the theme after activating this plugin.

Keeping both the old theme import file and this plugin active can create duplicate admin screens or duplicated PHP functions.

Version

Current plugin version: 1.4.0

Changelog

1.4.0

  • Moved theme-based shipping import functionality into a standalone plugin.
  • Added combined Export / Import section under WooCommerce shipping settings.
  • Added shipping classes export/import.
  • Added table rates export/import and management tools.

1.3.0

  • Fixed CSV downloads by using secure admin-post.php export links.

1.2.0

  • Added table-rate CSV export.

1.1.0

  • Added export page under WooCommerce shipping settings.

1.0.0

  • Initial shipping classes CSV export plugin.