How to Handle Consignment Sales and Commission in Odoo · Calibre Consulting

Sell consigned goods and book only your commission.

Receive consigned stock without valuing it, record sales as money owed to the consignor, and move your commission into income at settlement in Odoo.

This guide shows how to run consignment in Odoo: a consignor, the person or business that owns the goods, leaves stock with you, you sell it, and you keep a commission before paying them the rest. The short answer: turn on Consignment in the Inventory settings and receive the goods with Assign Owner set to the consignor, so they never count as your inventory. Then point the consigned products' Income Account at a liability account, so each sale records money you owe rather than revenue. At settlement, one vendor bill to the consignor clears that liability and moves your commission into income.

It is written for owners and accountants of consignment shops, galleries and producer stores. The steps were verified on Odoo 19.

Before you start

How consignment works in Odoo

Once the setting is on, stock can carry an owner. Stock owned by anyone other than your company is left out of inventory valuation, both when it arrives and when it leaves, so it never appears among your assets.

The money side is two separate events. When a customer pays, you collect the full price on the consignor's behalf, and only your commission is income. Odoo books each sales line, on a customer invoice or in a Point of Sale session's closing entry, to the product's Income Account. If that field points at a liability, the sale becomes a debt to the consignor. Your commission then reaches income when you post the settlement bill, not at the moment of each sale, so settle at least once per accounting period.

Step 1: turn on consignment and receive the goods

  1. Open the Inventory app and go to Configuration > Settings. In the Traceability section, tick Consignment and save.
  2. Go to Operations > Receipts and click New.
  3. Set Receive From to the consignor, then set Assign Owner to the same consignor. Assign Owner appears only on receipts, and only once Consignment is on.
  4. Add the products and quantities and click Validate. The goods are now in your warehouse, owned by the consignor.

Step 2: send consigned sales to a liability account

  1. Open the Accounting app and go to Configuration > Chart of Accounts. Click New, enter a code and a name such as Owed to consignors, and set Type to Current Liabilities. Save.
  2. Create a second account for your earnings, such as Consignment commission, with Type Income.
  3. Open the Inventory app, go to Configuration > Products > Categories and create a category for consigned goods. Under Account Properties, set Income Account to the liability account and save.
  4. Put each consigned product in that category. On the product's Accounting tab, leave Income Account empty: it then reads From Category and uses the category's account.

The Income Account field rejects Receivable, Payable, Bank and Cash, Credit Card and Off-Balance Sheet accounts, which is why a Current Liabilities account is used. To read each consignor's balance straight from the ledger, create one liability account and one category per consignor.

Step 3: sell as usual

Sell consigned products from a sales order or at the Point of Sale, like any other product. When the customer invoice is confirmed, or the Point of Sale session is closed, their sales amount is credited to the liability account rather than to revenue. Each delivery line records the owner of the units that left the shelf.

Step 4: settle and book your commission

  1. Find the period's sales for the consignor. In the Accounting app, go to Review > Journal Items, search for the liability account and the period, and note the total credited. If consignors share one account, open Inventory > Reporting > Moves History and use Add Custom Group with From Owner to see whose units sold.
  2. Go to Vendors > Bills, click New and choose the consignor as the vendor.
  3. Add a line labeled with the period. Set its Account to the liability account and its Price to the sales total, for example 1,000.
  4. Add a second line for the commission. Set its Account to the commission income account and its Price to the commission as a negative amount, for example -300.
  5. Remove any tax Odoo proposes on these lines unless your accountant says otherwise, then click Confirm. The bill total, 700 here, is the payout.
  6. Click Pay when the consignor is paid.

After this bill, the liability for those sales is back to zero, 300 sits in commission income and 700 is owed to the consignor until paid. Standard Odoo has no field for a consignor's commission rate, so the commission line is calculated by hand. Calculating it automatically requires a customization, such as an automation rule with code. The Sales Commissions feature in Enterprise is built for salespeople, not consignors.

Gross method as an alternative

If your accountant prefers to report the full sale as revenue, keep consigned products on your normal income account and bill the consignor's share as one line on an expense account. Your commission is then the difference. Agree the presentation with your accountant first.

Check that it worked

  1. After the receipt, open Inventory > Reporting > Stock. The consigned units are counted in On Hand, but the product's Total Value does not rise.
  2. After the first sale, open the journal items of the customer invoice or the session's closing entry. The sales line should credit the liability account.
  3. After the settlement bill, search Journal Items for the liability account and period again. The balance for those sales should be zero.

Common mistakes to avoid

In Odoo 20, the Consignment setting, the Assign Owner field on receipts, the exclusion of owned stock from valuation and the accounts allowed as an Income Account are unchanged.

Steps verified on Odoo 19. Menus and labels can differ on other versions.

Common questions

How do I turn on consignment in Odoo?

Open the Inventory app, go to Configuration > Settings and tick Consignment in the Traceability section. The Assign Owner field then appears on receipts, so you can record which consignor owns the goods.

Does consigned stock count in my inventory valuation in Odoo?

No. Stock with an owner other than your company is excluded from inventory valuation when it is received and when it is delivered. It still shows in on-hand quantities.

How can Odoo record only the commission as revenue on a consignment sale?

Set the Income Account of consigned products, usually through their product category, to a Current Liabilities account, so sales are recorded as owed to the consignor. A vendor bill at settlement then debits that liability for the sales and credits your commission income account with a negative line.

Can Odoo apply a different commission rate per consignor automatically?

Not in standard Odoo. There is no commission rate field for consignors, so the commission is entered by hand on the settlement bill, or calculated by a customization such as an automation rule with code.

Can a Payable account be used as a product's Income Account in Odoo?

No. The Income Account field excludes Receivable, Payable, Bank and Cash, Credit Card and Off-Balance Sheet accounts. A Current Liabilities account is accepted and works for money owed to consignors.

Talk to the team.

If you are setting this up, or Odoo is not behaving the way this guide describes, book a 30-minute call. We will look at your configuration and tell you what it needs. Calgary studio, in-house team, no offshore handoffs.

Book the call →