Before you start
- A Google Merchant Center account with your storefront’s website verified and claimed, and a person who can sign in to it as an admin.
- The Merchant Center account isn’t connected to another Fluid company. One account connects to one company.
- A Fluid API token for the company, or your own sign-in with
fluid login. It needs company admin access: Company settings permission to connect and disconnect, and Products permission to choose and fix products. - Install and sign in to the CLI:
fluid channels command prints JSON. Failures print a JSON error on stderr and exit with a non-zero code.
Steps
1
Start the connection
url and, with --open, opens it in your browser. Nothing changes in Fluid until someone approves it in the next step. Without --open, send the url to the person who will approve it. The link works once and expires after 10 minutes; run connect again for a new one.2
Approve Fluid in Google
Sign in with the Google account that administers Merchant Center and approve the access Fluid asks for. Fluid connects the first Merchant Center account that Google account can reach.Google Merchant Center then sends the browser back to Fluid admin. The address ends in The step is done when
connect=ok when the connection saved, or connect=error&reason=... when it didn’t. Whatever the page shows, check the result from the CLI:connection.status is connected. connection.account names the Merchant Center account Fluid connected.3
Choose the products
This changes live configuration: it sends products to Google Merchant Center. Decide first between the whole catalog and selected products; see Whole catalog or selected products.To send only some products, name them instead:The output’s
added counts the products sent. Each one starts as a draft and publishes in the background.4
Check the sync
listings.byStatus counts the listings in each state and listings.issues counts the ones that need you. Publishing and Google Merchant Center’s review take from minutes to a few days. Check again later, backing off between checks, rather than in a loop.5
Fix rejected products
action and a hint that says what to fix. Fix the product in Fluid, then:- For
action: retry, retry every failed publish at once. This changes live configuration:fluid channels issues google --retry --yes. - For
action: fix_and_relist, remove the product and add it again so the corrected version is sent:fluid channels catalog google --remove 4127 --yes, then--add 4127 --yes. - For
action: resolve_on_channel, Google Merchant Center took the listing down. Check the reason in Google Merchant Center.
count is 0.Whole catalog or selected products
Fluid lists the products you send, one listing per product. There’s no setting that keeps the whole catalog in step with Google Merchant Center on its own, so the choice is about which products you send now and how you add new ones later.
Start with a few products if you haven’t sold on Google Merchant Center before. You’ll see what Google Merchant Center rejects before you send everything.
Each product needs, before it’s sent:
- A SKU on every active variant, unique across the products you list on Google.
- At least one active variant.
- A title, description, price, and image. A product with no image of its own is sent with your company’s fallback image, which Google’s review may disapprove.
fluid channels issues google.
Google reviews each product. review shows Google’s status, and auditStatus is approved once Google approves it or audit_failed if Google disapproves it.
Edits you make in Fluid after a product is sent, including price changes, aren’t sent to Google. Remove the product and add it again to send the current version. Fluid sends every product as in stock, whatever its inventory.
To take products off Google Merchant Center, use --remove with product IDs, or --remove-all for every listed product. Removing a product deletes it from Merchant Center.
What the status means
Troubleshooting
connectfails with422. Fluid couldn’t start the connection, usually because the channel isn’t set up for your company yet. Contact Fluid support.- The address after approving ends in
connect=error. Thereasonsays why.invalid_statemeans the link was used twice or expired: runconnectagain for a new one. - The reason is
no_accounts. The Google account you approved with can’t reach a Merchant Center account. Sign in with one that administers Merchant Center and runconnectagain. - The reason is
account_already_connected. Another Fluid company already holds this Merchant Center account. Disconnect it there first. - A command fails with
404. The company has no Google Merchant Center connection. Run step 1. - A command fails with
403. Your token lacks the permission that command needs: Company settings for the connection, Products for products. - Adding or removing products fails with
422. The connection isn’t active. Checkconnection.statusand reconnect if it isn’tconnected.
Disconnect
stillListed counts the products left on Google Merchant Center.
Use the API directly
The CLI calls these company operations, all authenticated with a Bearer token:- Start the Google Merchant Center connect flow, which returns the sign-in
url. - Get the company’s Google Merchant Center connection.
- Publish Fluid products to the connected Merchant Center.
- List the company’s Google Shopping listings.
- Retry a failed Google Shopping listing publish.
- Unpublish a Google Shopping listing.
- Disconnect the company’s Google Merchant Center connection.