CataSync for WooCommerce

Description

CataSync for WooCommerce connects your store to the CataSync API to automatically generate complete product content from EAN/barcode codes — ideal for dropshipping stores with hundreds of products that have incomplete or missing descriptions.

How it works

  1. Your WooCommerce products already exist (from your supplier feed)
  2. CataSync reads the EAN/barcode from each product
  3. It looks up product data from multiple international databases
  4. Claude AI generates SEO-optimized descriptions in Italian
  5. Everything is written back to WooCommerce automatically

What gets populated

  • Product title
  • Short description
  • Long description (SEO Complete mode)
  • Featured image (downloaded and added to Media Library)
  • Product attributes
  • Yoast SEO / RankMath fields (title, meta description, focus keyword)
  • Slug URL

Generation modes

  • Standard — name, description, photo
  • SEO Base — + title SEO, meta description, slug URL
  • SEO Complete — + long description, keywords

The available modes depend on your CataSync subscription plan.

Features

  • Dashboard with credit usage, plan info, and billing overview
  • Products list with CataSync status column
  • Bulk generation with progress bar
  • Single product generation from the product edit page
  • Compatible with Yoast SEO and RankMath
  • Compatible with WooCommerce HPOS (High Performance Order Storage)
  • Multisite compatible
  • Translation ready (i18n)

Requirements

  • A CataSync account with an active plan
  • Your CataSync API key (from your dashboard under API & Integrations)

Support

For plugin issues or questions about your plan: supporto@catasync.com

Want to upgrade your plan? Visit catasync.com/prezzi

External Services

This plugin connects to the CataSync API (a third-party SaaS service) to generate product content from EAN/barcode codes. It is required for the plugin to function.

What data is sent and when:

  • When you click “Generate” on a product (or a profile runs automatically), the plugin sends the following to the CataSync API endpoint at https://app.catasync.com/api/v1/generate:
    • Product EAN/barcode code
    • Product name (used as fallback when EAN lookup fails)
    • Your API key (for authentication)
    • The selected generation mode (e.g. seo_base, full_product)
  • When you validate your API key from the settings, the plugin sends your API key to https://app.catasync.com/api/v1/account to retrieve your plan information.
  • No customer data, order data, or personally identifiable information is ever transmitted.

Terms and Privacy:

By using this plugin you agree to the CataSync Terms of Service and Privacy Policy.

Screenshots

Installation

  1. Upload the catasync-for-woocommerce folder to /wp-content/plugins/
  2. Activate the plugin from Plugins > Installed Plugins
  3. Go to WooCommerce > CataSync Settings
  4. Enter your CataSync API key and click Validate key
  5. Choose your default generation mode
  6. Go to WooCommerce > CataSync Products and start generating!

FAQ

Do I need a CataSync account?

Yes. CataSync is a paid SaaS service. You need an account and API key to use this plugin. Visit catasync.com to register.

Which EAN/barcode fields are supported?

The plugin reads EAN from these meta keys (in order): _ean, _gtin, _barcode, _ean_code, _product_gtin. If none are found, it falls back to the SKU field if it looks like a numeric barcode (8–14 digits).

Will existing data be overwritten?

By default, existing titles are NOT overwritten, but descriptions are. You can configure this in the plugin settings.

Is it compatible with Yoast SEO?

Yes. The plugin automatically writes to _yoast_wpseo_title, _yoast_wpseo_metadesc, and _yoast_wpseo_focuskw. RankMath is also supported.

What happens if a product is not found?

It is marked as “Not found” — no credits are used. You can enter the data manually.

Can I bulk generate all products at once?

Yes. From the CataSync Products page, select multiple products and click “Generate selected”. The plugin processes them one at a time with a small delay to stay within API rate limits.

Is this plugin GDPR compliant?

The plugin sends product EAN codes and product names to the CataSync API. No customer or personal data is ever transmitted. See CataSync Privacy Policy for details.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“CataSync for WooCommerce” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.6.0

  • CRITICAL FIX: products are now correctly tagged with the requested mode. Previously, even when the plugin requested seo_complete, the saved meta could end up as seo_base because the plugin was trusting the mode value returned by the API response (which can be incorrect server-side). The plugin now saves the requested mode authoritatively and additionally stores the API-returned mode separately for audit (_catasync_wc_api_mode).
  • NEW: Mode mismatch detection. When the requested mode and API-returned mode differ, the plugin logs a warning to PHP error log and flags the product with _catasync_wc_mode_mismatch=1 so administrators can identify problematic products.
  • NEW: “Included credits” card on the Products page. The same pool credit info from the Dashboard (with progress bar + overage in EUR) is now visible at the top of CataSync Products, so you can see your remaining quota without leaving the page.
  • Improved: the bulk WooCommerce action (Products list Bulk Generate with CataSync) now also forces the mode from the customer’s plan instead of using the saved option.

