# E-commerce sync - WooCommerce and Shopify

> Connect a WooCommerce or Shopify store to SmartPOS Hub: preview, dry run and import products, keep prices and stock in sync, and import store orders as sales.

Source: https://docs.smartposhub.com/modules/ecommerce-sync/  
Last updated: 2026-10-30  
Product: SmartPOS Hub (https://smartposhub.com)

**E-commerce sync** connects an existing **WooCommerce** or **Shopify** store to SmartPOS Hub. Import its products (with categories, brands, variations, barcodes, images and stock), keep prices and stock in sync, and bring store orders in as sales.

> **How to turn it on**
> 1. **Plan:** E-commerce sync (the plan sets how many stores you can connect) and Integrations
> 2. **Switch:** Settings › Business Settings › Modules › E-commerce sync and Integrations (both off by default)
> 3. **Permission:** Manage integrations; importing needs product create/update, importing orders needs permission to sell

**Caution:** 
The WooCommerce and Shopify connectors are new and show **Needs real keys** until checked with a real store. Connect a test store first (sandbox set) and always run a **Dry run** before the real import.

## Connect your store

1. Switch on **Integrations** and **E-commerce sync** in **Settings › Business Settings › Modules**.
2. Open **Settings › Integrations › E-commerce** and add **WooCommerce** or **Shopify**.
   - WooCommerce: your store URL (https) and a consumer key and secret with Read/Write access (WooCommerce › Settings › Advanced › REST API).
   - Shopify: your `.myshopify.com` domain and an Admin API access token, or the client ID and secret of an app installed on the store.
3. Press **Test connection**, then open the store screen with **Store sync & mapping**.

## Import products

1. **Preview counts** - see the store's products and orders.
2. Set **Mapping**: which store locations feed which business locations, where new products are sold, matching and conflict rules, fields to update, the tax map and the unit.
3. **Dry run** - decides everything and changes nothing; check the items marked would create, would update, skipped or error.
4. **Import products** - runs in the background in chunks; follow it in **Sync history**. Use **Retry failed** for items with errors.

## Keep in sync

Each direction is a switch on the store screen: scheduled **pull** of changed products (default every hour), **webhooks** for instant updates (**Register webhooks**), **push stock / prices** (off by default), and **import orders** (off by default). Use **Pull changes now**, **Push all now** or **Import orders now** any time.

## Related pages

  - [Integrations](https://docs.smartposhub.com/modules/integrations/)
  - [Import products from Excel](https://docs.smartposhub.com/catalog/import-products-excel/)
  - [Barcodes and labels](https://docs.smartposhub.com/catalog/barcodes-and-labels/)
  - [Opening stock](https://docs.smartposhub.com/catalog/opening-stock/)

## Frequently asked questions

### Which online stores can I connect?

WooCommerce and Shopify.

### Will an import create duplicate products?

It matches first by link, then SKU, then barcode, then (optionally) exact name. You choose to update or only link matches, and to create or skip new ones. Always run a Dry run first.

### Can SmartPOS Hub push stock to my store?

Yes, when Push stock is switched on. Every POS, online, purchase, transfer or adjustment change is sent within a few minutes. While push stock is on, SmartPOS Hub is the master for stock.

### Can store orders become sales?

Yes, with Import orders on. Each order becomes a final sale at the chosen location, the customer is found or created, and stock goes down. Older orders are not imported.

### Are cancellations synced back?

No. If an imported order is cancelled or refunded in the store, handle it in SmartPOS Hub.

### How many stores can I connect?

Your plan sets the number of connected online stores.
