Skip to main content
Etsy Connector — A build-to-order Odoo integration that connects your handmade-marketplace shop to Odoo — syncing listings, i — 1/1Illustrative preview

A build-to-order Odoo integration that connects your handmade-marketplace shop to Odoo

— syncing listings, importing paid orders, and pushing live stock levels.

ECOSIRE scopes, builds, installs, and supports it; it is not an off-the-shelf download.

What is Etsy Connector?

A build-to-order Odoo integration that connects your handmade-marketplace shop to Odoo — syncing listings, importing paid orders, and pushing live stock levels. ECOSIRE scopes, builds, installs, and supports it; it is not an off-the-shelf download. 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

Dedicated Odoo module with its own `__manifest__.py`, depending on `sale`, `stock`, and `product`, supported on Odoo 17.0/18.0/19.0 (Community and Enterprise)
OAuth 2.0 connection to the marketplace REST API with encrypted token storage and automatic token refresh handling
New `models.Model` records for the marketplace account/config, listing mappings, and a per-run import log with status and error detail
Stored `marketplace_listing_id` / remote-SKU link on `product.template` and `product.product` tying each Odoo variant to its remote listing
`@api.depends` computed fields on the product form surfacing sync state, last-synced timestamp, and remote quantity
Order import that creates real `sale.order` / `sale.order.line` records, marketplace fee lines, and the buyer as a `res.partner`
Idempotent imports keyed on the remote receipt id so a re-poll can never double-create an order
Inventory push driven by `stock.quant` changes, sending available-quantity deltas back to marketplace listings with rate-limit-aware retry
`ir.cron` scheduled jobs for order polling and stock sync, with configurable cadence and safe re-entrancy guards
Configurable attribute/variant field mapping between marketplace listing options and Odoo product attributes (no hard-coded mapping)
Full security layer: `ir.model.access.csv` per model plus record rules for multi-company / restricted-user isolation
Backend configuration views in XML with OWL components for the interactive mapping and sync-status screens
QWeb reconciliation report matching marketplace payouts/transactions against imported Odoo orders
Reachable over Odoo XML-RPC/JSON-RPC so an external system can trigger a sync or read mapping state

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your Odoo.

  3. 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

If you sell on the handmade/vintage marketplace, your day likely fragments across two systems that never agree: orders and shipping labels live in the marketplace seller dashboard, while your real inventory, purchasing, accounting, and fulfilment live in Odoo. You re-key orders by hand, you oversell an item that was already picked in the warehouse, and your marketplace listings drift out of sync with the quantities in stock.quant. Odoo core has no native connector to this marketplace — the standard eCommerce app targets the Odoo Website shop, not third-party marketplaces — so out of the box there is no supported bridge for its OAuth 2.0 REST API, its listing/variant model, or its receipt/transaction feed. That is exactly the road-end this product is built for.

ECOSIRE builds a dedicated Odoo module — its own technical package with a proper __manifest__.py, dependency chain on sale, stock, and product, and versioned support for Odoo 17.0, 18.0, and 19.0 — that talks directly to the marketplace REST API using your shop's OAuth credentials. New models (models.Model subclasses such as an account/config record, a listing-mapping record, and an order-import log) hold the connection, the field mappings, and the sync history. A stored marketplace_listing_id on product.template/product.product links each Odoo variant to its remote listing and remote SKU, with @api.depends computed fields surfacing sync status and last-synced timestamps directly on the product form. Order import creates real sale.order records (with sale.order.line, the marketplace fee lines, and the customer as a res.partner) so the order flows through your normal delivery, invoicing, and stock-move pipeline.

Technically, the connector runs on Odoo's own scheduler: ir.cron jobs poll the marketplace for newly-paid receipts on your chosen cadence and push inventory deltas back when stock.quant changes, with API calls wrapped in rate-limit-aware retry and every request/response logged for audit. We build the security layer properly — ir.model.access.csv for each new model plus record rules so multi-company or restricted users only see their own shop's data — and expose configuration through clean backend views (XML, with OWL components where an interactive mapping screen helps). Field mapping between marketplace listing attributes and Odoo variant attributes is configurable rather than hard-coded, idempotent imports use the remote receipt id as the dedupe key so a re-poll never double-creates an order, and a QWeb reconciliation report lets you see marketplace payouts against imported orders. Because it is a real module and not a script, it is also reachable over Odoo's XML-RPC/JSON-RPC API if you want to trigger a sync from outside. It works on both Community and Enterprise (Enterprise-only features like Studio are never a hard dependency).

Delivery is build-to-order: after a short scoping call we confirm exactly which flows you need (listing sync direction, order import rules, tax/fee handling, single vs multi-company), then design, build, and test on a staging database with your real data patterns before go-live. Typical delivery is one working week from confirmed scope. You receive the installable source for your Odoo version, so you are never locked to us. Pricing starts from $999 (indicative, single-company base scope); multi-company rollout, additional marketplace shops or extra integrations, deeper tax/fee localization, and larger historical-order migration volume increase the quoted scope. You get a firm fixed quote after the scoping call — never a surprise on the invoice.

