跳至主要内容
产品详细信息以英文显示。翻译即将推出。
OTTO Market Marketplace Connector — A build-to-order Odoo connector that syncs OTTO Market orders, listings, stock and settle — 1/1示意预览

A build-to-order Odoo connector that syncs OTTO Market orders,

listings, stock and settlements directly into your Odoo database.

ECOSIRE scopes, builds, installs and supports it for your exact Odoo version and warehouse setup.

什么是 OTTO Market Marketplace Connector?

A build-to-order Odoo connector that syncs OTTO Market orders, listings, stock and settlements directly into your Odoo database. ECOSIRE scopes, builds, installs and supports it for your exact Odoo version and warehouse setup. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.

核心功能

Dedicated `otto.backend` model holding credentials, environment (sandbox/production), rate-limit settings and per-channel defaults, with a connection test action
Scheduled order import via `ir.cron` with a configurable window and a manual 'Sync now' button, creating `sale.order` records with external OTTO identifiers stored for idempotent re-runs
Explicit marketplace status mapping (announced, processable, sent, returned, cancelled) onto Odoo's sale/picking state machine plus a searchable channel status field on the order
SKU mapping model linking OTTO listing identifiers to `product.product`, so mapping is data-driven instead of relying on internal reference conventions
Real-time stock push with computed available quantity using `@api.depends` on `stock.quant`, plus per-SKU and per-warehouse safety-buffer fields to prevent overselling
Delta-only synchronisation queue: only SKUs whose sellable quantity or price actually changed are pushed, keeping you inside OTTO API rate limits
Price synchronisation driven by a nominated Odoo pricelist, with optional per-channel markup rules and currency handling
Listing export from `product.template` with configurable OTTO category mapping and `product.attribute` to marketplace-attribute mapping, including variant structure
Automatic shipment confirmation and carrier tracking push-back on `stock.picking` validation, with per-carrier code mapping for OTTO's accepted shipping providers
Return and cancellation handling that creates the corresponding Odoo return picking or cancellation and reflects it on the sales order chatter
Settlement import that reconciles payouts into draft `account.move` entries, splitting commission, fulfilment and return fees onto separate accounts with analytic distribution
Full request/response logging model with error queue, retry counters and a resend action, so failed calls are visible and replayable from the Odoo backend
Security via `ir.model.access.csv` and record rules for a dedicated Marketplace Operator group, plus multi-company record rules where you run more than one company
Odoo list, form, kanban and filter views for marketplace orders, mappings and logs, with QWeb report and dashboard extensions available in scope
Delivered for Odoo 17.0, 18.0 or 19.0 with the `__manifest__.py` pinned to your series; works on Community and integrates with Enterprise accounting where present

按需定制,全程代劳

无需自行搭建——由 ECOSIRE 构建、安装并提供支持的可用应用。

  1. 1

    您下单

    以一次性构建价格开始。我们在启动时与您共同确定范围。

  2. 2

    我们构建与安装

    ECOSIRE 在您的 Odoo 上构建、配置并安装。

  3. 3

    上线 + 支持

    约一个工作周内上线,并包含两周上线支持。我们交付的代码中的缺陷免费修复。

技术规格

Odoo 兼容性
Odoo 17, Odoo 18, Odoo 19
版本
企业版和社区版
许可证
许可证需要确认
Python 要求
Python 3.10+
数据库
PostgreSQL 12+

关于此产品

Selling on OTTO Market usually means running two systems that disagree with each other. Orders arrive in the OTTO partner portal, get copied by hand or by CSV into Odoo, and by the time the picking is validated the marketplace stock figure is already stale. Overselling on a fast-moving SKU triggers cancellations and performance penalties; underselling quietly hides inventory you already own. At month end, finance is left reconciling a single payout against dozens of order lines, commission charges, shipping fees and returns with no audit trail in account.move. Odoo core has no concept of a marketplace channel at all — sale.order has no external reference lifecycle, stock.quant has no notion of a channel-reserved buffer, and there is no scheduled job that talks to OTTO. Even the Enterprise e-commerce apps assume you own the storefront, which on a marketplace you do not.

What we build is a first-class Odoo integration, not a spreadsheet bridge. A dedicated otto.backend model holds credentials, environment and per-channel defaults, and every synced document carries an external identifier and a channel reference so a marketplace order is traceable back to OTTO forever. Order import runs on an ir.cron job (and can be triggered manually) that pulls new and updated orders, resolves or creates the customer partner, maps OTTO SKUs to product.product through a mapping model rather than by guessing on internal reference, and creates the sale.order with the right pricelist, fiscal position and warehouse. Marketplace statuses are mapped explicitly — announced, processable, sent, returned, cancelled — onto Odoo's own state machine plus a channel status field, so operations can filter a list view by what OTTO thinks is true, not just what Odoo thinks is true.

