---
schema_version: "1"
id: 78dc6c66ff78cb19726b0f4308179e4a6da6f1b3ea910cdd98f8940145f3bcb7
title: Product Localization ETL Data Feed
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/mktg/264-0-0/mc_pers_etl_product_localization_data_feed.md
canonical_url: https://help.salesforce.com/s/articleView?id=mktg.mc_pers_etl_product_localization_data_feed.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: c90ec0a70088d907b91977972719ace2157b75ffe50d0d8420f706cdba1c5b87
description: Localize your catalog items based on language and country codes to display product information with the locale-specific data for each item. Used with the Product ETL data feed, the Product Localization ETL data feed enhances your catalog with a localized experience.
products:
  - Marketing
  - Salesforce Personalization
release: "264"
---
# Product Localization ETL Data Feed

Localize your catalog items based on language and country codes to display product information with the locale-specific data for each item. Used with the Product ETL data feed, the Product Localization ETL data feed enhances your catalog with a localized experience.

## About Ingesting Product Localization Data

- To use the Product Localization ETL data feed, enable the product localization feature on the Catalog Settings page.
- Localization isn’t supported for custom attributes or related catalog objects. The schema shows which product attributes support localized values.
- If you include a product ID in the Product Localization ETL file that doesn’t exist in your catalog, Personalization creates the item. However, that item only has data for the locales that are included in the file. For example, if a dataset has an `en_US` configuration and you include a new item with only a locale of `fr_FR`, the item only displays data for the `fr_FR` locale. There isn’t any data to display for the en\_US locale.
- Datasets have a default language that you configure on the Catalog Settings page. This information is the locale for the catalog. To modify it, you must use the Product ETL data feed.

## Requirements

- ETL files must be in a .csv file format that adheres to the schema for the data feed. Files that don’t follow the file naming conventions or the appropriate schema result in errors and fail to process.
- Each row requires a product ID and a locale formatted as a two-letter lowercase ISO language code, an underscore, and a two-letter ISO uppercase country code.
- Each product ID must have a single locale per row in the file, and all locale instances for a product must appear consecutively in the file. If a product ID appears multiple times in a file without being consecutive, the system only writes the last grouped instance of records for that product ID to the catalog. Personalization provides the ability to sort the Product Localization ETL file by product ID. Administrators can enable the sorting option on the Gear Configuration page.
- Field names that begin with `attribute:` must match the custom attribute names in the Attributes section of the Catalog and Profile Objects > Products page.

## Filename Format

`locale-product-YYYY-MM-DD_HH-MM-SS.csv`

## Schema

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:20.192307692307693%">
          <col style="width:30.288461538461537%">
          <col style="width:22.596153846153847%">
          <col style="width:13.942307692307693%">
          <col style="width:12.980769230769232%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d28056e111">Field Name </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d28056e114">Description </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d28056e117">Example Values </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d28056e120">Maximum Length </th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d28056e123">Sata Type </th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>id</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">Required. Product IDs in the file must match the format of product IDs in
                the Personalization application and the site map, as well as the IDs in
                your Product ETL file. </p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e117 ">
              <p style="margin-bottom:0;">prod1237723</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">255</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>locale</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">Required. A five-character representation of the locale associated with
                the product. The format must be a two-letter lowercase ISO language code,
                an underscore, and a two-letter ISO uppercase country code.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e117 ">
              <p>en_US</p>
              <p>fr_FR</p>
              <p>de_DE</p>
              <p style="margin-bottom:0;">en_AU</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">5</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:name</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">Represents the name of a product, and must contain at least one
                alphanumeric character.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p style="margin-bottom:0;">Slick New Kicks</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">1023</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:url</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">An RFC-3986-compliant URL that represents the canonical product display
                page for the product.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p style="margin-bottom:0;">https://example.com/products/prod1.html</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">1023</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:description</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">Represents the description of the product, and must contain at least one
                alphanumeric character.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p style="margin-bottom:0;">Some excellent new shoes</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">1023</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:price</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">The current offer price of the product to promote to users. Use a period
                as the decimal separator. Don't use thousands separators.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p style="margin-bottom:0;">19.99</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">1023</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">Decimal/Float</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:currency</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">An <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank">ISO 4217</a>
                currency code of three uppercase letters for the product.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p>USD</p>
              <p>AUD</p>
              <p style="margin-bottom:0;">EUR</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">3</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:priceDescription</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">Represents the local price that displays to the user, including relevant currency and region-specific language.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p>6 Euros</p>
              <p style="margin-bottom:0;">92 Canadian dollars</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">255</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">String</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Field Name" class="slds-cell-wrap" style="text-align:left;vertical-align:top;" headers="d28056e111 ">
              <code>attribute:listPrice</code>
            </td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e114 ">
              <p style="margin-bottom:0;">Represents the original or “before discount” price of the product, which can be higher than the current <code>attribute:price</code>.</p>
            </td>

            <td data-label="Example Values" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e117 ">
              <p style="margin-bottom:0;">42.00</p>
            </td>

            <td data-label="Maximum Length" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e120 ">
              <p style="margin-bottom:0;">1023</p>
            </td>

            <td data-label="Sata Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d28056e123 ">
              <p style="margin-bottom:0;">Decimal/Float</p>
            </td>

          </tr>
        </tbody>
      </table>