1.5.0

  • NEW: Generation mode is now locked to your CataSync plan. No more confusion: the plugin reads your plan name (e.g. “Starter SEO Completo”) and uses the matching mode automatically. You can no longer accidentally select a mode your plan doesn’t support.
  • Fixed: products were sometimes generated in the wrong mode. Even if you selected “SEO Completo” the API could downgrade to “SEO Base”. Now the server-side handler enforces the plan’s mode authoritatively, eliminating the mismatch.
  • NEW: “Validate key” now connects instantly. Click “Validate key” if the key is valid the plugin saves it AND reloads the page so you immediately see the “Connected” box with company, plan, pool credits, API access status. No more save-then-refresh dance.
  • NEW: “Settings” link in the plugins list. Next to “Deactivate” you now see “Settings” and “Dashboard” — same convention used by every well-behaved plugin (WooCommerce, Yoast, etc.).
  • Improved: the Bulk bar in the Products page shows the locked mode as a read-only badge (“🔒 Mode: SEO Completo”) instead of a select that can mislead.
  • Improved: Settings page replaces the “Default mode” select with an info card showing the mode locked by your subscription, plus a link to manage the subscription on the CataSync portal.

1.4.0

  • NEW: Per-field write policies. Each WooCommerce field (title, short description, long description, image, attributes, SEO meta, GTIN) can now be set independently to: Skip, Only if empty, or Always overwrite. Want CataSync to only fill descriptions and never touch your titles? Now you can.
  • NEW: Products page summary. Four KPI cards at the top of the Products page show total products, how many are still to generate, how many are already done (with %), and how many returned “not found”. Spot new EANs at a glance.
  • NEW: Status filter pills. Quickly filter the products table by All / To generate / Generated / Not found. Counts are shown next to each filter.
  • Fixed: the “Last update” column was always empty because the view was reading _catasync_updated while the data is saved as _catasync_wc_updated. Same bug for the “Mode” column. Both columns now show the correct values.
  • Improved: the “Last update” column now shows date AND time of the last generation (was only date).
  • Fixed: plugin pages no longer have an artificial 1200px max-width — they fill the available admin width like every other WP plugin.

1.3.0

  • Fixed: “Validate key” button now works correctly. The button used to read the saved API key from the database, so validating a freshly-typed key always failed because it had not been saved yet. The button now sends the key currently typed in the input field — you can validate before saving.
  • Fixed: wrong jQuery selectors in the Settings JavaScript that prevented the validation status indicator from showing and broke the “Show/hide key” eye toggle.
  • New: Top-level admin menu. CataSync now appears as its own top-level entry in the WordPress admin sidebar, at the same level as WooCommerce — no longer buried as a submenu. Sub-pages: Dashboard, Products, Activity Log, Settings.
  • New: Custom menu icon. The CataSync logo (turquoise C with a dot) now appears next to the menu entry, rendered as inline SVG so it follows the active WP admin color scheme.
  • New: Real CataSync logo on every plugin page. The placeholder dot in page headers is replaced with the actual CataSync icon asset.

1.2.0

  • Subscription warning banner — A persistent admin notice across all WP pages alerts the site administrator if the CataSync subscription is cancelled, payment has failed, the subscription is paused, or renewal is within 7 days. No more discovering a problem only when you try to generate a product.
  • Activity log page — New “CataSync Log” submenu with a complete history of every API call: date, product, EAN, mode, status, cost, response time. Filter by status or mode, paginate, and purge old entries on demand.
  • Cached account data with manual refreshGET /account is cached for 5 minutes via a WordPress transient instead of being called on every dashboard load. A “Refresh now” button forces an immediate refetch when needed.
  • Daily admin email notifications — A WP-Cron job runs once a day, compares the current subscription status with the last seen one, and emails the WordPress administrator on any change (cancellation, payment failed, paused, reactivated). Also warns when renewal is approaching or no payment method is on file. Can be disabled in Settings.
  • Historical statistics on the dashboard — A new “Historical stats” section shows API calls, total spent, cached requests and errors for the current month vs the previous month, with trend percentages.
  • Cost column in product list — The Products screen now shows whether each generated sheet was Free / Included / Cached / Overage (with the overage amount in EUR). At a glance you can see exactly how each product was billed.
  • New helper classes: CataSync_WC_Logger, CataSync_WC_Cache, CataSync_WC_Cron.
  • wp_catasync_wc_log table extended with endpoint, cost, billed_as columns (auto-migrated by dbDelta).
  • All log entries are now actually written (in 1.0.0/1.1.0 the table existed but was never populated).

1.1.0

  • Aligned to new CataSync API (premium-only access, new credit system: free trial pool overage).
  • Rate limit handling — honours X-RateLimit-* headers and Retry-After on 429 responses.
  • Idempotency support — same EAN within 24h returns cached sheet at zero cost; UI now flags idempotent operations.
  • Smart bulk abort — when a subscription error or rate limit is hit, the bulk loop stops immediately instead of burning further API calls.
  • User-friendly 402 messages — distinguishes trial/cancelled/past_due/paused subscription states with actionable text.
  • Native GTIN field — writes EAN to _global_unique_id (WooCommerce 9.2+ inventory tab) and reads it as the primary EAN source.
  • Extended EAN auto-detect — added _wc_gtin, _wpm_gtin_code to lookup chain; SKU fallback regex relaxed to 6–14 digits to match the API.
  • Long description for all modes — handled correctly even in standard mode (previously SEO-only).
  • Refactored dashboard & settings — match the new /account schema (free_credits, subscription, pool, overage, payment_method, access).
  • Endpoints simplified to clean URLs (/account, /generate).

1.0.0

  • Initial release