What you get

  • Installable source code (the complete Odoo module) built for your exact Odoo version — 17.0, 18.0, or 19.0
  • Installation and configuration on your environment, including OAuth credential setup and scheduled-job cadence tuning
  • Technical documentation: model/field reference, `ir.cron` behavior, mapping logic, and API-error handling notes
  • End-user guide plus a live training session for your operations team on mapping listings and reviewing imports
  • UAT on a staging database using your real data patterns, with a documented rollback plan before go-live
  • Post-go-live support window for bug fixes and sync adjustments after cutover
  • Git repository handover with full commit history so your team owns and can extend the code
  • Configuration workbook capturing your confirmed field mappings, tax/fee rules, and company scope

Who this is for

Handmade / vintage shop owner scaling on Odoo

Runs a growing marketplace storefront and has moved core operations into Odoo. Needs paid orders to land in Odoo automatically and stock to stay in sync so they stop overselling and stop re-keying orders by hand.

Operations / fulfilment manager

Owns picking, packing, and shipping in `stock`. Wants marketplace orders to flow into the normal delivery and invoicing pipeline, with a clear import log and reconciliation report to catch anything that failed to sync.

Odoo functional consultant or partner

Implementing Odoo for a client who sells on the marketplace and needs a supported, source-available connector rather than a brittle in-house script — with clean security rules and Community/Enterprise compatibility.

Finance / bookkeeping lead

Needs marketplace fees and payouts represented on Odoo orders and a QWeb report to reconcile marketplace transactions against imported sales, so month-end matches the marketplace statements.

How Etsy Connector Compares

CriterionECOSIRECustom BuildCompetitorOdoo Native
How you get itBuilt to order, installed and supported by ECOSIREYou hire/build in-house from scratchInstant download, install it yourselfNot available — no marketplace connector in core
Fit to your workflowScoped to your listing/order/fee rulesFully bespoke if you have the timeGeneric; you adapt to its assumptionsNone for this marketplace
Order import to OdooReal sale.order, idempotent by receipt idOnly what you build and testUsually yes, mapping often rigidManual re-keying
Inventory syncstock.quant-driven push with retryDepends on your build effortOften one-way or scheduled-onlyNone
Security & multi-companyir.model.access + record rules per shopYour responsibility to designVaries; often single-companyN/A
Odoo version coverageBuilt for your 17.0 / 18.0 / 19.0Whatever you target and maintainPer listing; upgrades lagShips with each version
Source & ownershipFull source + git repo handoverYou own itUsually source-available, vendor-lockedN/A
Support after go-liveSupport window + optional ongoing planYou maintain it yourselfVendor ticket queue, variable SLAN/A

Frequently Asked Questions about Etsy Connector

Is this a ready-made app I can download and install today?

No. This is a build-to-order module. ECOSIRE designs, builds, installs, and supports it for your specific shop and Odoo version. There is no instant download — we start from a scoping call, confirm the flows you need, and build against your real data patterns.

How long does delivery take?

Typical delivery is one working week from confirmed scope. After the scoping call we agree exactly which flows are in scope (listing sync, order import, inventory push, tax/fee handling, company count); the timeline depends on that scope, and we build and UAT on staging before go-live.

How does pricing and scoping work?

Pricing starts from $999 as an indicative single-company base scope. It is not a fixed price — drivers like multi-company rollout, extra marketplace shops or integrations, deeper tax/fee localization, and historical-order migration volume change the quote. You get a firm fixed quote after the scoping call, before any build work begins.

Which Odoo versions and editions are supported?

We build for Odoo 17.0, 18.0, or 19.0, on either Community or Enterprise. Enterprise-only tooling is never a hard dependency, so the connector runs on Community. We target one version per build; a multi-version build can be quoted if you need it.

What about support and updates after go-live?

Every build includes a post-go-live support window for bug fixes and sync adjustments after cutover. Because you receive the full source and git history, your team can also maintain and extend it. Longer-term maintenance, marketplace-API changes, and version upgrades can be quoted as an ongoing support arrangement.

Will marketplace orders sync into my normal Odoo workflow?

Yes. Imported orders become real `sale.order` records with order lines, fee lines, and the buyer as a `res.partner`, so they flow through your standard delivery, invoicing, and stock-move pipeline. Imports are idempotent — keyed on the remote receipt id — so re-polling never double-creates an order.

How does it avoid overselling across the marketplace and Odoo?

An `ir.cron` job pushes available-quantity changes from `stock.quant` back to the linked marketplace listings on your chosen cadence, with rate-limit-aware retry. Each Odoo variant is mapped to its remote listing/SKU, so stock stays consistent between the two systems.

Request a quote

Etsy Connector

A build-to-order Odoo integration that connects your handmade-marketplace shop to Odoo — syncing listings, importing paid orders, and pushing live stock levels. ECOSIRE scopes, builds, installs, and supports it; it is not an off-the-shelf download.

  • Dedicated Odoo module with its own `__manifest__.py`, depending on `sale`, `stock`, and `product`, supported on Odoo 17.0/18.0/19.0 (Community and Enterprise)
  • OAuth 2.0 connection to the marketplace REST API with encrypted token storage and automatic token refresh handling
  • New `models.Model` records for the marketplace account/config, listing mappings, and a per-run import log with status and error detail
  • Stored `marketplace_listing_id` / remote-SKU link on `product.template` and `product.product` tying each Odoo variant to its remote listing

Request a Quotation

Tell us about your Etsy Connector requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.