Product feed for Google Merchant Center

Google Merchant Center is a tool that allows you to make your products available on Google and Google Shopping. By connecting the product feed from Mystore to Google Merchant Center, product information is automatically exported daily.

Product feed to Google Merchant Center

The "Shopping feed" extension creates an XML file with your entire product catalog. Google Merchant Center, Meta, and Snapchat retrieve this file and build their product ads on it. One extension delivers the feed to all three — you don't need to install anything extra per channel.

Activate the extension

  1. Go to Extensions → Your Extensions and search for Shopping feedInstall the extension if it's not already installed.
  2. Turn on
  3. Activate the module at the top of the settings.

The feed will start generating in the background. The first time you open a feed URL right after activation, you might get a message that the feed is being generated — wait a few minutes and try again.

The Feed URLs

Replace yourstore.no with your own domain.

Channel

URL

Google Merchant Center

Meta (Facebook / Instagram)

Snap Pixel

Main product feed (without variants)

The top three point to the same content. The channels only expect their own file name, so use the URL that belongs to the channel you are setting up.

You can also find the URLs at the bottom of the extension's description, pre-filled.

Add the feed to Google Merchant Center

  1. Log in to Google Merchant Center.
  2. Add a new feed, and select scheduled fetch from URL.
  3. Paste the Google URL above.

Google has its own guide for the steps on its page: Add product data via a file source

Extra feed for main product

If you have products with variants, each variant is a separate row in the regular feed — one per size, color, or combination. Some systems cannot handle this and need one row per main product instead. Google often uses this as a supplementary feed.

Turn on extra feed for main product in the settings. Then mainproducts.php will be generated in addition to the regular feed, with only the main products.

This setting is easy to overlook: mainproducts.php responds with "Feed not enabled" as long as the switch is off, even if the Shopping feed module is otherwise active. No separate module is required — just this switch.

Settings

Setting

What it does

Activate module

The main switch. All feed URLs are dead without this

Use item number as ID

Sends the item number as product ID in the feed instead of the internal product ID

Allow image upscaling

Upscales product images to meet Google's minimum image size requirements

Update frequency in hours

24 or 6. See the update section below

Show all products regardless of stock status

All active products get "in stock" status in the feed, regardless of actual inventory

Stock status – ignore available date

Products that are in stock are marked as available even if they have a future availability date

Show custom labels in the shopping feed

Sends item number as custom_label_0 and the value from the product tag for custom labels as custom_label_1

Show quantity in the shopping feed

Includes actual stock quantity as a separate field

Support for backorder/pre-order

Uses preorder and backorder as status instead of marking everything out of stock as sold out

Minimum number of products

Products with fewer than this quantity in stock are omitted. If you set 3, products with 2 or fewer will disappear

extra feed for main product

Generates the extra feed without variants

Two of the settings are listed with the same name, "Allow image upscaling". The top one actually controls the item number as product ID — see the description text under each setting if you are unsure which one you are changing.

Product tags that control the feed

Some things are set per product instead of in the settings. The tags are located under Tags on the product page, and requires product tags to be enabled in the store.

Tag

What it does

Exclude from feeds

The product is completely removed from all feeds

Always in stock

The product is displayed as available regardless of actual stock

Minimum quantity (per product)

Overrides the "Minimum number of products" setting for this specific product

Dynamic availability date

The availability date is set to today's date plus the number of days you enter. Useful for pre-order items without a fixed date

Custom label

The value is sent as custom_label_1, provided that custom labels are enabled

Several of these tags must be created by Mystore before they appear on the product page. Contact customer service if you cannot find them.

Gift cards are always automatically removed from the feed.

Separate articles cover custom labels and pre-order in detail.

What the feed contains

Per product, among other things, the following is sent:

  • ID, title, and description
  • Google product category and the store's own category path
  • Link to the product page and to the main image, plus any additional images
  • Condition, shipping weight, and stock status
  • Availability date when the product is not yet in stock
  • Price in the store's standard currency, with campaign price and campaign period when the product is on offer
  • Brand, EAN, and whether the product has a valid barcode

The description is stripped of HTML. Products with variants are sent as one row per variant, linked together with a common group ID so that Google understands it is the same product.

When the feed is updated

The feed is stored as a pre-generated file on the server. This is the file that channels retrieve, which is why the feed URL responds quickly even with many thousands of products.

The file is rebuilt:

  • Once a day with the default setting 24.
  • Every six hours if you set the update frequency to 6 — approximately at 05:30, 11:30, 17:30, and 23:30.

If you change prices or stock, it will not take effect in the feed until the next generation. The same applies to products you exclude with a tag.

If no file exists yet — right after activation, or for a brand new feed — the URL will respond that the feed is being generated and will start the job. Wait a few minutes and retrieve again. Google and Meta will automatically try again themselves.

Troubleshooting

Symptom

Probable cause

"You need to install google PLA"

The Shopping feed module is not activated

"Feed not enabled" on mainproducts.php

"extra feed for main product" is off

"Feed is being generated"

The file has not been created yet. Try again in a few minutes

Products are missing from the feed

Check "Minimum number of products", the tag to exclude products, and if the product is active in the store

Everything appears as sold out

Look at "Show all products regardless of stock status" and "Stock status – ignore available date"

Price changes are not displayed

The feed has not been regenerated yet. Set the update frequency to 6 hours if you need faster updates

External tools cannot read price

Some tools expect a different format. If you use Klaviyo, there is a separate Klaviyo feed that is more suitable