To get your products into Google Shopping, a PrestaShop Google Merchant Center setup takes three steps: create a Merchant Center account and verify your store's domain, generate a product feed from PrestaShop (an XML file with id, title, description, link, image, price, availability, plus GTIN and brand), and add the feed URL in Merchant Center with a daily scheduled fetch. Free listings then work without any ad campaign, and the same feed powers Shopping ads later. Below we go through each step and the most common reasons products get disapproved.
- What is Google Merchant Center and why does a PrestaShop store need it?
- How do you set up Google Merchant Center for PrestaShop?
- What does a Google Shopping feed need to contain?
- How do you create a Google Merchant feed in PrestaShop?
- How do you schedule automatic feed fetches?
- How do you turn on free listings?
- Common product disapprovals and how to fix them
- Why does the price in Google not match the price in the store?
- Frequently asked questions
What is Google Merchant Center and why does a PrestaShop store need it?
Google Merchant Center is where you send Google data about your products, so they can appear in the Shopping tab, Search, Images and other Google services, and in paid Shopping campaigns once linked to Google Ads.
Free listings traffic costs nothing, so even a store with no ad budget should set it up. The condition: complete, up-to-date data that matches what customers see on the product page.
How do you set up Google Merchant Center for PrestaShop?
- Create an account at Google Merchant Center with your business Google account, not a personal one.
- Fill in your business details: name, address, contact details and the countries you sell to.
- Verify and claim your website. Google needs to know the domain is yours. The easiest routes are Google Analytics or Google Tag Manager if your store already uses them, or an HTML meta tag. PrestaShop has no dedicated field for that tag, so it goes into the theme (in the Classic theme,
templates/_partials/head.tpl, ideally in a child theme) or is added by a module. - Set up shipping and returns in the account settings: delivery costs, handling and transit times, and your return policy. Missing shipping information is a frequent cause of limited visibility.
- Check your storefront. Google rejects accounts that look untrustworthy: no contact details, no terms or return policy, or a broken checkout. This is called "misrepresentation" and it blocks the whole account, not single products.
Mind maintenance mode: if the store is still under construction or switched off, Google cannot check your product pages. Connect Merchant Center only to a live store with real prices.
What does a Google Shopping feed need to contain?
A feed is a file (usually XML) where every product has a set of attributes. The key ones from Google's product data specification:
| Attribute | What it holds | Where it comes from in PrestaShop |
|---|---|---|
id |
stable, unique identifier (up to 50 characters) | product ID; for variants, product and combination ID |
title |
product name (up to 150 characters) | name, optionally with brand and variant |
description |
plain text, no HTML (up to 5,000 characters) | description or summary |
link |
product page URL on your verified domain | friendly product URL |
image_link |
main image | product cover in a large size |
price |
price with currency, e.g. 49.00 EUR |
final price after catalogue discounts |
availability |
in_stock, out_of_stock, preorder or backorder |
stock |
brand |
brand | the product's brand |
gtin |
manufacturer barcode (EAN, UPC) | GTIN / EAN-13 field |
mpn |
manufacturer part number when there is no GTIN | MPN field |
condition |
new, used or refurbished |
Condition field |
shipping |
delivery cost, if not set at account level | usually Merchant Center settings |
In the European Union the feed price includes VAT, just like your storefront. In the US and Canada prices are submitted without tax.
GTIN, brand and MPN
For products that have a manufacturer barcode, Google requires the GTIN. Never enter your own reference or an invented number: an invalid GTIN is a quick way to get disapproved. If a product has no code (handmade, own production), the feed should set identifier_exists to no.
You fill in codes on the product page. In PrestaShop 8.1 and 9 it is the Details tab, References section (PrestaShop 9 labels the field GTIN, earlier versions "EAN-13 or JAN barcode"); in PrestaShop 1.7 it is the Options tab. The brand is set in the Description tab (in 1.7, in Basic settings). For thousands of products, a CSV import is much faster; we compare it with other methods in our guide to bulk editing products in PrestaShop.
Product variants
A T-shirt in five sizes is five separate items for Google, each with its own id, price, availability and often GTIN, grouped by a shared item_group_id. Each item's link should open the right variant, not just the default combination.
How do you create a Google Merchant feed in PrestaShop?
PrestaShop has no built-in Merchant Center feed. Your options:
- A Google Sheet filled in by hand, sensible only for a dozen products that rarely change.
- A CSV export from the catalogue reshaped into Google's format, which means manual work after every price change.
- A feed module that builds the file from live store data and refreshes it on a schedule.
Beyond a few dozen products, a module saves the most time. Check that it exports variants as separate items, maps categories, handles several currencies and languages, and skips inactive products.
How do you schedule automatic feed fetches?
A feed uploaded once goes stale fast. Items in Merchant Center expire after 30 days without an update, and prices and stock change every day. So:
- In Merchant Center, add a new product source and choose to add products from a file at a URL.
- Enter the permanent feed URL from your store.
- Set a daily fetch at a time when the file is already generated. If your module refreshes the feed by CRON at 3:00, fetch at 5:00, for example.
- After the first fetch, check the processing report: how many items were accepted, have warnings or were rejected.
If you sell in several countries or currencies, prepare a feed or settings for each market, with prices in the local currency and links to the right language version.
How do you turn on free listings?
Free listings show your products across Google without paying per click. On new accounts they are usually on by default, but check in Merchant Center settings that your products are allowed to appear on Google surfaces. You need neither a Google Ads account nor a budget. When you want ads, link Merchant Center to Google Ads and reuse the same feed.
Common product disapprovals and how to fix them
Merchant Center lists issues in the view of products that need attention. Google renames its messages from time to time, but the causes are usually the same:
| Issue | Typical cause | Fix |
|---|---|---|
| Mismatched price (page crawl) | different price in the feed and on the page | see the next section |
| Mismatched availability | feed refreshed less often than stock changes | generate and fetch the feed more often |
| Missing or invalid GTIN | empty field, or your own reference instead of a barcode | real codes or identifier_exists: no |
| Image too small or unsuitable | thumbnail, logo, promotional text on the image | large product photo without watermarks |
| Landing page unavailable | product disabled, redirect, 404 error | exclude inactive products from the feed |
| Missing shipping costs | no shipping set for the country | account shipping settings or shipping attribute |
After a fix, you can start a fetch manually instead of waiting for the schedule.
Why does the price in Google not match the price in the store?
Google visits the product page and compares price and availability with the feed. It reads them mainly from structured data (Product and Offer), so the feed and the structured data must say the same thing. The most common causes in PrestaShop:
- Discounts and specific prices: the feed shows the regular price and the page the sale price, or the other way round. A discount only for a logged-in customer group is invisible to Googlebot and should not go into the feed.
- Tax and currency: a feed without VAT, or in a different currency from the country's default.
- Variants: structured data shows the default combination's price, the feed the selected variant's.
- Cache: a cached page shows outdated stock or price.
- Invalid structured data: missing currency, a badly formatted price, or two conflicting blocks from different modules.
Test the product page in the Rich Results Test and compare the price with the feed. We explain how to set up Product and Offer correctly in our article on structured data and stars in Google. Merchant Center can also update items automatically from your page data, but treat that as a safety net, not a fix for a permanent mismatch.
Frequently asked questions
Is Google Merchant Center free?
Yes. The Merchant Center account and free listings cost nothing. You only pay for clicks on Shopping ads if you link the account to Google Ads and run a campaign.
What if a product has no EAN or other barcode?
If the manufacturer did not assign a barcode, do not make one up. Provide the brand and, if it exists, the MPN, and set identifier_exists to no in the feed. For your own brand, you can get EAN codes from the GS1 organisation in your country.
How often does Google fetch the feed?
As often as you set in the data source schedule, usually once a day. If prices or stock change more often, consider extra updates or an API integration.
Why are products approved but not showing?
Approval only means a product is eligible. Google decides when to show it based on relevance, data quality and price; good titles, real GTINs and large images help.
Can one feed cover several countries?
One feed can target several countries, but it works most simply when they share a language and currency. With different languages and currencies, prepare a separate feed per market with prices in the local currency and links to the right language version of the store.
Want to connect your store to Google Shopping quickly? See the PriceWars module. Need help with disapproved products? Order development work or get in touch.