UnoPim ConnectorUnoPim Connector
View Demo
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Onboarding Path
  • Configuration

    • Connection
    • Channels & Stores
    • Settings Overview
    • General Settings
  • Mapping

    • Mapping Overview
    • Core Fields
    • Attributes
    • Categories
  • Sync & Operations

    • Sync Page
    • Scheduled Jobs
    • Logs
    • Pull Pipeline
    • Push Pipeline
    • Variants
  • Compatibility

    • Multisite
    • Multilingual (WPML)
    • HPOS
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
Support
View Demo
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Onboarding Path
  • Configuration

    • Connection
    • Channels & Stores
    • Settings Overview
    • General Settings
  • Mapping

    • Mapping Overview
    • Core Fields
    • Attributes
    • Categories
  • Sync & Operations

    • Sync Page
    • Scheduled Jobs
    • Logs
    • Pull Pipeline
    • Push Pipeline
    • Variants
  • Compatibility

    • Multisite
    • Multilingual (WPML)
    • HPOS
  • Help

    • Troubleshooting
    • FAQ
    • Glossary
Support
  • Getting Started

    • Introduction
    • Quick Start
    • Features
    • Installation
    • First-Time Setup
    • Onboarding Path
  • Configuration

    • Connection
    • Channels & Stores
    • Settings Overview
    • General Settings
  • Mapping

    • Field Mapping (Overview)
    • Core Fields Mapping
    • Attribute Mapping
    • Category Mapping
  • Sync & Operations

    • Sync
    • Scheduled Jobs
    • Logs
    • Pull (UnoPim → WooCommerce)
    • Push (WooCommerce → UnoPim)
    • Variants
  • Compatibility

    • Multisite
    • Multilingual (WPML)
    • HPOS Compatibility
  • Help

    • Troubleshooting
    • FAQ
    • Glossary

Sync

The control room for manual sync operations. Use it for first-time imports, after schema changes, and for ad-hoc re-syncs without waiting for the scheduled tick.

Sync screen — header KPIs (products, categories, channel, locale, dry-run), Sync scope picker, Push defaults card, the Run Full Pull button, and the per-entity Pull / Push grid for attributes, categories and products.

Where it lives

WordPress admin → UnoPim Configuration → Sync.

Available to administrators and shop managers.

At a glance

┌─────────────────────────────────────────────────────────────┐
│  Scope:  Channel: [web ▼]   Language: [en_US ▼]            │
├─────────────────────────────────────────────────────────────┤
│  Full sync                                                  │
│   [ Pull Full ]   ← UnoPim → WooCommerce, everything        │
├─────────────────────────────────────────────────────────────┤
│  Pull just one type                                         │
│   [ Pull channels ] [ Pull languages ] [ Pull currencies ] │
│   [ Pull families ] [ Pull attributes ] [ Pull options ]   │
│   [ Pull categories ] [ Pull products ] [ Pull variants ]  │
│   [ Pull associations ] [ Pull references ] [ Pull tags ]  │
├─────────────────────────────────────────────────────────────┤
│  Push everything                                            │
│   [ Push all products ]                                     │
│   [ Push all categories ]                                   │
│   [ Push all attributes ]                                   │
└─────────────────────────────────────────────────────────────┘

Scope picker

Two dropdowns at the top — Channel and Language. The selection becomes the scope for whatever button you click next.

Scope is per click, not per session

Each button reads the scope at click time. Picking web:en_US, clicking Pull products, then changing to mobile:en_US and clicking Push all products is fine — the second click uses the new scope.

Pull Full

The big green button. It enqueues a full UnoPim → WooCommerce sync and returns immediately with a notice — "Full pull queued. Check Logs for progress."

The connector then imports each entity type in order:

channels → languages → currencies → families
    ↓
attribute groups → attributes → attribute options
    ↓
reference entities → categories → tags
    ↓
products → variants → associations → images

Each step runs in chunks so a 10,000-product catalogue doesn't tie up one PHP process for 30 minutes.

One full pull at a time

If you click the button while a full pull is already running, the second click is ignored. Wait for it to finish, or watch the Logs page for activity.

Pull just one type

For when you only need one entity type re-imported. Each button is a thin wrapper around the same machinery as Pull Full, but limited to one type:

ButtonWhat it pulls
Pull channelsChannel definitions
Pull languagesAvailable languages
Pull currenciesAvailable currencies
Pull familiesProduct templates
Pull attribute groupsAttribute groupings
Pull attributesAttribute definitions
Pull attribute optionsSelect-type attribute values
Pull categoriesThe category tree
Pull productsProduct data
Pull variantsVariation data
Pull associationsUpsells, cross-sells, grouped products
Pull reference entitiesBrands, collections, materials, etc.
Pull tagsProduct tags

Each button enqueues one job. Watch progress on the Logs page.

Push everything

Three flavours. All scoped to the active channel and language:

Push All Products

Loads all products in the current scope, batches them, and sends each one to UnoPim.

Good for:

  • After a mapping change — re-push everything to UnoPim with the new mapping.
  • After enabling Push for a channel that had it disabled — backfill UnoPim with the current state.
  • Migration: WooCommerce is your existing source of truth and you want UnoPim to match.

Push All Categories

Same shape. Iterates your WooCommerce categories.

Push All Attributes

Same shape. Iterates your WooCommerce attribute taxonomies.

Bulk push respects all the same gates

Channel toggles, the cooldown window, and any custom rules still apply. The bulk button just batches the input — every product still goes through the same checks as a normal save.

Dry-run

If Dry run is on in General Settings, every pull and push logs what it would do without writing anything. The Sync page makes no distinction — clicking buttons in dry-run mode produces log entries with no real changes.

Cron vs. Sync page

QuestionCronSync page
Who triggers itThe scheduled tickA click
When it runsAt the channel's intervalWithin seconds of the click
What it pullsJust what changed since last timeConfigurable: full or single type
When to useSteady-stateFirst-time imports, after-schema-change re-imports, ad-hoc fixes

Troubleshooting

SymptomCauseFix
"Already running" noticeA previous full pull didn't finish cleanlyWait a few minutes; if it persists, ask your developer to clear the lock
Click does nothing visibleThe background queue isn't drainingSee Troubleshooting → Cron not firing
Some entities pull, others don'tOne pull failed; others are independentCheck the Logs page filtered by errors
Pull Full button is grayed outYour account doesn't have the right permissionsSign in as an administrator or shop manager

The connector also exposes hooks for developers who need to extend it.


Next: Scheduled Jobs

Next
Scheduled Jobs