Syncing Listings Across Channels

How to link the same SKU across multiple channels so that cost, min/max prices, MAP, MSRP, manual price, B2B, compare-at, and current price propagate automatically with currency conversion.

What is cross-channel listing sync?

If you sell the same product on more than one channel (for example, the same SKU on both Amazon US and Walmart, or on Shopify and BigCommerce), cross-channel listing sync lets you link two listings together so that pricing inputs entered on one flow automatically to the other. Set the cost on your Amazon listing once and watch it propagate to the linked Walmart listing within seconds, no manual duplication needed.

This is not the same as channel sync (which keeps Repricing.app in sync with each individual sales channel). Channel sync brings data into Repricing.app from your seller accounts. Cross-channel listing sync moves data between listings inside Repricing.app.

When to use it

Sync links are most useful when you have overlapping catalogs across channels:

  • Same SKU on multiple marketplaces. For example, the same product on Amazon.com and Amazon.ca, or on Amazon and Walmart. Sync cost, min/max prices, MAP, and MSRP from one to the other so you only have to enter them once.
  • Marketplace plus own store. You sell on Amazon and also on your Shopify store. Sync cost and pricing constraints from the marketplace listing into the storefront listing.
  • Multiple own store channels. Same SKU on Shopify and BigCommerce. Sync cost, manual price, and compare price between them.
  • Multi-region marketplaces. The same product on amazon.com, amazon.co.uk, and amazon.de. Sync inputs from one region to the others (currency conversion is handled automatically).

Finding the Sync tab

Open any listing from the Listings page. In the listing detail modal, switch to the Sync tab. You'll see a table of any sync links already involving this listing (as source, target, or both), plus a CREATE SYNC button in the toolbar to add a new one.

If no links have been created yet, the table is empty. Click CREATE SYNC to get started.

Push vs Pull: direction matters

Each sync link is one-way. You decide which listing is the source (its values are the ones that propagate) and which is the target (its values get overwritten by the source). The dialog gives you two direction options relative to the listing you opened:

  • Push: the listing you opened is the source. Field values flow out to the selected listing. The dialog labels this "Push to this listing" with the helper text "This listing is the source. Field values will be pushed to the selected listing."
  • Pull: the selected listing is the source. Field values flow into the listing you opened. The dialog labels this "Pull from this listing" with the helper text "The selected listing is the source. Field values will be pulled into this listing."

After saving, the same direction is shown in the Sync table:

  • Pushing → (info badge): outbound link. This listing is the source.
  • ← Pulling (default badge): inbound link. This listing is the target.

You can have multiple links on the same listing, some Pushing and some Pulling. For example, a listing can pull cost from one source and push manual price to another target.

What can be synced

Eleven pricing fields can be synced. You pick which ones to sync per link, so different links can sync different subsets.

Field What it is Source restrictions
CostYour unit cost.None.
Min PriceThe floor the repricer won't go below.Not available when the target's strategy uses a cost-based price floor (min is auto-calculated there).
Max PriceThe ceiling the repricer won't exceed.None.
MAPMinimum Advertised Price.None.
MSRPManufacturer's Suggested Retail Price.None.
Manual PriceA fixed override that bypasses the repricer.None.
B2B Fixed PriceThe fixed B2B price for Amazon Business listings.Only available when source is a marketplace listing and target has B2B enabled.
B2B Min PriceB2B-specific minimum.Only available when source is a marketplace listing and target has B2B enabled.
B2B Max PriceB2B-specific maximum.Only available when source is a marketplace listing and target has B2B enabled.
Compare PriceThe strikethrough price on storefronts.Only available when source is an own store listing (Shopify, BigCommerce) and target's compare price mode is "Set manually" (not auto-calculated).
Current PriceThe listing's actual selling price on the channel.None. On the target side, this maps to the target listing's Manual Price, effectively pinning the target's price to whatever the source is currently selling for.

The dialog automatically filters out fields that aren't eligible based on the source channel and the target's strategy, so you can only select valid combinations.

Click CREATE SYNC on the Sync tab. A dialog titled "Create Sync" opens with a 2-step wizard:

Step 1: Select Listing

  1. Type at least 2 characters in the Search by title, SKU, or product ID... field. Search runs against your full catalog across all connected channels.
  2. Up to 20 matching listings appear in a list, each showing the channel logo, product title, channel product ID, SKU, and region.
  3. Click the listing you want to link with. The wizard advances to step 2.

The listing you opened the dialog from is excluded from the search results automatically. You also can't link a listing to itself.

Step 2: Choose Fields

  1. Pick the direction: Push to this listing (current is source) or Pull from this listing (selected is source). Switching direction resets the field selection because the eligible fields can change based on which side is the source.
  2. Check the boxes for the fields you want to sync. At least one field must be selected. Use Select all if you want every eligible field.
  3. Click Create. The sync link is created and the table updates immediately.