Stock and price synchronisation runs the other way. Computed fields with @api.depends on the relevant stock.quant and pricelist inputs derive the sellable quantity per listing, apply a per-SKU or per-warehouse safety buffer, and queue a delta push so OTTO is only told about SKUs that actually changed. Listing export builds the OTTO payload from product.template and product.attribute values through a configurable category and attribute mapping, so your Odoo attributes drive the marketplace variant structure instead of being retyped. When a picking is validated, shipment confirmation and the carrier tracking reference are pushed back automatically, which is what protects your on-time delivery metrics. Settlement files are imported and reconciled into draft journal entries with commission, fulfilment and return fees on separate accounts and analytic distribution, so the payout in your bank statement matches a posted entry line by line. Everything is wrapped in a request/response log model with retry and error queues, ir.model.access.csv entries plus record rules for a marketplace-operator group, and Odoo list/form/OWL views so no one has to read a log file to find out why an order failed. The module is delivered for your exact series — 17.0, 18.0 or 19.0 — with the __manifest__.py pinned to it, and it works on Community; where Enterprise features such as advanced accounting reporting or Studio-built fields exist, we integrate with them rather than duplicating them.

This is a build-to-order product. There is no instant download and we do not pretend otherwise. You request a quotation, we run a scoping call, and we confirm the specifics that actually change the code: your Odoo version and hosting, whether you are single- or multi-warehouse, how your OTTO SKUs relate to your Odoo variants, which OTTO API credentials and scopes you can provide, and how you want fees posted in your chart of accounts. From confirmed scope, typical delivery is one working week. We build against your Odoo version, deliver to a staging database first for UAT with your own catalogue and a real OTTO sandbox or limited-scope account, and only then go live with an agreed rollback plan.

You receive the full source, a git repository handover, and documentation written for both your developer and your operations team. Because the marketplace API and your business both move, we also agree a post-go-live support window up front and can quote an ongoing maintenance arrangement covering OTTO API changes and Odoo version upgrades.

你得到什么

  • Installable Odoo module source code built and tested for your exact Odoo version (17.0, 18.0 or 19.0), Community or Enterprise
  • Installation and configuration on your environment, including OTTO credential setup, cron scheduling, category/attribute mapping and journal/account configuration
  • Technical documentation: data model, mapped fields, API endpoints used, cron jobs, security groups and extension points for your developers
  • End-user guide plus a live training session for your marketplace operations and finance teams
  • UAT on a staging database with your own catalogue and a documented go-live checklist with a rollback plan
  • Post-go-live support window agreed in the quotation, covering defects and configuration questions
  • Git repository handover with full commit history, so the code is yours to maintain or extend
  • Optional ongoing maintenance quotation covering OTTO API changes and Odoo version upgrades

这是给谁的

Marketplace operations manager

Runs day-to-day OTTO selling and is tired of re-keying orders and firefighting oversells. Needs every OTTO order to land in Odoo automatically with the correct status, and needs stock pushed back fast enough that listings never promise inventory that has already shipped elsewhere.

E-commerce or channel manager

Owns the catalogue across several sales channels and needs OTTO listings to be generated from the same Odoo product data as everything else. Cares about category and attribute mapping, variant structure and pricing rules being configurable rather than hard-coded.

Finance controller or accountant

Has to explain a single OTTO payout against hundreds of order lines and assorted fees. Needs settlement reconciliation into draft journal entries with commission and fulfilment fees on their own accounts, so the bank statement ties out without a spreadsheet.

IT lead or Odoo administrator

Responsible for the Odoo instance and any custom code on it. Wants a properly structured module with real access rights, logging and documentation, delivered as source in a git repository rather than an obfuscated black box they cannot upgrade.

OTTO Market Marketplace Connector 如何比较

