- Home
- Apps
- Multichannel & PIM Tools
- Google Merchant Center / Shopping Feed Manager Pro
Illustrative previewBuild-to-order Odoo module generating Google-compliant Shopping feeds
— multi-country, multi-currency, auto-scheduled FTP/SFTP delivery.
What is Google Merchant Center / Shopping Feed Manager Pro?
Build-to-order Odoo module generating Google-compliant Shopping feeds — multi-country, multi-currency, auto-scheduled FTP/SFTP delivery. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Google Merchant Center / Shopping Feed Manager Pro is a build-to-order Odoo module that turns your Odoo product catalog into fully Google-compliant Shopping feeds — without CSV exports, spreadsheet cleanup, or brittle third-party middleware. ECOSIRE designs, builds, installs, and supports this module for your specific catalog and campaign structure; it is NOT an off-the-shelf apps.odoo.com instant download. After purchase we scope your requirements and deliver a production-ready module in roughly one working week.
At its core the module adds a product.feed model (plus product.feed.mapping and product.feed.run log models) that reads directly from your product.template / product.product records and renders a Google-spec XML (RSS 2.0 with the g: namespace) or delimited TXT feed. Every required Shopping attribute — id, title, description, link, image_link, price, availability, condition, brand, gtin, mpn — is mapped through a configurable attribute-mapping layer so you decide exactly which Odoo field (standard or custom) feeds each Google attribute. Computed fields (@api.depends) keep derived values such as sale price, availability from qty_available, and localized titles always current.
Because Google Shopping is inherently multi-market, the module supports multiple feed instances: one feed per category, country, language, or e-commerce sales channel. Each country-specific instance carries its own target language, pricelist_id, and currency, so a EUR feed for Germany and a GBP feed for the UK derive correct, per-market prices from your existing Odoo pricelists and taxes — no duplicate products required. Feeds regenerate on demand from a button, or automatically on a schedule via ir.cron, and are pushed straight to Merchant Center over FTP, SFTP, or HTTPS with credentials stored securely in Odoo settings. A per-run log records item counts, warnings (missing GTIN, disapproved-risk fields), and transport results so you always know the last successful upload.
Access is locked down with ir.model.access.csv plus record rules (feeds scoped per company / marketing team), views are delivered as clean XML/OWL for Odoo 17, 18 and 19 (Community or Enterprise), and an optional QWeb report gives you a printable feed-health summary. Where you need programmatic control — CI validation, external orchestration — the feed generation and status endpoints are reachable via Odoo's XML-RPC / JSON-RPC API. The result is a single source of truth in Odoo driving your Google Shopping and Performance Max campaigns, with clean, compliant data that reduces product disapprovals and keeps ad spend working.
What you get
- A complete, installable Odoo module (technical name provided at handover) with __manifest__.py declaring dependencies (product, stock, website_sale where applicable) and pinned to your Odoo 17, 18 or 19 series
- All Python models (product.feed, product.feed.mapping, product.feed.run) with ORM fields, @api.depends computes, and feed-generation/transport business logic
- XML/OWL views, menus, actions, the ir.cron scheduled job definitions, and ir.model.access.csv + record rules for role-scoped security
- Pre-configured feed instances for your live markets (e.g. per-country/currency feeds) and a validated attribute mapping matched to your actual product fields and custom labels
- Configuration and administrator documentation covering how to add feeds, edit mappings, set FTP/SFTP/HTTPS credentials, and read the run log — plus a Merchant Center linking walkthrough
- A live training session (recorded) for your marketing and Odoo-admin team on operating, extending, and troubleshooting the feeds
- A defined post-go-live support and bug-fix window (two weeks) with a named ECOSIRE contact, plus an optional ongoing maintenance/update plan
- Deployment support: installation on your Odoo instance (staging then production), a first validated feed pushed to Merchant Center, and source code delivered to your Git repository
Who this is for
Performance Marketing Lead
Runs Google Shopping and Performance Max campaigns and needs clean, always-current product data flowing from Odoo to Merchant Center without manual CSV wrangling. Wants custom labels and per-market feeds to segment bids and cut product disapprovals.
E-commerce / Online Store Manager
Owns the Odoo website catalog across multiple countries and currencies. Needs each market to advertise the right price, language, and availability, and wants feed generation to just run on a schedule instead of being a weekly chore.
Odoo Administrator / IT Lead
Responsible for the Odoo instance and its integrations. Wants a properly built module — secured with access rules, scheduled via ir.cron, upgrade-safe across 17/18/19, and callable over XML-RPC — rather than fragile spreadsheets or an unmaintained third-party app.
How Google Merchant Center / Shopping Feed Manager Pro Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Reads live data straight from Odoo products (no CSV export step) | Native product.template/product.product read with @api.depends computes | Possible but you build and maintain the ORM logic yourself | Usually yes, but mapping is fixed to the app's assumptions | Not included |
| Multi-country / multi-currency feeds from existing pricelists | One feed instance per market with its own pricelist and currency | Achievable but significant bespoke effort | Partial support | Not included |
| Scheduled auto-upload to Merchant Center via FTP/SFTP/HTTPS | Built with ir.cron plus secure transport to your MC account | You must build cron jobs and transport handling | Partial support | Not included |
| Fully configurable Odoo-field to Google-attribute mapping | Dedicated mapping layer covering standard and custom fields | Hard-coded unless you build a mapping UI | Partial support | Not included |
| Google-spec XML (RSS 2.0 g: namespace) and TXT output | Both formats, validated against current Shopping spec | Depends entirely on your implementation | Included | Not included |
| Security via ir.model.access.csv and record rules | Role- and company-scoped access to feeds and credentials | Only if you author the ACLs and rules yourself | Partial support | Not included |
| Built, installed and supported for your catalog by the vendor | Scoped build, deployment, training, and support window | Your internal team owns all delivery and upkeep | Not included | Not included |
| Guaranteed compatibility across Odoo 17, 18 and 19 | Pinned and version-tested for your series, upgrade path available | You port it forward on each upgrade | Partial support | Not included |
Frequently Asked Questions about Google Merchant Center / Shopping Feed Manager Pro
How long does delivery take, and what happens after I buy?
This is a build-to-order module, not an instant download. After purchase we run a short scoping call to confirm your markets, currencies, product fields, and Merchant Center setup, then design, build, and install the module. Typical delivery is one working week depending on catalog complexity and the number of country feeds. You get staging access to review before we push the first live feed to production.
What support and updates are included?
Every build includes a post-go-live support window (two weeks) with a named ECOSIRE contact for bug fixes and questions. Because we deliver the full source to your Git repository, you own the code. We also offer an optional ongoing maintenance plan that covers Odoo version upgrades (17→18→19), Google Shopping specification changes, and new feature requests as your campaigns grow.
Does this work with my Odoo version and edition?
Yes. We build against your specific series — Odoo 17, 18, or 19 — and the module works on both Community and Enterprise editions. The __manifest__.py and views are pinned to your version so upgrades stay predictable, and we can port the module forward under a maintenance plan when you upgrade Odoo.
How does multi-country and multi-currency pricing work?
You create one feed instance per market. Each instance carries its own target language, Odoo pricelist, and currency, so a German EUR feed and a UK GBP feed derive correct per-market prices from your existing pricelists and tax configuration — no duplicated products. The feed reflects Odoo website visibility and availability from stock on hand for each channel.
How are feeds delivered to Google Merchant Center?
Generated feeds are automatically uploaded to Merchant Center over FTP, SFTP, or HTTPS, on a schedule you set via Odoo's ir.cron (for example nightly), or on demand from a button. Credentials are stored securely in Odoo configuration parameters. Each run is logged with item counts, validation warnings, and the upload result so you can confirm the latest feed landed.
Can I control exactly which Odoo field maps to each Google attribute?
Yes. A dedicated attribute-mapping layer lets you bind any Odoo field — standard or a custom field — to each Google Shopping attribute (title, description, GTIN, MPN, brand, condition, custom_label_0–4, and more). You can also filter which products enter each feed by category, brand, stock status, or a saved domain, so only eligible, compliant SKUs are exported.
Can other systems trigger or read the feed?
Yes. The generation and status methods are reachable through Odoo's XML-RPC / JSON-RPC API, so external tools or CI pipelines can trigger regeneration, validate feed output, or check the last-run status. This is useful if you orchestrate campaigns or feed QA from outside Odoo.
Related Modules

