Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
ffaab2a
[ADD] shoppingfeed_integration
juancarlosonate-tecnativa Nov 11, 2025
99b6d0c
[IMP] shoppingfeed_integration: Add field in the channel to disable i…
carlos-lopez-tecnativa May 15, 2026
555b041
[IMP] shoppingfeed_integration: Performance and memory consumption
carlosdauden May 16, 2026
08bf0e8
[IMP] shoppingfeed_integration: Reduce SQL calls using data dict
carlosdauden May 16, 2026
5f55036
[IMP] shoppingfeed_integration: add filter to sales for shoppingfeed …
eduezerouali-tecnativa May 18, 2026
70a5508
[IMP] shoppingfeed_integration: No vat validation for created partners
sergio-teruel May 18, 2026
fe78216
[IMP] shoppingfeed_integration: Add option to auto-confirm sales orders
carlos-lopez-tecnativa May 18, 2026
592b0f8
[IMP] shoppingfeed_integration: Add option to configure the filter us…
carlos-lopez-tecnativa May 18, 2026
c188892
[FIX] shoppingfeed_integration: include_taxes_in_price not take into …
sergio-teruel May 18, 2026
79db2e9
[IMP] shoppingfeed_integration: Log post shoppingfeed upload status
sergio-teruel May 18, 2026
5f54dcf
[IMP] shoppingfeed_integration: compute taxes correctly
sergio-teruel May 19, 2026
612fdb4
[IMP] shoppingfeed_integration: compute taxes correctly for carrier s…
sergio-teruel May 19, 2026
0c6eb8e
[IMP] shoppingfeed_integration: Change the carrier field from many2on…
carlos-lopez-tecnativa May 19, 2026
6bb2d9b
[IMP] shoppingfeed_integration: Format phone numbers for billing and …
carlos-lopez-tecnativa May 21, 2026
efe0bd2
[IMP] shoppingfeed_integration: Debug log message to send picking to SF
sergio-teruel May 21, 2026
f098b90
[FIX] shoppingfeed_integration: Invoices not upload to shoppingfeed i…
sergio-teruel May 21, 2026
680bc80
[FIX] shoppingfeed_integration: Singleton error on order import
carlosdauden May 22, 2026
7c54a5c
[IMP] shoppingfeed_integration: Prevent singleton error when no phone…
carlos-lopez-tecnativa May 26, 2026
2907d8b
[IMP] shoppingfeed_integration: Add date_download_since filter to fet…
juancarlosonate-tecnativa May 28, 2026
d2600f7
[IMP] shoppingfeed_integration: neutralize sets demo_mode on all stores
juancarlosonate-tecnativa May 28, 2026
9831788
[IMP] shoppingfeed_integration: Add configurable order status filter …
juancarlosonate-tecnativa Jun 2, 2026
6a55a6d
[IMP] shoppingfeed_integration: Request max page size when fetching o…
juancarlosonate-tecnativa Jun 2, 2026
adad329
[FIX] shoppingfeed_integration: use invalidate_all to prevent feed 500
juancarlosonate-tecnativa Jun 2, 2026
85985d4
[IMP] shoppingfeed_integration: store marketplace reference in client…
juancarlosonate-tecnativa Jun 3, 2026
593a400
[FIX] shoppingfeed_integration: Context key make no check vies valid …
sergio-teruel Jun 8, 2026
4291d52
[IMP] shoppingfeed_integration: Set country vat code and force vat on…
sergio-teruel Jun 9, 2026
835e386
[IMP] shoppingfeed_integration: reuse existing partner by VAT to avoi…
juancarlosonate-tecnativa Jun 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
256 changes: 256 additions & 0 deletions shoppingfeed_integration/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,256 @@
========================
Shoppingfeed Integration
========================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:900310fb90d1b308542f357095bbe83e185157a9bf74ec78154f8f636d4d8098
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fshoppingfeed-lightgray.png?logo=github
:target: https://github.com/OCA/shoppingfeed/tree/18.0/shoppingfeed_integration
:alt: OCA/shoppingfeed
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/shoppingfeed-18-0/shoppingfeed-18-0-shoppingfeed_integration
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/shoppingfeed&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module integrates Odoo with Shoppingfeed, a platform that connects
your store with multiple marketplaces.

- Export product catalogs to Shoppingfeed in XML format
- Import orders from connected marketplaces automatically
- Synchronize product prices and stock levels in real-time
- Map marketplace channels to Odoo sale order types
- Map delivery carriers from marketplaces to Odoo carriers
- Track Shoppingfeed tickets and notifications
- Configure export filters by product type, category, and stock
availability

**Table of contents**

.. contents::
:local:

Configuration
=============

Store Setup
-----------

Create and authenticate your store
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

1. Go to **Shoppingfeed → Stores**
2. Click **New** and fill:

- **Username**: Shoppingfeed API email
- **Password**: Shoppingfeed API password

3. Click **Get Token** button

- Automatically retrieves: catalog ID, channels, country, and
language

Configure product export
~~~~~~~~~~~~~~~~~~~~~~~~

In the store form, configure these tabs:

Exportable Products tab
^^^^^^^^^^^^^^^^^^^^^^^

- **Export only selected**: Only export products with "Export to
Shoppingfeed" enabled
- **Export Product Types**: Select product types to include (Goods,
Services, Combos)
- **Export Rules**: Control which products to include:

