HomeGetting StartedMigrating from WooCommerce

Migrating from WooCommerce

Switching from WooCommerce? TitanCart includes a built-in WooCommerce Migration tool that reads the WooCommerce data already on your site and copies it into TitanCart’s own tables — products, categories, tags, customers, orders, reviews and coupons — in a single guided pass. It is part of the core plugin, so there is nothing extra to buy or install.

1. Before you start

A few things to check first:

  • WooCommerce data must still be on this site. The tool reads directly from WooCommerce’s database tables, so WooCommerce (or at least its data) needs to be present on the same WordPress install when you migrate. Do not delete WooCommerce until the migration is done and verified.
  • Back up your database. The migration only adds data to TitanCart’s tables and never deletes anything from WooCommerce, but a fresh backup is always the right move before any bulk operation.
  • You need an administrator account. The tool is available to administrators only.

Tip: The migration is safe to run more than once. It skips records it has already imported — matching products by their product code (SKU), categories and tags by slug, customers by their WordPress user, and orders by order number — so a second run fills in anything that was missed rather than creating duplicates.

2. Open the migration tool

In wp-admin, open TitanCart and go to Settings → WooCommerce Migration. The tool opens and immediately scans the site for WooCommerce data (“Scanning for WooCommerce data…”).

If no WooCommerce installation or data is found, you will see a WooCommerce Not Detected message instead — install WooCommerce with its data present first, then come back.

3. Review what was detected

When WooCommerce is found, a detection card shows the WooCommerce version and whether your orders use HPOS (High-Performance Order Storage) or legacy storage. The tool reads either layout automatically — you do not need to change anything in WooCommerce.

Below that is a grid of everything available to import, each tile showing how many records were found, for example “1,204 found”.

4. Choose what to import

Tick the data types you want to bring across. Anything with a count of zero is greyed out. The seven types are:

  • Categories — your product category tree.
  • Tags — product tags.
  • Products — the full catalogue, including variable products.
  • Customers — customer accounts and their saved addresses.
  • Orders — order history with line items and totals.
  • Reviews — product reviews and ratings.
  • Coupons — coupon codes, converted into TitanCart promotions.

Note: Some types depend on others. Orders and reviews link back to the products and customers they belong to, so for a complete migration, import Products (and Customers) in the same run as Orders and Reviews. If you import orders on their own, the line items still come across with their name and product code, but they will not be linked to a product record in your catalogue. All boxes are ticked by default, which gives you a complete migration.

5. Run the migration

Click Start Migration. A progress card appears with a live progress bar, the entity currently being processed (for example “Importing products…”), a running “X / Y” count, and a scrolling log. Larger stores take longer — leave the tab open until it finishes.

When it is done you will see Migration Complete (or Completed with warnings if any individual records were skipped, with the reasons listed). Two shortcut buttons — View Products and View Orders — take you straight to the imported data.

6. What gets imported

Here is how each type maps into TitanCart:

  • Categories keep their full parent/child hierarchy, descriptions, and any Yoast or Rank Math SEO title and description.
  • Products bring across name, description, product code (SKU), regular and sale prices (a sale price becomes the price with the regular price shown as the strike-through list price), weight and dimensions, stock quantity and status, the featured flag, ratings, category and tag links, and the main image plus gallery. A product’s published / draft state is preserved (drafts arrive disabled).
  • Variable products are converted to TitanCart’s model: each WooCommerce variation becomes its own product, and they are linked together as a Product Group so the storefront still shows one page with selectors. The variation attributes (Color, Size, and so on) are created automatically as TitanCart Attributes.
  • Customers are matched to their WordPress user account, with first/last name, phone, and their saved billing and shipping addresses.
  • Orders bring over status, currency, totals (subtotal, discount, shipping, tax), full billing and shipping details, the customer note, and every line item. WooCommerce statuses are mapped to the equivalent TitanCart order statuses (processing, completed → complete, on-hold → on hold, and so on).
  • Reviews come across with their rating, body, author and approved/pending state, linked to the matching product and customer.
  • Coupons are rebuilt as TitanCart promotions with a coupon code, carrying over the discount amount and type (percentage or fixed), free-shipping flag, minimum-spend condition, usage limit and expiry date.

Note: Product images are referenced from your existing WordPress media library, not duplicated. That keeps the migration fast and avoids doubling your storage — but it means the media library needs to stay in place. If you later move to a brand-new WordPress install, move the uploads folder across too.

What it does — and what it doesn’t

The tool migrates your catalogue and commerce data. It does not migrate store configuration, because those settings work differently in TitanCart and are quick to set up fresh. After migrating, you will still need to configure:

  • Shipping methods and zones, and Tax Rules — set these up under Settings.
  • Payment Gateways — connect your gateways and their keys.
  • General store settings, currencies and notification emails.

A few catalogue details also need a second look after import: product options (add-on choices such as gift wrap) and any non-variation custom attributes are not carried over, and downloadable products are flagged as downloadable but you should confirm the actual download file is attached in TitanCart. The Store setup checklist walks through the configuration side.

Troubleshooting

  • “WooCommerce Not Detected.” WooCommerce or its data is not present on this site. The tool reads Woo’s tables directly, so they must exist when you migrate. Confirm WooCommerce data is still in place and reload the tool.
  • The migration stops partway on a very large store. Imports run in one request with raised time and memory limits, but extremely large catalogues or order histories can still hit a server limit. Because the tool skips already-imported records, simply run it again — it picks up where it left off.
  • “Completed with warnings.” Some individual records were skipped; the reasons are listed in the errors box. The most common cause is an order or review whose product was not imported in the same run — re-run with Products selected.
  • Variable product imported as a single product. A variable product with no variation attributes, or with no published variations, cannot be split into a group. Check the product in WooCommerce, then re-run.
  • An imported order’s items are not linked to products. Orders were imported without Products. Run the migration again with both Products and Orders selected so the line items can match to your catalogue.

See also

Previous
Admin dashboard tour
Next
What is TitanCart?