Google Shopping Store Management
Google Shopping Store Management connects a Google Merchant Center account to Odoo. This page is the installation and configuration guide for the module you downloaded from your ECOSIRE dashboard. Everything below describes the googleshopping_store_management module as it ships today.
| Technical name | googleshopping_store_management |
| Odoo versions | 17.0, 18.0, 19.0 (Community or Enterprise) |
| Current shipped version | 17.0 → 17.0.3.0.0, 18.0 → 18.0.3.0.0, 19.0 → 19.0.3.1.0 |
| Price | $499 USD — one-time, per Odoo version |
| Odoo module licence | OPL-1 (Odoo Proprietary License v1.0) |
| Category | Connector |
Requirements
| Requirement | Detail |
|---|---|
| Odoo | 17.0, 18.0 or 19.0, Community or Enterprise. Self-hosted or Odoo.sh — Odoo Online (SaaS) cannot install third-party modules |
| Odoo apps | base, sale_management, stock, account, delivery, mail, web, portal, product, contacts, digest — Odoo installs any that are missing |
| Python packages | requests |
| Platform account | A Google Merchant Center account and a Google Cloud project with the Merchant API enabled |
Install the Python packages into the same interpreter that runs Odoo:
sudo -u odoo pip install requests
Installation
1. Download the ZIP for your Odoo version
Sign in at ecosire.com and open your dashboard downloads, then pick the file for the Odoo version you run.
2. Extract into your addons path
unzip googleshopping_store_management_v19_*.zip -d /opt/odoo/addons/
ls /opt/odoo/addons/googleshopping_store_management/__manifest__.py # sanity check
The archive contains a single top-level googleshopping_store_management/ directory. If your ls check fails, the module folder ended up one level too deep — move it up so __manifest__.py sits directly inside googleshopping_store_management/.
3. Restart Odoo and install
sudo systemctl restart odoo
- Go to Apps and click Update Apps List (developer mode must be on).
- Search for Google Shopping Store Management and click Install.
- Odoo pulls in the Odoo apps listed above automatically.
When the install finishes, a Google Shopping menu appears in the main Odoo app switcher.
The module needs no licence key or activation step.
Configuration
Connect to Google Shopping
Open Google Shopping → Configuration → Instances and create a record (model googleshopping.instance). The connection fields are:
| Label | Technical name | Required | Values |
|---|---|---|---|
| Client ID | client_id | Yes | Text |
| Client Secret | client_secret | Yes | Text |
| Refresh Token | refresh_token | Yes, to connect | Text |
| Merchant ID | merchant_id | Yes | Text |
Client ID, Client Secret, Refresh Token and Merchant ID are needed to connect. The Client ID/Secret are OAuth credentials from a Google Cloud project with the Merchant API enabled; the Merchant ID is your Merchant Center account number. For Merchant Center data the connector calls Google's Merchant API v1 only.
The same record carries 4 behaviour checkboxes — auto_validate_inventory, auto_confirm_order, auto_create_invoice, auto_validate_invoice. They gate what the connector is allowed to do automatically once it is connected. Leave anything you are not ready for switched off, and turn them on one at a time.
Credentials are issued from the Google Cloud Console + Google Merchant Center — see developers.google.com/merchant. The connector talks to merchantapi.googleapis.com (Merchant API v1), with tokens from oauth2.googleapis.com/token.
When the fields are filled in, click Test Connection. The record's status moves to connected only when the platform answers successfully — do not run a first import until it does.
Scheduled actions
The module installs 13 scheduled actions (Settings → Technical → Scheduled Actions):
| Scheduled action | Runs every | Enabled on install |
|---|---|---|
| Googleshopping: Sync Products | 30 minutes | Yes |
| Googleshopping: Sync Orders | 15 minutes | Yes |
| Googleshopping: Sync Customers | 60 minutes | Yes |
| Googleshopping: Sync Inventory | 10 minutes | Yes |
| Googleshopping: Process Queue Jobs | 5 minutes | Yes |
| Googleshopping: Import Payout Reports | 6 hours | Yes |
| Googleshopping: Import Refunds | 30 minutes | Yes |
| Googleshopping: Auto Risk Detection | 30 minutes | Yes |
| Googleshopping: Generate Analytics | 4 hours | Yes |
| Googleshopping: Webhook Health Check | 60 minutes | Yes |
| Googleshopping: Cleanup Old Logs | 24 hours | Yes |
| Googleshopping: Process Workflows | 10 minutes | Yes |
| Googleshopping: Daily Summary Report | 1 days | Yes |
Intervals above are the shipped defaults. From the next 19.0 release (19.0.3.2.0) Sync Orders, Sync Customers, Import Payout Reports and Import Refunds ship disabled, because Google no longer runs a marketplace checkout (Buy on Google); on 17.0, 18.0 and 19.0.3.1.0 they ship enabled. Adjust them to your volume — but be aware that the platform, not Odoo, sets the API rate limits, and shortening a sync interval is the usual cause of throttling errors in the logs.
Using the module
The Google Shopping menu is laid out as:
- Google Shopping → Dashboard
- Google Shopping → Products
- Google Shopping → Analytics
- Google Shopping → Operations — Run Operations, Queue Jobs, Logs
- Google Shopping → Configuration — Instances, Locations, Scheduled Actions, Webhooks, Conversion Actions
- Google Shopping → Merchant Center — Merchant Accounts, Product Approvals and Issues, Data Sources / Feeds, Local Stores
- Google Shopping → Performance Max
A normal first run is:
- Test Connection until the instance reads connected.
- Review the mapping records (categories, order statuses, payment and shipping methods) so imported data lands on the right Odoo records.
- Run a small import first — restrict it by date or by a handful of products — and check the results before letting the scheduled actions take over.
- Watch the Logs view during the first full sync. Every sync writes a log line; failures are recorded there rather than raised at the user.
Module-specific notes
- The connector calls Google's Merchant API v1 for all Merchant Center data. Enable the Merchant API in the Google Cloud project that issues your OAuth credentials.
- The Merchant Center menu surfaces merchant accounts, product approvals and issues, data sources/feeds, and local stores — start there when products are rejected by Google.
- A Performance Max view and Conversion Actions configuration exist for accounts that also run Google Ads. Campaign figures are entered by you: the connector includes a Google Ads API client but does not yet import campaigns automatically.
- Exported products send title, description and price only, with feed label
USand content languageen. Add GTIN, brand, images and other attributes in Merchant Center. - GA4 measurement ID, API secret and Consent Mode v2 fields are stored in Odoo; the module does not send events to GA4.
Troubleshooting
Syncing
| Symptom | Cause and fix |
|---|---|
| Test Connection fails | Re-check every required field in the table above. Most failures are a mistyped secret, or credentials created for the sandbox while the connector points at production (or vice-versa). |
| Nothing syncs even though the connection is fine | The scheduled actions are disabled at the Odoo level, or Odoo's cron worker is not running. Check Settings → Technical → Scheduled Actions and that --max-cron-threads is greater than zero. |
| Sync starts then stops part-way | Read the Logs view for that run. Rate limiting and rejected field values are the two common causes; both are logged with the platform's own error text. |
| Records import but map to the wrong Odoo values | Fix the mapping records under the module's configuration, then re-run the import. |
| Duplicated products or customers | Run the initial import once. If a first attempt half-finished, check the existing records before re-running rather than importing on top. |
Version history
| Odoo version | Version you download today |
|---|---|
| 17.0 | 17.0.3.0.0 |
| 18.0 | 18.0.3.0.0 |
| 19.0 | 19.0.3.1.0 |
ECOSIRE module versions are <odoo major>.<module major>.<minor>.<patch>, so 19.0.2.0.3 is the Odoo 19 build of module version 2.0.3. Your installed version is shown in Apps.