You can click Back at any time to return to step 1 and pick a different listing, or Cancel to close the dialog.

What the Sync table shows

Once links exist, the Sync tab shows them in a table with these columns:

  • Channel. The channel of the linked listing (the other side of the link, not the current one).
  • Region. The region of the linked listing.
  • Listing. The product title of the linked listing.
  • Product ID. The channel-specific identifier (ASIN, item ID, etc.) of the linked listing.
  • SKU. The SKU of the linked listing.
  • Direction. Pushing → (this listing is source) or ← Pulling (this listing is target).
  • Fields. Comma-separated list of the fields being synced (for example, "Cost, Min Price, Max Price").
  • Status. Active (green badge) when syncing is enabled, Paused (gray) when temporarily disabled.
  • Last Sync. When the most recent propagation event happened for this link.

Tip: click anywhere on a row (except on the action buttons) to jump directly to the linked listing's detail page, already focused on its Sync tab. This makes it easy to traverse a sync graph across several listings.

How propagation actually works

Sync runs in two situations:

  • Initial sync happens when you first create a link, or when you activate a previously paused link, or when you add new fields to an existing link. The source's current values for the synced fields are written to the target right away. Null values on the source are not propagated during the initial sync, so the target doesn't get its data wiped if the source has empty fields.
  • Ongoing sync happens whenever a synced field changes on the source (cost gets updated, manual price gets cleared, etc.). The change propagates to the target within a few seconds. Unlike initial sync, null values do propagate, because clearing a field is a deliberate action.

Sync is one-way per link: source → target only. If the target then changes, it does not propagate back to the source (but it can propagate to its own targets if it has outbound links).

Currency conversion between regions

When the source and target listings are in different currencies (for example, a USD source linked to a CAD target), money fields are converted using the daily FX rate before being written to the target. The system uses a direct rate if available, or a cross-rate via USD if the direct pair isn't supported. If no rate is available for the currency pair, the propagation is skipped for that change with the error logged; the next field change will retry when a rate becomes available, so no incorrect values are ever written.

Each row in the Sync table has three actions:

  • PAUSE / ACTIVATE. Temporarily stop propagation without removing the link. Paused links keep all their settings; activating one triggers a fresh initial sync to catch up the target with the source's current values. Useful when you want to pause syncing during a promotional period or while making manual changes on the target.
  • EDIT. Open a dialog to change which fields are synced. Adding new fields triggers an initial sync for the newly-added fields. Removing fields takes effect immediately for future changes; values already on the target are not touched.
  • DELETE. Remove the link permanently. A confirmation dialog appears: "This will stop syncing fields between these listings. This action cannot be undone." Confirm with Delete. The link is removed and no further propagation happens; existing values on the target are preserved.

Constraints and validation

To keep your sync graph predictable, the system enforces a few rules:

  • No self-links. A listing cannot be linked to itself.
  • No duplicate links. The same source-target pair can only have one link (active or paused). To change what's synced, edit the existing link instead of creating a new one.
  • No cycles. The system detects cycles (A pushes to B, B pushes to C, C pushes to A) and rejects any link that would create one. This prevents infinite propagation loops.
  • No conflicting sources. Two active links cannot push the same field into the same target. If you try to create a link that would conflict with an existing one, the system shows an error explaining which field is already being synced from a different source.
  • Same organization. Both source and target must belong to the same organization. Cross-organization sync is not supported.
  • At least one field. Every link must sync at least one field. You cannot save an empty link.

Permissions

Managing sync links follows the same role-based access as the rest of the Listings module. Users with the Owner, Admin, or Manager role can create, edit, pause, and delete sync links. Analysts can view existing links on the Sync tab but cannot modify them. See Roles and Permissions for the full role matrix.

Tips

  • Start with cost and MAP/MSRP. These rarely change per region and are the most common candidates for syncing. Get them right first, then expand to other fields as needed.
  • Pick one canonical source per SKU. If you sell the same SKU on five channels, sync everything from one "canonical" listing rather than chaining link after link. It's easier to reason about and easier to debug.
  • Watch the Last Sync column. If a link's Last Sync timestamp keeps getting older while the source's values are changing, check that the link is Active (not Paused) and that the source's currency has a working FX rate.
  • Pause before bulk edits. If you're about to make manual changes on a target listing that you don't want overwritten, pause the inbound links first, do your work, then activate them again.
  • Combine with competitor URL tracking. Add competitor URLs to one listing per SKU (since URLs aren't synced between listings) and use cross-channel sync to propagate cost and constraints to the linked listings. Each listing reprices against its own URLs but stays consistent on inputs.

Last updated on May 21, 2026