标准伊科西尔定制建造竞争对手Odoo 原生
Fit to your Odoo setupBuilt against your exact version, warehouses, SKU scheme and chart of accountsFully bespoke, but you fund every design decision from a blank pageGeneric assumptions; you bend your setup to fit the moduleNo marketplace channel concept exists in Odoo core
OTTO order importScheduled `ir.cron` import with idempotent external IDs and explicit status mappingPossible, but the status state machine is where most DIY builds breakOften present, though status mapping is frequently partialManual entry or CSV import with no channel traceability
Stock accuracyDelta pushes from computed `stock.quant` availability with safety buffersDepends entirely on how carefully rate limits and buffers were designedUsually a fixed-interval full push, so gaps between cycles remainNo push at all; marketplace figures are updated by hand
Settlement and fee reconciliationDraft journal entries with commission, fulfilment and return fees split by accountCommonly descoped late because accounting mapping is the slow partRarely covered beyond a simple payout totalManual reconciliation of one payout against many order lines
Time and cost to liveone working week from confirmed scope, on a fixed quotationLonger discovery and build; cost scales with the unknownsFast to install, slow to bend once the mismatch surfacesNo build time, but permanent manual effort
Code ownershipFull source plus git repository handover, yours to extendYou own it, and you own all of its maintenanceVendor-controlled release cycle; often no repository accessNothing to own
Upgrade path across Odoo versionsVersion-pinned build, with upgrade work quotable under maintenanceEvery major upgrade is a fresh project unless it was built for oneDependent on whether the vendor ports to your next versionNot applicable
Support when something breaksNamed support window, plus a log and retry queue visible in the Odoo backendWhoever built it, if they are still availableTicket queue with no visibility into your dataInternal effort only

关于OTTO Market Marketplace Connector的常见问题

How long does delivery take, and can I download it today?

No, this is a build-to-order product rather than an existing apps.odoo.com download. After you request a quotation we run a short scoping call, confirm the specifics (Odoo version, warehouses, SKU mapping, API credentials, fee accounting), and then build it. Typical delivery is one working week from confirmed scope, including UAT on a staging database before go-live.

Which Odoo versions do you support, and does it need Enterprise?

We build for Odoo 17.0, 18.0 and 19.0, with the `__manifest__.py` pinned to your series. The connector works on Community — nothing in the core sync depends on Enterprise. Where you already run Enterprise accounting or Studio-built fields, we integrate with them rather than duplicating functionality.

What do you need from me before you can start building?

OTTO partner API credentials with the relevant scopes (or sandbox access), your Odoo version and hosting details, a sample of how your OTTO SKUs relate to your Odoo variants, your warehouse setup, and the accounts and journals you want commission and fulfilment fees posted to. If any of that is not ready yet, we scope around it and confirm before build starts.

How does the connector stop us from overselling?

Sellable quantity is a computed field derived from `stock.quant` with a configurable safety buffer per SKU or per warehouse, and it is pushed to OTTO as a delta whenever it changes rather than on a slow full-catalogue cycle. You can also exclude specific warehouses or locations from the calculation so a returns or quarantine location never inflates the marketplace figure.

What happens with settlements and marketplace fees?

Settlement data is imported and reconciled into draft `account.move` entries, with commission, fulfilment and return fees split onto separate accounts and, if you use them, analytic distributions. Entries are created as drafts so your accountant reviews and posts them — we never post directly to your ledger without a human step.

What support and updates do we get after go-live?

Every quotation includes a defined post-go-live support window for defects and configuration questions. Beyond that we can quote an ongoing maintenance arrangement covering OTTO API changes and Odoo version upgrades. Because you receive the full source and a git repository, you are also free to maintain or extend it in-house.

Can this be extended to other marketplaces or to our own customisations?

Yes. The module is structured around a backend model, mapping models and a logging layer, so additional channels or custom rules are additive rather than a rewrite. It can also be extended through Odoo's standard mechanisms — inheriting models, automated actions, or your own module talking to it over the XML-RPC/JSON-RPC API or directly through the ORM.

申请报价

OTTO Market Marketplace Connector

A build-to-order Odoo connector that syncs OTTO Market orders, listings, stock and settlements directly into your Odoo database. ECOSIRE scopes, builds, installs and supports it for your exact Odoo version and warehouse setup.

  • Dedicated `otto.backend` model holding credentials, environment (sandbox/production), rate-limit settings and per-channel defaults, with a connection test action
  • Scheduled order import via `ir.cron` with a configurable window and a manual 'Sync now' button, creating `sale.order` records with external OTTO identifiers stored for idempotent re-runs
  • Explicit marketplace status mapping (announced, processable, sent, returned, cancelled) onto Odoo's sale/picking state machine plus a searchable channel status field on the order
  • SKU mapping model linking OTTO listing identifiers to `product.product`, so mapping is data-driven instead of relying on internal reference conventions

申请报价

告诉我们您对 OTTO Market Marketplace Connector 的需求,我们将发送价格、许可选项和量身定制的方案,通常在一个工作日内。

现在无需付款。此操作会向我们的团队发送报价请求——我们会通过邮件跟进价格和后续步骤。