Amazon Odoo Connector/Help
Contact support
HELP CENTER

Amazon Odoo Connector Help

How the module connects your Amazon seller account to Odoo, in plain words. Pick a topic below, or press / to search. Prefer paper? Download the guide as a PDF.

01Getting startedInstall the module, connect your Amazon account and run your first sync. 02Buying, licence & updatesWhere to buy, what the price covers, Odoo versions and updates. 03Order syncFBA and FBM orders as Odoo sale orders: lines, promotions, shipping, cancellations. 04Shipments & trackingCarrier and tracking numbers sent to Amazon when you ship FBM orders. 05Invoices, taxes & refundsTax modes, automatic invoices, refunds as credit notes and returns. 06Settlements & Amazon feesSettlement reports as journal entries, fee mapping and payouts. 07Catalog & listingsImport every Amazon listing and match it to your Odoo products. 08Prices & repricingOdoo or Amazon as price master, and the automatic repricer. 09Stock syncFBM quantities to Amazon, FBA quantities into an Odoo warehouse. 10FBA logisticsMulti-Channel Fulfillment, inbound plans and removal orders. 11Profit, forecasts & alertsFees, margins, demand forecasts, health grades and alerts. 12AI toolsListing writer, price advice and sales analysis with Claude. 13Several accounts, marketplaces & companiesMore than one seller account, marketplace, company or currency. 14Users & Amazon permissionsOdoo access groups and the Amazon roles the module uses. 15DashboardOrders, shipments, revenue, retries, alerts and settlements at a glance. 16Monitoring & retriesSync Log, failed orders, feeds, reports and scheduled jobs. 17TroubleshootingThe usual problems, what causes them and how to fix them. 18Before you go liveA checklist for the day you switch the sync on. 19FAQShort answers to the questions we hear most. 20Security & privacyWhat is stored, who sees it and how buyer data is removed. 21Release notesWhat changed in each version.
01START

Getting started

This topic takes you from installing the module to your first working sync. It explains the words the module uses, what you need in Odoo and Amazon, the two ways to connect a seller account, and where to turn on each automatic sync.

What the module does

Amazon Odoo Connector (TM) is an Odoo module. It runs inside your own Odoo and talks to Amazon's Selling Partner API (SP-API). Orders, listings and stock travel straight between Amazon and your Odoo. When you use Connect with Amazon, a small Techmarbles service only hands out short-lived access tokens; it never sees your orders or customers.

It can:

  • Import Amazon orders, fulfilled by you (FBM) or by Amazon (FBA), as Odoo sale orders with the buyer, lines, promotions, shipping, gift wrap and taxes.
  • Send shipments back to Amazon with the carrier and tracking number when you validate an FBM delivery.
  • Create invoices for shipped orders, and turn Amazon refunds into credit notes and returns.
  • Turn each Amazon settlement into one journal entry that pays your invoices and books Amazon's fees.
  • Import your Amazon catalog, keep prices in sync in the direction you choose, and reprice against competing offers.
  • Send FBM stock to Amazon and mirror FBA stock in an Odoo warehouse.
  • Ship any Odoo order from your FBA stock (Multi-Channel Fulfillment), create inbound plans and import removal orders.
  • Estimate profit per unit, forecast demand, grade each listing and raise alerts.
  • Write listing content and price advice with AI, using your own API key.
  • Show it all on a dashboard, with a list of orders that failed and a button to retry them.

Each part has its own switch on the seller account. Order import and stock are on by default; the others stay off until you turn them on.

Key words

WordWhat it means
Seller accountOne Amazon seller account connected to Odoo, in one region. You set it up in TM Amazon Connector > Configuration > Seller Accounts. You can connect several.
RegionAmazon groups its marketplaces in three regions: North America, Europe and Far East. One seller account in Odoo covers one region.
MarketplaceOne Amazon store front, for example Amazon.com or Amazon.de. The module knows 23 marketplaces and selects yours when it connects.
FBMFulfilled by Merchant: you ship the order from your own warehouse, and Odoo tells Amazon when it leaves.
FBAFulfilled by Amazon: Amazon stores and ships the goods. Odoo records the order once Amazon has shipped it.
Listing / SKUYour offer on Amazon, identified by your seller SKU. In Odoo a listing links a SKU to a product.
ASINAmazon's own product number. Several sellers can offer the same ASIN.
SettlementAmazon's statement for a period, usually two weeks: what buyers paid, what Amazon charged and what it transfers to your bank.
MCFMulti-Channel Fulfillment: Amazon ships an order that was not placed on Amazon (website, Shopify, B2B) from your FBA stock.
Manual syncA sync you start with a button on the seller account, such as Sync Orders or Export Stock.
Automatic syncA scheduled job that runs on its own. The module has 17 of them; see Monitoring & retries.

Before you start

Odoo:

  • Odoo 19, Community or Enterprise.
  • Odoo on your own server or on Odoo.sh, reachable over HTTPS so Amazon can send you back after you approve the connection. Odoo Online (the odoo.com SaaS) does not run third-party modules.
  • An Odoo administrator to install the module. Whoever configures seller accounts needs the TM Amazon Connector: Manager right; see Users & Amazon permissions.

Odoo apps, installed for you with the module:

