Multi-market feeds (currency conversion)

Export one catalog to several countries and currencies. Set a base currency, add markets with exchange rates, and publish a separate channel feed per market.

Multi-market feeds (currency conversion)

What multi-market feeds do

Markets let you re-export the same product catalog into other currencies without maintaining a separate feed per country. You set the feed's base currency (the currency your source prices are in), then add one or more markets. Each market converts prices using an exchange rate you provide and outputs in that market's currency.

Each market gets its own channel exports and its own stable pull URLs, so you can give Google Germany a EUR feed and Google UK a GBP feed, both built from one source.

Set your base currency

Before adding markets, tell MartechFlow what currency your source prices are already in. This is the Base currency field on the feed's Markets panel.

  1. 1Open the feed and go to the Markets panel.
  2. 2Enter your Base currency, for example USD, and let it save.
  3. 3Confirm it is correct: every market's conversion is calculated from this base.
  • The base currency is required before a market export can build. If it is missing, the market export is held and an alert explains why.
  • If a source row carries a currency that conflicts with the base currency, the row is rejected for that market, because one exchange rate cannot convert mixed-currency rows.

Add a market

A market is a label, a target currency, an optional country, and an exchange rate relative to your base currency.

  1. 1In the Markets panel, fill in Market (a name like Germany), Currency (like EUR), and optionally Country (like DE).
  2. 2Enter the Rate, which is the multiplier from your base currency to this market's currency. For example, if 1 USD = 0.92 EUR, enter 0.92.
  3. 3Click Add market.
  4. 4Repeat for each country you want to sell into.
  • Currency must be a valid 3-letter code; the rate must be greater than zero.
  • Exchange rates are manual. You set the number, and you update it when rates move. MartechFlow does not fetch live FX rates for you.

How prices are converted

For each product, the market multiplies price and sale_price by the market's exchange rate and rounds to the market's increment (0.01 by default). The output currency is set to the market currency.

There is a safety rule for sales: if rounding pushes the converted sale_price up to or above the converted price, the sale is dropped for that row, so a non-discount never appears as a fake discount. Blank prices stay blank.

  • Example: a base price of 20.00 USD with a rate of 0.92 becomes 18.40 EUR.
  • Rounding uses the market's increment, so you can produce whole-currency prices for markets that need them.

Publish a feed per market

Adding a market does not create an export on its own. After you have defined a market, go to Publish and create the channel exports you want for that market (for example a Google Shopping CSV for Germany). Each market export gets its own pull URL that channels fetch.

Markets are protected from accidental breakage: you cannot delete a market while it still has exports pointing at it. Remove its exports first, then delete the market.

Questions

Does MartechFlow pull live exchange rates?

No. Exchange rates are entered manually per market. You control the rate and update it when you want. This keeps pricing predictable and avoids surprise changes from a rate feed.

What if my source already has prices in different currencies?

A single market applies one exchange rate, so it expects all source rows to be in the base currency. A row whose currency conflicts with the base currency is rejected for that market. Keep your source in one base currency for clean conversion.

Why did a product's sale price disappear in a market?

If currency rounding made the converted sale price equal to or higher than the converted regular price, the sale is dropped for that row so it does not look like a discount when it is not.

Can I round to whole units for some currencies?

Yes. Each market has a rounding increment. The default is 0.01, but a market can round to a larger increment so prices come out clean for currencies where decimals are unusual.

I cannot delete a market. Why?

A market with exports attached is locked from deletion so you do not silently break a live channel feed. Delete the market's exports in Publish first, then remove the market.

Ready to try it?

Start free, no credit card. Your first feed can be live in minutes.

Start free