## Sample File

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:11.15329852871381%">
          <col style="width:11.15329852871381%">
          <col style="width:11.15329852871381%">
          <col style="width:11.15329852871381%">
          <col style="width:11.15329852871381%">
          <col style="width:11.15329852871381%">
          <col style="width:8.970099667774086%">
          <col style="width:12.956810631229235%">
          <col style="width:11.15329852871381%">
        </colgroup>
        <tbody>
          <tr class="">
            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">id </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">locale </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:name </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:url </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:description </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:price </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:currency </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:priceDescription </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">attribute:listPrice</td>

          </tr>
          <tr class="">
            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">prod007</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">es_ES</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">El gorro</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">test.com/coche</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Un gorro de lana para esquiar</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">8</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">EUR</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">8 Euros</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">10</p>
            </td>

          </tr>
          <tr class="">
            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">31003</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">fr_FR</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Un chapeau</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">fr.com/chapeau</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Un bonnet en laine pour le ski</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">6</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">EUR</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">6 Euros</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">12</p>
            </td>

          </tr>
          <tr class="">
            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">31003</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">en_AU</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Hat</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">au.com/hat</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">A woolen hat for skiing</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">9</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">AUD</p>
            </td>

            <td class="slds-cell-wrap" style="vertical-align:top;">
              <p style="margin-bottom:0;">9 Australian dollars</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">18</p>
            </td>

          </tr>
          <tr class="">
            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">99837</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">en_AU</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Boots</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">test.com/boots</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Hiking boots</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">99</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">AUD</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">99 Australian dollars</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">199</p>
            </td>

          </tr>
          <tr class="">
            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">99837</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">fr_CA</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Les bottes</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">test.com/bottes</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">Les bottes de randonnée</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">92</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">CAD</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">92 Canadian dollars</p>
            </td>

            <td class="slds-cell-wrap" style="text-align:left;vertical-align:top;">
              <p style="margin-bottom:0;">99</p>
            </td>

          </tr>
        </tbody>
      </table>

#### See Also

- [ETL File Requirements](https://help.salesforce.com/s/articleView?id=mktg.mc_pers_etl_file_requirements.htm&release=264.0.0&type=5 "ETL files contain entries such as users, products, subscription list members, promotions, transactions, and more. These files must be in a CSV format and can be encrypted or compressed. The file formats must follow the explicit schema requirements for each ETL data feed. Typically, you upload ETL files automatically using the SFTP site, but you can also manually upload a file.")
- [Monitor ETL Feed Jobs on the Feeds Dashboard](https://help.salesforce.com/s/articleView?id=mktg.mc_pers_etl_feeds_dashboard.htm&release=264.0.0&type=5 "The Feeds Dashboard provides details about ETL feed jobs.")
- [Limits for Marketing Cloud Personalization](https://help.salesforce.com/s/articleView?id=mktg.mc_pers_limits.htm&release=264.0.0&type=5 "Learn about the limits and capabilities in Marketing Cloud Personalization.")