Odoo appNeeded for
SalesSale orders from Amazon orders.
InventoryWarehouses, stock, deliveries, returns and transfers to and from FBA.
Invoicing (or Accounting)Invoices, taxes, credit notes and settlement entries.
DeliveryCarriers and tracking numbers on deliveries.

Amazon:

  • A Professional seller account in Seller Central.
  • The account's primary user, or a user allowed to authorize apps.
  • No Amazon developer registration is needed with Connect with Amazon.
Good to know

Try the module on a copy of your Odoo database first. The first import is limited by the Import Orders Since date, so a first test touches only a few recent orders.

Install the module

  1. Buy Amazon Odoo Connector (TM) on the Odoo Apps Store for Odoo 19 and download the zip file.
  2. Unzip it into a folder of your Odoo addons path. You get a folder called tm_amazon_connector. On Odoo.sh, add that folder to your repository and push.
  3. Restart Odoo.
  4. In Odoo, open Apps, click Update Apps List (developer mode), search for Amazon and click Activate.
  5. A new TM Amazon Connector menu appears on the home screen.
Good to know

The module needs no extra Python package, except for the optional AI tools (the anthropic package). Your Odoo must be able to reach sellingpartnerapi-*.amazon.com over HTTPS.

Connect your Amazon account

Open Configuration > Seller Accounts, click New, give the account a name (for example My US Store) and pick the Region where you sell. Then connect it one of two ways.

Connection methodWhen to use it
Connect with Amazon (recommended)You sign in to Seller Central and approve the app. There are no keys to copy.
Own developer app (advanced)You or your agency registered your own SP-API app and want Odoo to use its keys. Set this on the Advanced tab (Settings administrators only).

Connect with Amazon

  1. On the new seller account, check the Region, then click Connect with Amazon.
  2. Seller Central opens. Sign in and approve TM Amazon Connector.
  3. Amazon sends you back to Odoo. The account shows Connected, the Merchant / Seller ID is filled in and your marketplaces appear.
Important

