Use this guide to set up your catalog for localization. See also how to Set Up a Catalog for Multiple Languages and Countries, Ads Help Center.
id
field in your override data feed. The id
for each item must match an id
in one of your main catalog data feeds and/or the content ID from your pixel.override
field.
override
column should be a supported ISO language code. (see also standard ISO language codes.)As you plan your catalog setup, we ask that you follow these recommendations:
title
and description
in your language feed and include price
, sale_price
, sale_price_effective_date
, availability
, and link
in your country feed. You can provide localized properties for your catalog items, using additional types of feeds.
Feed Type | Description | Example |
---|---|---|
Country Feed | Contains overrides for specified countries. You can create and upload country feeds using the Commerce Manager or via the API. See supported feed format. | An item can have different prices in different countries. |
Language Feed | Contains translations for specific fields. You can create and upload language feeds using the Commerce Manager or via the API. See supported feed format. | An item can have different descriptions in different languages. |
Language and Country Feed | Intended for advanced use cases where a country feed or language feed is not enough to describe the localization of your items. A language and country feed should only be used for fields that are absolutely necessary. You can only create a language and country feed via the API, but you can modify and upload the feed from the Commerce Manager or via the API. The Commerce Manager provides details about each country and language setup. Note: To localize a field for both language and country, the value in the | Your product URLs may depend on both the viewer language and country. For example: http://www.mysite.com/ca/item12345?lang=fr You can define localized fields for a limit of 350 language and country pairs, per catalog item. |
Example CSV — This feed contains country localizations for the United Kingdom (GB
) and Italy (IT
).
id; override; price; link; delete FB_product_1234; GB; 9.00 GBP; http://www.example.com/en_GB/FB_product_1234; false FB_product_1234; IT; 10.49 EUR; http://www.example.com/it_IT/FB_product_1234; false
price
, sale_price
, unit_price
, base_price
, status
(visibility), and availability
must only be provided in a country feed. These fields cannot be provided in a language feed. This helps ensure customers see the correct localized product data.
Example CSV — This feed contains language localizations for French (fr_XX
) and English (en_XX
).
id; override; description; title; delete FB_product_1234; fr_XX; Le t-shirt American Apparel préféré de tous. Le t-shirt comporte une encolure ajustée de 3/4 pouce au cou, une bande épaule à épaule et un ourlet de 1 pouce sur les manches.; T-shirt Unisexe d'American Apparel; false FB_product_1234; en_XX ; Everyone's favorite American Apparel T-shirt. The t-shirt features 3/4 inches set-in neck, shoulder to shoulder tape and 1 inch hem on sleeves.; American Apparel Unisex T-Shirt; false
Example - This feed contains 'language and country' localizations for French speakers in the U.S. (fr_XX|US
) and French speakers in Canada (fr_XX|CA
).
id; override; url; delete FB_product_1234; fr_XX|US; http://us.example.com/fr/product_1234; false FB_product_1234; fr_XX|CA; http://ca.example.com/fr/product_1234; false
When selecting which localized information to show to a user, we check the feed contents in this order:
Once you created your feeds, you can choose to upload them manually via Commerce Manager or via the API, as shown below.
override_type
parameter. Example - Upload a Language Feed
curl \ -F 'name=Language feed' \ -F 'schedule={ "interval": "DAILY", "url": "http:\/\/www.example.com\/sample_language_feed.tsv", "hour": 22 }' \ -F 'override_type=language' -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<API_VERSION>/<CATALOG_ID>/product_feeds
Example — Upload a Country Feed
curl \ -F 'name=Country Feed' \ -F 'schedule={ "interval": "DAILY", "url": "http:\/\/www.example.com\/sample_country_feed.tsv", "hour": 22 }' \ -F 'override_type=country' -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<API_VERSION>/<CATALOG_ID>/product_feeds
Example - Upload the language and country feed
curl \ -F 'name=language and country Feed' \ -F 'schedule={ "interval": "DAILY", "url": "http:\/\/www.example.com\/sample_language_and_country_feed.tsv", "hour": 22 }' \ -F 'override_type=language_and_country' -F 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<API_VERSION>/<CATALOG_ID>/product_feeds
Parameters
Parameter | Value |
---|---|
| Location where we can retrieve the feed file from |
| Frequency at which we fetch the feed file |
| Hour of the day (based on a 24-hr clock) when we fetch the feed |
To remove localized information from an item:
true
. The localization for that product is then removed.
Note: You may also delete
items in your main item feed. When you delete a main item, all overrides are removed.