Facebook & Meta Shop Store Management
Facebook & Meta Shop Store Management connects a Meta (Facebook/Instagram) Shop catalogue to Odoo. This page is the installation and configuration guide for the module you downloaded. Everything below describes the facebook_store_management module as it ships today.
| Technical name | facebook_store_management |
| Odoo versions | 17.0, 18.0, 19.0 (Community or Enterprise) |
| Current shipped version | 19.0 → 19.0.2.1.0 (published tag); 18.0 and 17.0 builds are also available |
| Price | $499 USD — one-time |
| Odoo module licence | OPL-1 — no licence key or activation |
| 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 Meta Business account with a Commerce Manager catalog and a system-user access token |
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
Download the module from the Odoo Apps Store, or from your ecosire.com purchase.
2. Extract into your addons path
unzip facebook_store_management_v19_*.zip -d /opt/odoo/addons/
ls /opt/odoo/addons/facebook_store_management/__manifest__.py # sanity check
The archive contains a single top-level facebook_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 facebook_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 Facebook & Meta Shop Store Management and click Install.
- Odoo pulls in the Odoo apps listed above automatically. No licence key is needed.
When the install finishes, a Facebook menu appears in the main Odoo app switcher.
Configuration
Connect to Facebook & Meta Shop
Open Facebook → Configuration → Instances and create a record (model facebook.instance). The connection fields are:
| Label | Technical name | Required | Values |
|---|---|---|---|
| API Key | api_key | No | Text |
| Access Token | access_token | Yes | Text |
| Catalog ID | catalog_id | Yes | Text |
| Page ID | page_id | No | Text |
| App ID | app_id | No | Text |
| App Secret | app_secret | No | Text |
Where the Label column shows —, the module does not set an explicit label and Odoo derives one from the technical name, so the wording on screen may differ slightly. The technical name is the reliable identifier.
Access Token and Catalog ID are required. The token is a Meta system-user or page token with commerce permissions; the Catalog ID identifies the catalogue in Commerce Manager. App Secret is optional; it signs requests (appsecret_proof) and, on Odoo 19, verifies incoming webhooks (X-Hub-Signature-256).
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 Meta for Developers / Commerce Manager — see developers.facebook.com/docs. The connector talks to the Meta Graph API — graph.facebook.com/v25.0 (fallback v24.0 declared).
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 |
|---|---|---|
| Facebook: Sync Products | 30 minutes | Yes |
| Facebook: Sync Orders | 15 minutes | Yes |
| Facebook: Sync Customers | 60 minutes | Yes |
| Facebook: Sync Inventory | 10 minutes | Yes |
| Facebook: Process Queue Jobs | 5 minutes | Yes |
| Facebook: Import Payout Reports | 6 hours | Yes |
| Facebook: Import Refunds | 30 minutes | Yes |
| Facebook: Auto Risk Detection | 30 minutes | Yes |
| Facebook: Generate Analytics | 4 hours | Yes |
| Facebook: Webhook Health Check | 60 minutes | Yes |
| Facebook: Cleanup Old Logs | 24 hours | Yes |
| Facebook: Process Workflows | 10 minutes | Yes |
| Facebook: Daily Summary Report | 1 days | Yes |
Intervals above are the shipped defaults. 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 Facebook menu is laid out as:
- Facebook → Dashboard
- Facebook → Orders
- Facebook → Refunds
- Facebook → Products
- Facebook → Customers
- Facebook → Lead Ads — Lead Forms, Leads (Odoo 19 build 19.0.2.1.1 and later)
- Facebook → Payouts
- Facebook → Analytics
- Facebook → Operations — Run Operations, Queue Jobs, Logs
- Facebook → Configuration — Instances, Locations, Payment Gateways, Scheduled Actions, Webhooks
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
- Access Token and Catalog ID are the required pair. The token must carry commerce permissions for the catalogue; a plain page token is not enough.
- App Secret is optional and is used for request signing — set it if your Meta app enforces
appsecret_proof.
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 | Newest published tag |
|---|---|
| 19.0 | 19.0.2.1.0 |
| 18.0 | 18.0.2.0.4 |
| 17.0 | 17.0.2.0.3 |
ECOSIRE module versions are <odoo major>.<module major>.<minor>.<patch>. Your installed version is shown in Apps.