Open Odoo at its public address before you click Connect with Amazon, the same address as the system parameter web.base.url (for example https://erp.mycompany.com). If you start from localhost or a different name, you come back to a login page.

Own developer app

  1. On the Advanced tab, set Authorization to Own developer app.
  2. Paste your app's LWA Client ID, LWA Client Secret and the seller's Refresh Token.
  3. Fill in the Merchant / Seller ID (Seller Central > Settings > Account Info > Merchant Token).
  4. Click Test Connection.

What connecting does

Odoo asks Amazon which marketplaces the account sells on and selects them in Synchronized Marketplaces. When it works, the account shows Connected. When it fails, it shows Error and the chatter says why. Refresh Marketplaces runs the same check again later, for example after you open a new marketplace.

Account defaults

Before the first import, open the Orders and Inventory tabs:

SettingWhat to choose
FBM WarehouseThe warehouse you ship merchant-fulfilled orders from. Its free stock is what Amazon sees.
FBA WarehouseA warehouse that mirrors the stock Amazon holds for you. Create one called Amazon FBA if you sell with FBA.
Import Orders SinceThe oldest order date for the first import. Seven days back by default.
Tax modeHow taxes are recorded; see Invoices, taxes & refunds.
Sales Team, SalespersonSet on every imported order.
Shipping, Discount and Gift wrap productsService products used for those lines. The module creates them; you can pick your own.

Your first sync

  1. Click Import Catalog. Amazon prepares a report of all your listings; Odoo imports it within a few minutes and links each SKU to a product. See Catalog & listings.
  2. Open Catalog > Listings, filter Without Product and link the remaining SKUs to products.
  3. Click Sync Orders. Orders since the start date come in as sale orders.
  4. If you sell with FBA, click Import FBA Inventory.
  5. Check a few orders against Seller Central: lines, totals and the delivery address.

Turn on automatic syncs

Automatic syncs only run for accounts in the Connected state. Switch each part on or off on the account:

SwitchTabDefault
Import Orders, Import FBA OrdersOrdersOn
Invoice Shipped OrdersOrdersOn
Export FBM Stock, Import FBA InventoryInventoryOn
Import Removal OrdersInventoryOff
Synchronize Prices, Automatic RepricingCatalog and PricesOff
Import RefundsAccountingOn
Import SettlementsAccountingOff
AI ToolsAIOff

How often each job runs is set in Configuration > Scheduled Jobs.

How the module is laid out

MenuWhat is in it
DashboardOne card per seller account with today's figures and shortcuts.
OrdersAll Amazon sale orders, with FBA and FBM filters.
CatalogListings (SKUs, prices, stock, forecasts, AI content) and Alerts.
FBAInbound Plans, Multi-Channel Fulfillment and Removal Orders.
AccountingSettlements and Refunds (credit notes from Amazon).
MonitoringSync Log, Feeds and Reports.
ConfigurationSeller Accounts, Marketplaces, Fee Mapping and Scheduled Jobs. Managers only.

Disconnect or change the account

Disconnect on the seller account removes the authorization and stops all scheduled syncs for it. Your orders, invoices and listings stay in Odoo. Click Connect with Amazon to connect again.

Important

Do not reconnect an existing seller account to a different Amazon account. Its orders and listings belong to the first one. Create a new seller account instead.

Troubleshooting

ProblemFix
Back from Amazon on an Odoo login pageYou started from a different address than web.base.url. Log in again, open Odoo at its public address and click Connect with Amazon again.
"Amazon authorization was not completed"You cancelled on Amazon or the link expired (20 minutes). Click Connect with Amazon again.
No marketplaces after connectingCheck the Region: an EU seller connected as North America sees none. Fix the region and reconnect.
"TM Connect refused the token request"The authorization was revoked in Seller Central (Settings > User Permissions > Manage your apps). Click Reconnect.

Need help

Write to support@techmarbles.com with your Odoo version, the seller account's region and, for a sync problem, the line from Monitoring > Sync Log.

02START

Buying, licence & updates

Where to buy the module, what the price covers and how to update it.

What it does

Amazon Odoo Connector (TM) is sold on the Odoo Apps Store under the Odoo Proprietary License (OPL-1). You pay once per Odoo major version. There is no monthly connector fee and no charge per order.

Price and what it includes

  • The module for the Odoo version you bought, for one Odoo database and its test copies.
  • Bug fixes and configuration help by email for that version.
  • Updates within that version, including changes Amazon makes to its API.

Optional costs come from others: AI tools are billed by Anthropic on your own key.

Odoo versions

This guide covers the Odoo 19 version. Buy the module for the version you run; each version has its own branch on the Apps Store.

Update the module

  1. Download the new zip from the Apps Store and replace the tm_amazon_connector folder.
  2. Restart Odoo.
  3. In Apps, open the module and click Upgrade.
Good to know

Updating keeps your settings, listings and orders. Scheduled job frequencies you changed are kept too.

Troubleshooting

ProblemFix
The module does not appear in AppsCheck the folder is in the addons path, restart Odoo, then Update Apps List in developer mode.
Error during upgradeSend the full error from the Odoo log to support. Your data is not changed when an upgrade fails.
03ORDERS & MONEY

Order sync

How Amazon orders become Odoo sale orders: which orders come in, what is on them, and what happens when Amazon changes or cancels one.

What it does

Every 15 minutes the module asks Amazon for orders created or changed since the last run, in all selected marketplaces, and creates or updates the matching sale order. It uses Amazon's current Orders API (version 2026-01-01).

Before you start

  • Set the FBM and FBA warehouses on the account.
  • Import the catalog so SKUs are linked to products, or turn on Create missing products.
  • Choose the tax mode; see Invoices, taxes & refunds.

How to set it up

  1. On the Orders tab, tick Import Orders, and Import FBA Orders if you sell with FBA.
  2. Set Import Orders Since for the first run.
  3. Choose Auto Confirm Orders and Create Missing Products.
  4. Click Sync Orders once, then let the scheduled job take over.

Which orders sync

Amazon statusFBMFBA
Pending (not paid yet)Waits; imported once paidWaits
Unshipped, Partially shippedImported, delivery to prepareWaits
ShippedImported and delivered (shipped outside Odoo)Imported and delivered
CancelledCancels the Odoo orderCancels the Odoo order

FBA orders only matter to Odoo once Amazon has shipped them, so they arrive already delivered and are never confirmed back to Amazon.

Lines, promotions and shipping

On AmazonIn Odoo
ItemA line with the product linked to the SKU, the quantity and the unit price.
PromotionA negative line with the Discount product, named after the promotion.
Shipping chargeOne line with the Shipping product, taxed like the goods.
Gift wrapOne line with the Gift wrap product.
CurrencyThe order's currency, with a pricelist in that currency (created if needed).

Customers on orders

The buyer becomes the customer, matched by email when Amazon gives one. The delivery address becomes a delivery contact under that customer, reused when it is the same. Amazon only shares buyer names and addresses with sellers approved for them; without that approval the order gets a placeholder customer such as Amazon Customer 111-…. See Users & Amazon permissions.

Cancellations

When Amazon cancels an order, the Odoo order is cancelled. If the goods were already shipped, it is left as it is and the chatter says so.

The order in Odoo

An Amazon order has an Amazon tab with the Amazon order ID, marketplace, FBA or FBM, Amazon status and Amazon's total. The orders list has a Total ≠ Amazon column: it is ticked when the Odoo total differs from Amazon's, usually because of taxes or an unmapped charge.

How often it runs

Every 15 minutes (Amazon: Import orders). Each run overlaps the last by five minutes, because Amazon can report changes a little late. An order is never imported twice.

What is synced / not synced

SyncedNot synced
Orders, items, promotions, shipping, gift wrap, taxes, buyer, delivery address, status, cancellationsChanges you make to the sale order in Odoo (Amazon orders cannot be edited by sellers)

Retry failed orders

If an order cannot be imported, for example because its SKU has no product, it is listed in the Sync Log as To Retry with the reason. The other orders are not held up. Fix the cause, then select the line and click Retry. A job also retries them every hour.

Good to know

  • Amazon only allows a few order requests per minute; large first imports take several runs.
  • Products created automatically are storable, named after the Amazon title, with the SKU as Internal Reference.

Troubleshooting

ProblemFix
An order is missingCheck its status in Seller Central: pending orders wait. Check the order date is after Import Orders Since, and that its marketplace is selected.
"SKU … is not linked to any product"Link the listing to a product, or tick Create Missing Products, then retry.
Total ≠ Amazon is tickedCompare taxes: in Odoo taxes mode the product taxes apply. Try Match Amazon's tax rate.
04ORDERS & MONEY

Shipments & tracking

How Amazon learns that an FBM order has shipped, and what it is told.

What it does

When you validate the delivery of an FBM order, Odoo confirms the shipment to Amazon with the shipped items, carrier and tracking number. Amazon then marks the order shipped and emails the buyer.

How to set it up

  1. On each delivery method (Inventory > Configuration > Shipping Methods), fill in Amazon Carrier Code: UPS, USPS, FedEx, DHL, Royal Mail, Deutsche Post and so on.
  2. Set the delivery method and tracking reference on the delivery before you validate it.

Without a carrier code, Amazon receives Other with the carrier's name.

On the delivery

A delivery of an Amazon order shows an Amazon Shipment status: Confirmed, Error with the message, or To Confirm. Retry Amazon Confirmation sends it again at once; a job also retries every 30 minutes.

Partial deliveries

Each validated delivery is sent as its own package, so a backorder becomes a second package on the same Amazon order.

What is synced / not synced

SyncedNot synced
Shipped items and quantities, ship date, carrier, shipping method, tracking numberFBA orders (Amazon ships them), orders shipped with Amazon Buy Shipping (already confirmed by Amazon)

Troubleshooting

ProblemFix
"No Amazon order item in this delivery"The delivery only holds products added in Odoo. Nothing to confirm.
Amazon rejects the carrierUse Amazon's carrier name exactly, or leave the code empty to send Other.
05ORDERS & MONEY

Invoices, taxes & refunds

How taxes are recorded on Amazon orders, when invoices are created, and what happens when Amazon refunds a buyer.

What it does

The module records taxes the way you choose, posts an invoice when an order ships, and turns each Amazon refund into a credit note, with a return transfer for FBM goods.

Choose a tax mode

Tax modeWhen to use it
Marketplace facilitator (no tax in Odoo)Amazon collects and pays the tax for you: US states, UK and EU imports, Australia. Orders are recorded without tax.
Match Amazon's tax rateYou declare the tax and want exactly Amazon's rate. Odoo picks the sales tax with the same rate, or falls back on the product's taxes.
Odoo taxes (product + fiscal position)Your own tax setup decides, for example EU VAT through OSS fiscal positions.

Invoices

With Invoice Shipped Orders on, Odoo creates and posts the invoice once every delivery of the order is done: when you ship an FBM order, or at import for FBA orders. If an invoice cannot be created, the delivery still goes through and the Sync Log says why.

Refunds

With Import Refunds on (Accounting tab), the module reads Amazon's refund transactions every hour.

  1. It finds the Odoo order by the Amazon order ID.
  2. It creates a credit note against the order's invoice for the refunded SKUs and quantities. A full refund also refunds shipping and promotion lines.
  3. With Return Refunded FBM Goods, it creates a return transfer for those quantities, ready to receive.

Each refund is imported once. Credit notes from Amazon are listed in Accounting > Refunds.

Good to know

  • Refunded FBA goods go back to Amazon's warehouse; the next FBA inventory import updates Odoo.
  • Credit notes are not paid here: the settlement that contains the refund does that. See Settlements & Amazon fees.

Troubleshooting

ProblemFix
"order … is not in Odoo"The refunded order was placed before your first import. Import it with an earlier Import Orders Since or record the refund by hand.
Refund received but no credit noteThe order has no posted invoice. The chatter of the order says so. Invoice it, then refund it by hand.
06ORDERS & MONEY

Settlements & Amazon fees

How Amazon's settlement reports become one journal entry per period, so your invoices are paid and Amazon's fees are in the right accounts.

What it does

Amazon pays you every settlement period, keeping its fees. Every day the module looks for new settlement reports and, for each one:

  • credits each order's amount to the customer, which pays the invoice;
  • debits each fee (commission, FBA fees, subscription…) to its account;
  • debits the transfer to your bank to the Payout Account, where your bank statement line meets it.

Before you start

  • A miscellaneous journal, for example Amazon Settlements.
  • A payout account that reconciles, such as Bank Suspense or an Amazon clearing current asset.
  • An expense account for Amazon fees.

How to set it up

  1. On the Accounting tab, tick Import Settlements.
  2. Choose the Settlement Journal, Payout Account and Default Fee Account.
  3. Set the Mismatch Tolerance (0.05 by default).
  4. Optional: map fees to their own accounts in Configuration > Fee Mapping.
  5. Click Import Settlements. Reports from the last 90 days are imported on the first run.

Fee mapping

Each settlement line has an amount type and an amount description, for example ItemFees / Commission. A fee mapping sends a description, optionally for one amount type or one seller account, to an account. Unmapped fees go to the default fee account.

DescriptionTypical account
CommissionMarketplace commissions
FBAPerUnitFulfillmentFeeFulfillment costs
Subscription FeeSubscriptions
FBA Inventory ReimbursementOther income
Current Reserve Amount / Previous Reserve Amount BalanceAmazon reserve (current asset)

Reconciliation and tolerance

For each order, the module compares Amazon's amount with what is still open on the order's invoices and credit notes:

  • Same amount: the invoice is paid.
  • Within the tolerance: the invoice is paid and the cents are written off to the default fee account.
  • Beyond the tolerance: the invoice is paid as far as possible, the line is marked mismatch, the difference stays open on the customer and an alert is raised.

A settlement is Reconciled when every order matched, Posted when some need checking.

Good to know

  • Marketplace facilitator tax withheld by Amazon cancels out the tax Amazon collected, so facilitator orders settle without tax.
  • A negative settlement (fees larger than sales) is recorded the same way, as money owed to Amazon.
  • Reset to Draft (managers) deletes the entry and its reconciliations so you can post again after changing mappings.

Troubleshooting

ProblemFix
Settlement in ErrorRead the message on the settlement. Usually a missing journal or account: set it, then click Post.
Many mismatchesOrders without invoices, or orders imported in a different tax mode. Open the lines marked mismatch.
Fees in the wrong accountAdd a fee mapping, Reset to Draft, then Post.
07CATALOG

Catalog & listings

How your Amazon listings come into Odoo and are linked to products.

What it does

Import Catalog asks Amazon for its All Listings report. When Amazon has prepared it, usually within minutes, the module creates or updates one listing per SKU with its ASIN, title, price, FBA or FBM and Amazon status.

Matching

A new SKU is linked to a product in this order:

  1. A product whose Internal Reference equals the SKU.
  2. A product whose Barcode equals the UPC or EAN of the listing.
  3. Otherwise a new product, if Create Missing Products is on; else the listing stays without product.

Listings created by order or FBA imports use the same rules. A listing without product is linked automatically once a product with that Internal Reference exists.

The Listings list

Catalog > Listings shows each SKU with its product, status, price, margin, stock, stockout risk and health grade. Useful filters: Without Product, Inactive on Amazon, Buy Box Lost, Stockout Risk, Health D or F. A listing has tabs for price and Buy Box, profit, stock and forecast, AI content and alerts.

How often it runs

Once a day (Amazon: Import catalog), and when you click Import Catalog. Report progress is in Monitoring > Reports.

Limits

Listings are created on Amazon in Seller Central. The module updates prices, stock and content of existing listings; it does not create new ASINs.

Troubleshooting

ProblemFix
Report stays RequestedAmazon can take up to an hour for large catalogs. The report job checks every 15 minutes; Check Status checks now.
Duplicate productsFill the Internal Reference of existing products with the SKU before the first import.
08CATALOG

Prices & repricing

Choose whether Odoo or Amazon sets your prices, and let the repricer follow the competition within limits you set.

What it does

With Synchronize Prices on (Catalog and Prices tab), prices sync once an hour in the direction you choose:

DirectionWhat happens
Odoo → AmazonEach listing's Odoo price is sent to Amazon in one batch: the price from the Amazon Pricelist, or the product's sales price. Only changed prices are sent.
Amazon → OdooAmazon prices come in with the catalog report. A product sold through a single listing gets the Amazon price as its sales price.

Prices are converted to each marketplace's currency. Send Price on a listing sends it at once.

The repricer

  1. On the account, tick Automatic Repricing.
  2. On a listing, choose a Repricing strategy and set a Minimum Price and Maximum Price.
StrategyTarget price
Match the Buy BoxThe current Buy Box price.
Match the lowest offerThe lowest competing offer, shipping included.
Beat the lowest offerThe lowest offer minus Undercut By.

The target is always kept between the minimum and maximum. Every 30 minutes the repricer reads the competing offers, sends changed prices, and raises alerts when you lose the Buy Box, when a new seller appears on your listing, or when your price is held at its minimum by cheaper offers (a price war).

Good to know

  • Repriced listings are left out of the Odoo → Amazon price sync, so the two never fight.
  • Check Competition on a listing refreshes the Buy Box and lowest offer without changing the price.

Troubleshooting

ProblemFix
Price did not change on AmazonOpen Monitoring > Feeds: a feed with errors shows Amazon's reason, such as a price outside Amazon's allowed range.
Repricer does nothingCheck Automatic Repricing on the account, and a strategy plus minimum and maximum on the listing.
09CATALOG

Stock sync

Your FBM stock goes to Amazon; the stock Amazon holds for you comes into an Odoo warehouse.

What it does

StockDirectionHow often
FBM free quantity, minus the safety bufferOdoo → AmazonEvery hour
FBA fulfillable quantityAmazon → OdooEvery 6 hours

FBM stock export

For each FBM listing with Sync Stock ticked, Odoo sends the product's free quantity in the FBM warehouse (on hand minus reserved), minus the account's Stock Buffer, rounded down and never below zero.

MethodWhen to use it
JSON_LISTINGS_FEED (batch)Default. One feed for all SKUs; best for large catalogs.
Listings Items API (per SKU)Small catalogs; Amazon answers for each SKU at once.

FBA stock import

The FBA warehouse's stock is set to the quantity Amazon can sell for each SKU. Amazon is the reference: Odoo's quantity is replaced, not added to. Pan-European stock shared between marketplaces is counted once.

Good to know

  • Untick Sync Stock on a listing to manage its quantity in Seller Central.
  • MCF shipments, inbound plans and removals move stock between your warehouses and FBA; see FBA logistics.

Troubleshooting

ProblemFix
Amazon shows 0Check the free quantity in the FBM warehouse and the stock buffer. Reserved stock does not count.
FBA stock not updatedSet the FBA Warehouse and tick Import FBA Inventory. The product must be storable.
10CATALOG

FBA logistics

Use your FBA stock for any order, send stock to Amazon, and bring removed stock back.

Multi-Channel Fulfillment

Amazon can ship orders that were not placed on Amazon, such as website, Shopify or B2B orders, from your FBA stock.

  1. Create the sale order with the FBA warehouse as warehouse.
  2. On its delivery, click Ship with Amazon (MCF). The shipping speed comes from the account (MCF Shipping Speed).
  3. The delivery shows Sent to Amazon. Every 30 minutes Odoo checks it; when Amazon has shipped, the tracking number is copied and the delivery is validated.

The delivery address needs a street, city and country. Cancel Amazon Fulfillment cancels it while Amazon has not shipped. All MCF deliveries are listed in FBA > Multi-Channel Fulfillment.

Inbound plans

  1. In FBA > Inbound Plans, create a plan: account, marketplace, ship-from address and the products with quantities.
  2. Click Send to Amazon. Amazon creates the inbound plan, and Odoo prepares a transfer from your FBM warehouse to the FBA warehouse.
  3. Click Continue in Seller Central to choose packing, placement and carrier and print labels in Send to Amazon.
  4. When Amazon reports the shipments on their way, the plan becomes Shipped and the transfer is validated.

Removal orders

Create removal orders in Seller Central; Amazon offers no API to create them. With Import Removal Orders on, the module reads the removal report every day. For each Return removal, the quantities Amazon has shipped become a transfer from the FBA warehouse to your FBM warehouse, ready to receive. Disposals are only recorded.

Troubleshooting

ProblemFix
No Ship with Amazon buttonThe delivery must come from the FBA warehouse of a connected account, and must not belong to an Amazon order.
"Not enough FBA stock"Amazon has less sellable stock than the order. Import FBA inventory and check.
Inbound plan in ErrorRead the message: usually a SKU not enabled for FBA or a missing ship-from field.
11INSIGHTS

Profit, forecasts & alerts

What each listing earns after Amazon's fees, how fast it sells, when to reorder, and what needs your attention.

What it does

Every day, and when you click Refresh Insights, the module asks Amazon for each listing's fee estimate, counts sales and stock, and updates forecasts, health grades and alerts.

Profit

FigureHow it is calculated
Amazon Fees / UnitAmazon's estimate of referral and FBA fees at the current price.
Profit / UnitPrice − Amazon fees − product cost.
Margin, ROIProfit as a share of the price, and of the cost.
VerdictHighly profitable (30% or more), Profitable, Thin margin (under 10%), Loss making.

Demand forecast

Units per day are the sales of the last 30 days, weighted twice, blended with the last 90 days. From them come the 30, 60 and 90-day forecasts, the days of cover left, a reorder point and a suggested reorder quantity. Two account settings drive them: Replenishment Lead Time and Low Stock Alert (days of cover). Reorder on the Listings list opens a purchase order for the suggested quantities when the Purchase app is installed.

Health grade

Each listing gets a score out of 100 and a grade from A to F, with the reasons it lost points: inactive listing, short title, no price, out of stock, stockout risk, Buy Box lost, negative margin.

Alerts

AlertRaised when
Buy Box lostYou owned the Buy Box at the last check and no longer do.
New seller on listingAnother seller appears on a listing that had none.
Price war / at minimumThe repricer holds your price at its minimum because of cheaper offers.
Stockout risk, Low stockDays of cover fall below the lead time, or below lead time plus the low-stock days.
Negative marginThe listing sells at a loss after fees and cost.
Listing inactiveAmazon reports the listing inactive or incomplete.
Settlement mismatchA settlement has orders that differ from their invoices.

An alert is raised once and counts its repeats. Resolve closes it. Open alerts are in Catalog > Alerts and on the dashboard.

12INSIGHTS

AI tools

Claude writes listing content, advises on prices and analyses your sales, using your own Anthropic API key.

Before you start

  • An Anthropic API key, created at console.anthropic.com. Anthropic bills its use.
  • The anthropic Python package on your Odoo server (pip install anthropic).

How to set it up

  1. On the account's AI tab (managers only), tick AI Tools.
  2. Paste the Anthropic API Key and pick the AI Model: Claude Opus 5.5 (best quality), Sonnet 5.5 (balanced) or Haiku 5.5 (fastest and cheapest).

Listing optimizer

  1. On a listing, click AI Optimize Listing.
  2. The AI Content tab shows a title, five bullet points, a description, backend search terms and a suggested product type, written in the marketplace's language, plus a 0–100 score of the current content and its issues.
  3. Edit what you want, then click Publish to Amazon.

Price advice

AI Price Advice weighs your cost, Amazon fees, the Buy Box, the lowest offer, sales speed and stock cover, and suggests a price, a repricing strategy and a minimum and maximum, with a confidence score and its reasoning. If the listing has no minimum and maximum yet, they are filled in.

AI insights

AI Insights on the account analyses a period (30 days by default) with a focus on sales and margin, returns and refunds, or inventory and stockouts. You get a headline, findings backed by figures and recommended actions.

Good to know

  • Only product content and totals are sent to Anthropic, never buyer names, addresses or emails.
  • Content you publish replaces the title, bullet points, description and search terms on Amazon.

Troubleshooting

ProblemFix
"The AI tools need the 'anthropic' Python package"Install it on the Odoo server and restart Odoo.
"Anthropic rejected the API key"Paste a valid key; check the key's workspace has credit.
"Amazon rejected the content"The message lists Amazon's reasons, often the product type. Use the suggested product type, then publish again.
13ADVANCED

Several accounts, marketplaces & companies

One Odoo can run several Amazon accounts, regions, marketplaces and companies.

What it does

  • Marketplaces: one seller account covers every selected marketplace of its region. Orders keep their marketplace and currency.
  • Regions: create one seller account per region (North America, Europe, Far East).
  • Companies: each seller account belongs to one company. Its orders, listings, settlements and logs are only visible in that company.
  • Currencies: orders use the marketplace's currency, with a pricelist per currency. Settlements are booked in their currency.

How to set it up

  1. Switch to the company, then create the seller account there.
  2. Choose warehouses, journal and accounts of that company.
  3. Connect with Amazon.

Good to know

A listing sold in several marketplaces keeps one price, in its first marketplace's currency, converted for the others. Use separate SKUs if prices must differ by marketplace.

14ADVANCED

Users & Amazon permissions

Who can do what in Odoo, and which Amazon roles the module uses.

Odoo access

GroupWhat they can do
TM Amazon Connector: UserSee the menu, orders, listings, alerts, settlements and logs; run syncs; edit listings and inbound plans; retry failed orders.
TM Amazon Connector: ManagerEverything, plus seller accounts, marketplaces, fee mapping, the AI key and resetting settlements. Odoo administrators get it on install.
Settings administratorsAlso see the Advanced tab: authorization mode and developer keys.

Give rights in Settings > Users, under TM Amazon Connector.

Amazon roles

Amazon roleUsed for
Inventory and Order TrackingOrders, shipment confirmation, catalog report.
Product ListingStock, prices and content updates.
PricingBuy Box, competing offers and fee estimates.
Amazon FulfillmentFBA inventory, MCF, inbound plans, removal report.
Finance and AccountingRefunds and settlement reports.
Direct-to-Consumer Shipping (restricted)Buyer names and delivery addresses on FBM orders.
Good to know

FBA orders need no buyer data: Amazon ships them. Without the restricted role, FBM orders arrive without an address and you ship from Seller Central's order page.

15MONITOR

Dashboard

The first screen of the module: one card per seller account.

Account card

Each card shows the account's name, marketplaces and connection (Connected or Error), and figures that open their records:

FigureOpens
Orders todayToday's Amazon orders.
To shipAmazon deliveries not yet done.
Revenue, 30 daysUntaxed revenue and number of confirmed orders over 30 days.
To retryFailed order imports and shipment confirmations.
Open alertsOpen alerts, with how many are about stock.
Settlements to checkSettlements with mismatched orders.

Buttons run Sync Orders and Export Stock at once and open the listings and the Sync Log. The footer shows how many recent orders differ from Amazon's total and when orders last synced.

16MONITOR

Monitoring & retries

Where to see what the module did, what failed, and when each job runs.

Sync Log

Monitoring > Sync Log lists each operation with its level (info, warning, error), message, and the request and response exchanged with Amazon. Open Related Record opens the order, delivery or listing. Filter Errors or To Retry.

Retry failed orders

Failed order imports are marked To Retry. Select them and click Retry, or Ignore to drop them. They are retried every hour on their own.

Feeds and reports

Monitoring > Feeds shows batches sent to Amazon (stock and prices) with Amazon's processing result and error count. Monitoring > Reports shows reports requested from Amazon (catalog, removals, settlements). Check Status and Process Again act on one at once.

Scheduled jobs

Configuration > Scheduled Jobs (Settings administrators) lists the jobs. Change a frequency or pause one there.

JobDefault frequency
Import orders15 minutes
Export FBM stock1 hour
Import FBA inventory6 hours
Retry shipment confirmations30 minutes
Check feed processing10 minutes
Check report processing15 minutes
Import refunds1 hour
Import settlements1 day
Import catalog1 day
Synchronize prices1 hour
Repricer30 minutes
Forecasts, health scores and alerts1 day
Retry failed order imports1 hour
Multi-Channel Fulfillment status30 minutes
Inbound plan status1 hour
Import removal orders1 day
Remove buyer data after retention1 day

On the records

  • Sale orders: Amazon tab and the Total ≠ Amazon flag.
  • Deliveries: Amazon Shipment or Amazon MCF status with the error.
  • Seller account: the chatter records connections, errors and disconnections.
17HELP

Troubleshooting

The usual problems, what causes them and how to fix them.

First checks

  1. The seller account is Connected.
  2. The switch for that sync is on, and its scheduled job is active.
  3. Monitoring > Sync Log, filter Errors: the latest message usually says what is wrong.

Connection problems

Message or symptomCause and fix
Login page after approving on AmazonOdoo was opened at another address than web.base.url. Use the public address.
"TM Connect refused the token request"The app was removed in Seller Central. Click Reconnect.
HTTP 403 UnauthorizedA missing Amazon role for that feature; see Users & Amazon permissions.
HTTP 429 in the logAmazon's rate limit. The module waits and retries on its own; nothing to do.

Orders missing or failed

Pending orders wait until paid. Failed ones are To Retry with the reason; fix it and retry. See Order sync.

Shipped in Odoo but not on Amazon

Open the delivery: an Amazon Shipment error says why. Fix the carrier or tracking and click Retry Amazon Confirmation.

Stock is wrong

For FBM, check the free quantity and the buffer. For FBA, Amazon's sellable quantity replaces Odoo's: stock in transit or reserved by Amazon is not counted.

Settlements do not match

Open the settlement, filter lines marked mismatch and compare with the order's invoice. Missing invoices and refunds from before your first import are the usual causes.

Still stuck?

Write to support@techmarbles.com with the Sync Log line (with its request and response) and the record concerned.

18HELP

Before you go live

A checklist for the day you switch the sync on.

Connection and users

  • Odoo opens at its public HTTPS address, equal to web.base.url.
  • The account is connected and the right marketplaces are selected.
  • Users have the User or Manager right.

Catalog and prices

  • Catalog imported, no listing Without Product.
  • Price direction chosen; pricelist set for Odoo → Amazon.
  • Repriced listings have sensible minimum and maximum prices.

Stock

  • FBM warehouse and stock buffer set; stock counted.
  • FBA warehouse created and FBA inventory imported.

Orders and shipments

  • Import Orders Since set to the go-live date to avoid importing old orders.
  • Carrier codes filled on delivery methods.
  • One test FBM order shipped and confirmed on Amazon.

Accounting

  • Tax mode checked with your accountant.
  • Settlement journal, payout and fee accounts set; main fees mapped.
  • The first settlement reviewed before relying on reconciliation.
19HELP

FAQ

Short answers to the questions we hear most.

Do I need to register as an Amazon developer?

No. Connect with Amazon uses Techmarbles' approved app. You only approve it in Seller Central.

Does it work with Odoo Online?

No. Odoo Online does not run third-party modules. Use Odoo.sh or your own server.

Does it replace Odoo's own Amazon connector?

It is a separate module and does not need it. Do not run both on the same seller account, or orders are imported twice.

Can I import old orders?

Yes. Set Import Orders Since to an earlier date and click Sync Orders. Already imported orders are skipped.

Is stock and price sync two-way?

Stock goes out for FBM and comes in for FBA. Prices go one way, the one you choose per account.

Does it handle Pan-European FBA?

Yes. Stock shared between EU marketplaces is counted once.

What do the AI tools cost?

Anthropic bills the use of your key. The module adds no AI fee.

Does anything leave my Odoo?

Data goes to Amazon (and, if you use the AI tools, product content and totals to Anthropic). The authorization service only issues access tokens.

20HELP

Security & privacy

What is stored, who sees it and how buyer data is removed.

Authorization

With Connect with Amazon, Amazon's long-lived authorization is kept, encrypted, by the Techmarbles authorization service. Your Odoo holds a secret to ask it for access tokens that last one hour. Orders and customers never pass through it. Disconnect deletes the authorization there too.

Who sees what

  • Developer keys and connection secrets: Settings administrators only.
  • Anthropic API key: TM Amazon Connector managers only.
  • Multi-company rules keep each company's Amazon data separate.

Buyer data retention

Amazon's Data Protection Policy requires sellers to delete buyer data at most 30 days after delivery. Every day, the module anonymizes buyers of orders delivered more than Anonymize Buyers After days ago (30 by default, Privacy tab): name, email, phone, street, city and postcode are removed. Country and state stay for tax reports. Orders and invoices keep their amounts.

Logs

Sync logs are deleted after Keep Sync Logs days (30 by default). Entries waiting for a retry are kept.

21HELP

Release notes

What changed in each version.

19.0.2.0.0

  • Catalog import, Odoo or Amazon as price master, and a repricer with Buy Box and lowest-offer strategies.
  • Refunds as credit notes, with return transfers for FBM goods.
  • Settlement reports as journal entries, fee mapping, tolerance and reconciliation with invoices.
  • Multi-Channel Fulfillment, inbound plans and removal orders.
  • Fee estimates, profit, demand forecasts, health grades and alerts.
  • AI tools with Claude: listing optimizer, price advice and insights.
  • Dashboard, retry for failed orders, User and Manager groups, multi-company rules, buyer data anonymization and log retention.

19.0.1.0.0

  • Connect with Amazon in one click.
  • FBA and FBM order import with Amazon's Orders API 2026-01-01, cancellations and three tax modes.
  • Shipment confirmation with tracking, automatic invoices.
  • FBM stock export and FBA stock import.
  • Sync Log and feed tracking.
Amazon Odoo Connector (TM) by Techmarbles for Odoo 19. Questions: support@techmarbles.com.