Skip to content

Odoo integration ​

Integration scope ​

  • ❌ Easy install with Garnet Seller
  • ✅ Product synchronisation
  • ✅ Order synchronisation
  • ✅ Tracking synchronisation

Supported versions: Odoo 17.0 and later, Community or Enterprise, on Odoo Online, Odoo.sh or your own server. The Sales and Inventory apps must be installed.

Odoo Online plans

On Odoo Online and Odoo.sh, only the Custom plan gives access to the API. On the One App Free and Standard plans, Odoo refuses the connection.

Create an API key in Odoo ​

  1. In Odoo, click your avatar at the top right, then Preferences.

    Odoo user menu with Preferences

  2. Open the Account Security tab and click New API Key.

  3. Name it Garnet Marketplace. As duration, choose Persistent Key (Never on Odoo 20), then click Generate key. Only an administrator is offered this choice: another user's key lasts at most 3 months.

    New API Key dialog with a Persistent Key

  4. Copy the key: Odoo shows it only once.

  5. Paste it into Garnet > Settings > Integrations > Odoo, with:

    • Odoo URL: the address you open Odoo at, for example mycompany.odoo.com;
    • Login: the email the key's user logs in with.

    On Odoo.sh or your own server, also enter your database name under the advanced settings.

Garnet checks the key, the apps and the user's access rights when you click Connect.

Which user

The key acts as its user. An administrator's key reaches everything the sync needs. A dedicated user needs at least Sales: User: All Documents and Inventory: User, and its key expires after 3 months: create a new one and connect again before then.

Advanced settings ​

SettingDefaultWhat it does
DatabaseYour address's subdomain on Odoo OnlineThe name of your Odoo database. Required on Odoo.sh and your own server.
Warehouse ID1The warehouse whose stock is published, and that forwarded orders ship from. Its company is the one used. Empty: your company's first warehouse.
Delivery method ID1Adds a shipping line of this delivery method to forwarded orders, priced at what the customer paid. Empty: no shipping line. Needs the Delivery app.
Confirm orderstrueConfirms forwarded orders, which reserves their stock and creates the delivery. false leaves quotations.

To find your database name, turn on the developer mode in Odoo (add ?debug=1 to the address, or Settings > Activate the developer mode): the name shows next to your avatar, at the top right.

See where to find the database name

The database name under the user name in Odoo developer mode

To find the ID of a warehouse or delivery method, open it in Odoo, from Inventory > Configuration > Warehouses or Sales > Configuration > Delivery Methods (Shipping Methods on Odoo 17). Its ID is in the address: the number at the end from Odoo 18 (…/odoo/action-357/1), the id= value on Odoo 17 (…/web#id=1&…).

See where to find the warehouse ID

A warehouse open in Odoo 18: its ID, 1, ends the address

See where to find the delivery method ID

A delivery method open in Odoo 18: its ID, 3, ends the address

Products ​

Products that can be sold are imported, except services and combos. Each variant becomes a variant on the marketplace, with its attributes as options (size, colour, …). Shopify allows three options: further attributes are left out. Attributes set to Never create variants (custom options) are not imported.

  • Price: the sales price, with the attribute extra price of the variant. Pricelists are not applied.
  • Stock: the free quantity of the warehouse: on hand, minus what is reserved for other orders. Products whose stock Odoo does not track are published with untracked inventory.
  • Description: the eCommerce description, or else the sales description.
  • Images: the product image, the extra eCommerce images and the variant images. Unpublished products are imported with their images too.

Orders ​

When a marketplace order contains the vendor's products, Garnet creates a sales order in Odoo:

  • the customer is the marketplace, a company Garnet creates once. Give it a pricelist, payment terms or a fiscal position, and Odoo applies them to every marketplace order;
  • the delivery address is the end customer's;
  • the Customer Reference is [Marketplace] #1234, so you can find the order in Odoo;
  • Odoo prices and taxes the lines as for any order of that customer.

The customer's email is replaced by a placeholder. Turn off Obfuscate customer emails to forward the real address. Odoo sends no email when Garnet confirms the order.

Tracking ​

When the vendor validates the delivery of a forwarded order, Garnet fulfils the marketplace order within the hour, with the delivery's Tracking Reference and delivery method. A partial delivery fulfils the units it contains; its backorder fulfils the rest when it is validated.