Skip to content

sr_multichannel_ecommerce — Programmer's Notes

Module version: 17.0.2.4.0 Last updated: 2026-03-29 Primary owner: Dan Dependencies: sr_inventory_processing, sr_general_sales, base, stock, product, sale


What This Module Does

Multi-channel marketplace automation for processed inventory (laptops, phones, tablets, desktops). Handles eBay/Amazon/Walmart listing, order import, repricing, shipping labels, inventory sync, and tracking upload. Converts marketplace orders to Odoo sale orders and invoices.

Downstream Dependents

Module What it uses
sr_operations_kpi References for KPI calculations

Upstream Dependencies (CRITICAL)

This module sits on top of TWO modules — both must be working:

  • sr_general_sales — provides marketplace.api.connector, general.sale.item, marketplace.listing.template.mixin, security groups
  • sr_inventory_processing — provides processed.inventory.item model

If either breaks, this module breaks.

Key Models

Model Purpose
marketplace.order Multi-channel order tracking
marketplace.order.line Order line items
marketplace.order.import.service Imports orders from APIs
sale.order.bridge.service Converts marketplace orders → Odoo sale orders
marketplace.pricing.config Fee rates and margins by device category
ebay.listing.template eBay-specific listing templates for electronics
ebay.listing.history Listing change history
marketplace.repricing.rule Auto-repricing rules
marketplace.repricing.service Executes repricing
marketplace.inventory.sync.service Cross-channel stock sync
shipping.label.service Multi-carrier label generation
tracking.upload.service Uploads tracking to marketplaces

Key Gotchas

  • ecommerce_enterprise module was removed (2026-03-29). If it exists on any server, UNINSTALL it first — same model names cause conflicts.
  • Repricing cache corruption — repricing service caches competition prices in ir.config_parameter keys starting with ebay_repricing_cache_*. If repricing acts weird, clear all these params.
  • Cross-channel oversell risk — when an order comes in on one channel, inventory sync should update others. If the sync cron is disabled, manual deduction is needed.
  • sp_api Python package — listed as external dependency but only needed if Amazon order import is enabled. Module installs fine without it.
  • Rebrand complete — all references changed from "Scott Recycling" to "International Recyclers" in v2.4.0. Check listing templates if old branding appears.
  • Photo upload — uses the same eBay Picture Services as sr_general_sales. Photos must be 500px+ minimum.

Cron Jobs

All disabled by default — enable after configuring API credentials:

Job Purpose
Order Import Pull orders from eBay/Amazon/Walmart
Repricing Apply repricing rules to active listings
Inventory Sync Sync stock across channels
Tracking Upload Push tracking numbers to marketplaces