Product Data Feed Set Up

A product data feed is a file that contains all of your products and the attributes associated with each product.

Product data feeds are created and managed outside of Bronto. Therefore, you need to configure product data feeds outside of Bronto before you can import your product information. If you already use a product data feed for another company, such as Google, you can leverage your existing product data feed to import your product data. If you do not have a product data feed, you will need to create this file before you can import product data into Bronto.

Important: Bronto only supports data feeds in a delimited file or an XML document format. See Product Data File Formats for information on supported MIME types.

General File Considerations

The type of file you use for your feed will determine how its formatted but there are a few things you need to have in your file no matter which format you use:
  • You must have product attribute labels (a heading). In a delimited file this is the first row of data and in an XML file these will be formatted as tags. Either way these attribute "headings" are the values you will map to product data fields in Bronto. Mapping the attribute label/heading to the product data field lets Bronto know how to store each piece of data.
  • The data you import must be properly associated with its label (in the heading). For example, if you have a product attribute heading Title then it is important that you make sure the title for each product is properly associated with the Title label. In an delimited file this is accomplished using delimiters properly and in an XML file this is accomplished through tagging. A good rule of thumb it to test upload a small file to make sure everything is mapped properly before your upload everything.
  • At a minimum your file must have product attributes that can be mapped to Bronto's Product ID and Title fields in order for it to be imported properly. However, you should include any product attribute you might want to use in a message, to build a recommendation, or might want Bronto to use in its predictive analytics calculations. A rich set of product data in your product catalog is one of the key components in Bronto's ability to recognize connections between products in order to provide highly-targeted recommendations.
  • Properly map relationships between variant products using the Product ID and Parent Product ID fields. When you have products that are variants of each other it's important you have a single product that is the parent to all of the other variant products. The parent product should not have anything in the Parent Product ID field. The variants of that parent product should have the parent's Product ID in their Parent Product ID fields. This allows Bronto to recognize these products are related and use their connections to build recommendations.

Products that are in the most recent product data feed file and are successfully imported have an active status in Bronto. When an active product is not included in a subsequent product feed import that product is archived. This is important for two reasons. First, it's important you understand the data in your product data feed should reflect what you want your full Bronto product catalog to look like. You cannot import a file that only contains a few products in order to add them to your catalog. If you did that then everything else already in your catalog would be archived!

Secondly, while products that are archived cannot be used in messages, Bronto can still use archived products in analytics calculations for recommendations. As you perform your initial data feed imports into Bronto, it's a best practice to first import a product data feed that only contains historical product data. For example, products you don't sell anymore. Then, immediately after that import finishes, import a product data feed that represents your current catalog and doesn't contain the historical product data. Your historical products will be archived so you don't have to worry about accidentally using them. But Bronto can use historical data associated with these products to make better recommendations for current products. The more historical product data we have the more accurate product recommendation will be.

Delimited File

A delimited file is a document that contains rows of data where each data element is separated by a delimiter and each line represents a new item. You can use tabs, pipes, commas, colons, semi-colons or tildes as the delimiter in your delimited file. You must consistently use the same delimiter in the file. Whatever delimiter you use cannot be used within a field, unless the contents of the field is within quotation marks. For example, if you use a comma as your delimiter, you cannot use a comma to offset items in an attribute list unless the list is in quotation marks.

Example of simple delimited file

Delimited Data Feed Example

Example of complex delimited file

Delimited Complex Feed Example

XML File

If your product data feed is stored as an XML document:
  • You must specify tags for all mapped fields, even if the value is null, or the row will be rejected and not update.
  • Supported configurations include RSS 2.0 and Atom 1.0.
  • Any mapped product field not specified in the XML file is treated as a null value. If a product field previously had a value and you re-import the product without that field specified, the field value is updated to null.

Example of an XML file

XML Data Feed Example

There is no limit to the number of attributes a product data feed may have, but only attributes that have been mapped to a Bronto field are imported. At a minimum, each product must have a Product ID and a Title. Each mapped attribute must validate against the rules for the Bronto field it is mapped to or it will not import successfully. For more information about field format and validation rules see Product Field Descriptions.

Validation Troubleshooting

Validation tips:
  • Currency: Only one currency is supported per feed and the currency type is not saved in Bronto.
  • Images: Image files are not stored in Bronto, so the image attribute must be a valid URL link to an image. If you want to use different image sizes, you will need to need to create additional image fields and pass each image URL in the product data feed that is mapped to those image fields.
  • Textarea: Text area fields have a 5,000 character limit. Any characters past 5,000 will be cut off during import and will produce a warning in the import transaction log report.
  • URLs: Any field that is a URL must begin with http:// or https:// or the product is not imported and an error is produced in the import transaction log report.
  • Google's Sale Price Effective Date contains two dates separated by a slash that represent the start and end date of a sale. If your product data feed uses Google's Sale Price Effective Date, and you want to import this attribute, Bronto has set up predefined fields you can use to split this attribute into a start date field and an end date field in order to be able to better view and use these dates. To do this:
    1. Map the name you use for Google's Sale Price Effective Date in your product data feed to Sale Price Effective Start Date and add :STARTDATE to the product data feed name.
    2. Map the name you use for Google's Sale Price Effective Date in your product data feed to Sale Price Effective End Date and add :ENDDATE to the product data feed name.
    For example, if the heading for Google's Sale Price Effective Date in your product data feed is SalesDates, you would map SalesDates:STARTDATE to Sale Price Effective Start Date and SalesDates:ENDDATE to Sale Price Effective End Date.