GLS Shipping Connector for Odoo
Build-to-order GLS parcel integration for Odoo: labels, live rates, tracking sync, returns and multi-parcel — built and installed by ECOSIRE.
Google Analytics 4 eCommerce Tracking for Odoo
A build-to-order Odoo module that wires your Odoo eCommerce website into Google Analytics 4 with a complete, consent-aware retail event stream. ECOSIRE scopes, builds, installs, and supports it — this is not an off-the-shelf download.

Headless E-Commerce / Storefront API Layer
A build-to-order Odoo module that exposes your eCommerce catalog, cart, checkout, orders and customer accounts as a clean REST and GraphQL API. ECOSIRE builds, installs and supports it so your headless storefront or mobile app can treat Odoo as the single source of truth.

Hide Cost Price
A build-to-order Odoo module that restricts product cost price visibility to the exact user roles you nominate, hardened across form views, list views, reports, and the RPC API. ECOSIRE scopes, builds, installs, and supports it for your database.
Google Merchant Center / Shopping Feed Manager Pro
Build-to-order Odoo module generating Google-compliant Shopping feeds — multi-country, multi-currency, auto-scheduled FTP/SFTP delivery.
- Google-compliant feed generation in both XML (RSS 2.0 with the g: namespace) and delimited TXT formats, rendered via QWeb/templating directly from product.template and product.product records
- Manual on-demand generation from a button plus fully scheduled regeneration through ir.cron automated actions (hourly, daily, or custom cadence)
- Multiple independent feed instances — one feed per product category, country, language, or e-commerce sales channel — managed from a single product.feed model
- Country-specific instances that each carry their own target market, language, pricelist_id and currency, deriving correct per-market prices from existing Odoo pricelists and tax rules