Skip to content

Offer sync

Offer sync is what keeps your Mirakl prices and offer-level fields aligned with Shopware. Where catalog export creates the product on Mirakl, offer sync creates and updates the offer — the seller-specific listing with its price, lead time, condition and so on.

  • Offer Mappings (Quick Start → Offers) — every Shopware product ↔ Mirakl offer link. Columns: Product, In Stock, Available, Mirakl Price, Mirakl Offer ID, Mirakl Product SKU, Catalog Status, Status, Last Synced, Connection. Filter the list by Status, Connection, Name, Product number, EAN / GTIN.
  • Product Catalog (Quick Start → Catalog) — the same selection workflow, focused on the product side. Useful when you’ve just added new products and want both the catalog export and the offer in one go.

On Offer Mappings, the Add Offers button on the toolbar opens a side menu with two ways to add a row:

  • Add Products — opens the Add Products to Mirakl page. Pick the connection and tick Shopware products to attach as new offers. Products that haven’t been added to the catalogue yet are flagged with a tooltip — you have to push them through the catalogue first.
  • Link Existing — opens the Mirakl Offers page. This lists offers that already exist on the operator side and lets you connect them back to matching Shopware products (handy after migrations or when offers were created outside this plugin).

From Offer Mappings:

  • Row context menu → Sync Now — sync that one mapping immediately.
  • Select rows + toolbar → Sync Selected — sync many mappings at once. The list shows a confirmation that the sync has been queued for the chosen count.

From Dashboard → Quick Actions → Sync All Offers — sync every mapping that’s currently waiting on a chosen connection.

In normal operation you don’t need to click anything. When you save a Shopware product, the plugin checks whether the change touched a field that’s mapped to a Mirakl offer field (price, stock, a custom field that feeds into an offer field). If yes, the corresponding offer mapping is marked as needing an update and the sync runs in the background within seconds of the save.

Periodic re-sync of everything (for example after editing a global value transformation) is done via the Dashboard → Quick Actions → Sync All Offers button.

The Status column on Offer Mappings cycles through:

  • Pending — newly created, waiting to be sent for the first time.
  • Queued — sent to the background worker, waiting to run.
  • Processing — the upload is in progress.
  • Synced — the last upload was accepted by Mirakl.
  • Retry — the last attempt failed temporarily (network glitch, operator overload); the plugin will try again.
  • Error — the last attempt failed in a way that needs your attention.

Failed-removal cases get their own visual state in the row: Removing from Mirakl while a withdrawal is in progress, Removal failed if the withdrawal couldn’t complete. In that case you get two actions:

  • Retry removal — try the withdrawal again.
  • Reset Mapping — clear the failed state and put the mapping back to Pending. The offer is not removed from Mirakl — the next sync re-sends it. Use this when the removal failed but you decided to keep the offer active.

Mirakl → Settings → Sync tab, Sync Settings card:

  • Offer Sync Batch Size — how many offers go into one upload. Default: 50. Allowed range 1–500. Lower values use less memory and reduce timeout risk; higher values process large catalogues faster.

Offer sync doesn’t have a master on/off switch in the current settings — it’s automatic when you save products and manual from the buttons above. Stock-only changes have their own scheduled task (see Stock sync).