- Out of stock products
- Archived products
- Non-salable products

Stock tab
^^^^^^^^^

- **Use actual stock state**: Use real quantities vs default quantity
- **Quantity type**: Salable (on-hand) or Virtual (forecasted)
- **Default quantity**: Quantity for products without stock tracking
- **Force zero quantity non salable**: Set 0 for non-salable products
- **Update quantities realtime**: Push stock changes immediately to
Shoppingfeed

Prices tab
^^^^^^^^^^

- **Pricelist**: Optional pricelist for computing export prices

Attributes tab
^^^^^^^^^^^^^^

- **Use product ID as SKU**: Use product ID instead of default code
- **Custom SKU field**: Select custom field for SKU (optional)
- **Additional attribute fields**: Add custom product fields to export

Images tab
^^^^^^^^^^

- **Export all images**: Include all product images
- **Exported image count**: Limit number of images (if not exporting
all)

Categories tab
^^^^^^^^^^^^^^

- **Allowed categories**: Restrict export to specific product categories

Shipping tab
^^^^^^^^^^^^

- **Default delivery carrier**: Fallback carrier for unmapped carriers
- **Carrier mappings**: Map Shoppingfeed carrier names to Odoo carriers

- Add lines with Shoppingfeed carrier name and corresponding Odoo
carrier

Orders tab
^^^^^^^^^^

- **Import orders**: Enable automatic order import
- **Default payment term**: Payment terms for imported orders
- **Default payment mode**: Payment mode for imported orders
- **Default order type**: Order type for imported orders
- **Marketplace customer groups**: Map channels to specific order types

- Add lines with Channel and Order Type

Product Setup
-------------

Mark products for export
~~~~~~~~~~~~~~~~~~~~~~~~

1. Open a product
2. In **Shoppingfeed** tab:

- Enable **Export to Shoppingfeed** (if store requires it)
- Select **Shoppingfeed Stores** to export this product to

**Note**: Products need default code (internal reference) to export.

Catalog Feed
------------

After configuration, your XML catalog feed is available at:

::

https://yourdomain.com/catalog/{catalog_id}.xml

Share this URL with Shoppingfeed for product synchronization.

Usage
=====

Product Updates
---------------

Price changes
~~~~~~~~~~~~~

Product price updates send automatically to linked Shoppingfeed stores.

Stock changes
~~~~~~~~~~~~~

Stock updates send automatically if store has **Update quantities
realtime** enabled.

Orders
------

View orders
~~~~~~~~~~~

Go to **Shoppingfeed → Marketplace Orders** to see marketplace orders.

Orders show:

- Shoppingfeed Order ID
- Shoppingfeed Reference
- Shoppingfeed Store
- Shoppingfeed Channel (Amazon, eBay, etc.)
- Shoppingfeed Status

Process orders
~~~~~~~~~~~~~~

1. Confirm order
2. Validate delivery → shipment info sends to Shoppingfeed
3. Validate invoice → PDF uploads to Shoppingfeed (if channel supports
it)

Orders auto-acknowledge in Shoppingfeed on import.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/shoppingfeed/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/shoppingfeed/issues/new?body=module:%20shoppingfeed_integration%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Tecnativa

Contributors
------------

- `Tecnativa <https://www.tecnativa.com>`__:

- Juan Carlos Oñate

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

.. |maintainer-juancarlosonate-tecnativa| image:: https://github.com/juancarlosonate-tecnativa.png?size=40px
:target: https://github.com/juancarlosonate-tecnativa
:alt: juancarlosonate-tecnativa

Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:

|maintainer-juancarlosonate-tecnativa|

This module is part of the `OCA/shoppingfeed <https://github.com/OCA/shoppingfeed/tree/18.0/shoppingfeed_integration>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 2 additions & 0 deletions shoppingfeed_integration/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
from . import controllers
from . import models
36 changes: 36 additions & 0 deletions shoppingfeed_integration/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Copyright 2025 Juan Carlos Oñate - Tecnativa <juancarlos.onate@tecnativa.com>
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
{
"name": "Shoppingfeed Integration",
"version": "18.0.1.0.4",
"summary": "Integrate Odoo with Shoppingfeed for product export and order sync",
"category": "Sales",
"author": "Tecnativa, Odoo Community Association (OCA)",
"maintainers": ["juancarlosonate-tecnativa"],
"website": "https://github.com/OCA/shoppingfeed",
"license": "AGPL-3",
"depends": [
"stock",
"website_sale",
"product_brand",
"sale_order_type",
"account_payment_sale",
"phone_validation",
],
"data": [
"security/shoppingfeed_security.xml",
"security/ir.model.access.csv",
"security/ir_rule.xml",
"views/sale_order_views.xml",
"views/shoppingfeed_ticket_views.xml",
"views/shoppingfeed_store_views.xml",
"views/shoppingfeed_log_views.xml",
"views/product_template_views.xml",
"views/product_pricelist_views.xml",
"views/shoppingfeed_channel_views.xml",
"views/product_attribute_views.xml",
"views/menus.xml",
"data/cron.xml",
],
"installable": True,
}
1 change: 1 addition & 0 deletions shoppingfeed_integration/controllers/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import catalog
Loading
Loading