3 min read

Import multilingual WooCommerce products from Google Sheets

To import multilingual WooCommerce products from Google Sheets, keep the shared product identifier and all translated fields in one structured row. Shirely Matrix Mode reads language-suffixed columns, creates or updates the product language versions, and connects their WPML relationships during the import.

Edits in Google Sheets do not change WooCommerce by themselves. Shirely fetches the current values when you start an import manually or when a configured Automation slot runs.

Use one product identifier across languages

Translated titles and descriptions are content, not reliable identifiers. Keep SKU and Matrix ID / External ID stable across the row so the importer can identify the exact product while creating or updating its language versions.

sku,name|en,name|de,description|en,description|de,regular_price
DRILL-100,Power Drill,Bohrmaschine,18V cordless drill,18-V-Akku-Bohrmaschine,149.99

Shared operational fields such as SKU should remain outside the language columns. Use language suffixes only where the value genuinely differs by language.

Choose public or private access

  • A sheet published to the web can be imported without credentials.
  • A private sheet requires a Google Service Account and must be shared with its email address.
  • Every export to Google Sheets requires a Service Account.

Translation files can contain unreleased copy, internal terminology and commercial data. Use a private sheet when those values should not be available through a public URL.

Prepare categories before product assignments

Translated category names are not enough to reconstruct a hierarchy. For a separate category import, use source_id and parent_source_id so parent-child relationships do not depend on names.

Import and verify the category structure before a large product run when the products depend on that translated taxonomy.

Prepare and verify global attributes separately

Variable products also depend on global attribute taxonomies and their terms. Shirely 1.3 keeps the shared global-attribute path as the default and provides an explicit Translate global attributes (WCML Matrix opt-in) for Product Matrix. Use it only when the taxonomy is already configured as translatable in WPML/WCML; Shirely does not change that site configuration.

Configure or verify translated terms in WooCommerce and WPML/WCML, keep taxonomy keys stable, and test a complete variable product in every language. See the WooCommerce product attributes and WPML import guide for the full preparation and verification workflow.

Run a multilingual sample first

  1. Prepare one simple product with two language columns.
  2. Import it and open every language version in wp-admin.
  3. Check the WPML language switcher and translated product URLs.
  4. Verify price, stock, images and categories on the storefront.
  5. For variable products, test every variation selector and SKU.
  6. Only then extend the sheet to the full catalog.

A completed import does not prove that every translated archive, attribute term or storefront selector is correct. Review the rendered catalog, not only the import totals.

Repeat imports use matching, not product skipping

Products, categories and Matrix Mode rows are processed every time. Smart Sync’s unchanged-row skipping applies only to posts, pages and custom post types with a mapped Record ID.

For product sheets, stable identifiers are the protection against unrelated records. Keep the same SKU or Matrix ID / External ID when correcting translations and running the sheet again.

Use a deliberate run or a reviewed schedule

Shirely does not monitor and push every cell edit into WooCommerce. Translators can review the sheet without changing the store; WooCommerce changes only when a manual import or configured Automation slot processes the current values.

Prove the job with Run now and check Run History. WP-Cron offers hourly, twicedaily and daily schedules but does not guarantee exact timing; system cron with WP-CLI is more predictable when timing matters. Sequence jobs that can write the same products, terms or WPML/WCML groups.

For the general non-WPML setup, see how to import WooCommerce products from Google Sheets. For access rules, exports and other supported data types, use the WooCommerce Google Sheets import and export hub.