How to Filter the Customer Dropdown on Odoo Quotations · Calibre Consulting

Show only the right customers on your quotations.

Limit the Customer field on Odoo quotations to the businesses you sell to, and assign pricelists without picking customers from a dropdown.

This guide shows how to stop the Customer field on a quotation from offering every contact in your database, so that a list of thousands of people and addresses only offers the businesses you sell to. The short answer: give those businesses a contact tag, then use Studio to add a filter rule to the Customer field so it only offers contacts with that tag. Pricelists need no such filter, because the pricelist form has no customer field. A pricelist reaches a customer through the contact record or through its country.

It is for sales managers and administrators. The steps were verified on Odoo 20, with notes where Odoo 19 differs.

Before you start

What the Customer field already does

You search the Customer field rather than scroll it. Type part of a name and Odoo shows the first few matches. On a quotation, contacts with more posted customer invoices and credit notes are listed ahead of the others, so regular customers tend to come up first.

At the bottom of the matches, Search more... opens the full contact list in a window with the usual filters. The Customer Invoices filter there keeps only contacts Odoo has recorded as customers, mainly through posted invoices, and typing a tag name lets you search by tag. This narrows one search, but it does not change what the field offers next time.

Why Is a Company is a weak filter

A filter on Is a Company looks like the obvious choice, but in Odoo 20 that flag is calculated and read-only. A contact counts as a company only when it has no parent company and its tax ID holds a real number. A business without a tax ID, or with a placeholder such as "/", never qualifies, so a filter on the flag would hide it. A tag is a marker you control.

In Odoo 19, Is a Company is a choice you make on the contact form, and the Search more window has a Companies filter. A rule on that flag works there, provided every business is set as a company.

Step 1: tag the contacts you sell to

  1. Open the Contacts app and switch to the list view.
  2. Click the column options at the right end of the list header and tick Tags. A Tags column appears.
  3. Filter or search the list down to your business contacts, then tick the box on each row you want, or the box in the header to select all of them.
  4. Click the Tags cell on one of the selected rows, type a tag name such as Business, and create or pick it.
  5. Odoo asks you to confirm the change for all selected records. Confirm it. The tag is added to every selected contact, and the tags they already had stay in place.
Odoo 20 Contacts list with the column options menu open, Tags ticked, and a Tags column showing the Business tag
The Contacts list: the column options icon (1), the Tags option (2) and the Tags column it adds (3).

Step 2: limit the field with Studio

  1. Open the Sales app, go to Orders > Quotations, and open any quotation.
  2. Click the Toggle Studio icon in the top bar. The form opens in the Studio editor.
  3. Click the Customer field. Its properties appear in the side panel.
  4. Open the Domain property and build a rule on the Tags field that picks your Business tag.
  5. Click Close at the top right to leave Studio.
Odoo 20 top bar with the Toggle Studio icon marked
The Toggle Studio icon (1) in the top bar.
Odoo 20 Studio editor on a quotation with the Customer field selected and its Domain property in the side panel
Studio on a quotation: the selected Customer field (1) and its Domain property (2) in the side panel.
Odoo 20 Studio Domain dialog with one rule: Tags is equal to Business
The Domain dialog with one rule: Tags (1) is equal to Business (2). Confirm (3) applies it.

From then on, the Customer field on that form only offers contacts carrying the tag, in the dropdown and in Search more. Quotations and sales orders share this form, so both are covered. Customer fields elsewhere, such as on invoices, are not affected.

Give customers a pricelist without a dropdown

In both Odoo 19 and Odoo 20 the pricelist form has no customer field. A customer gets a pricelist in one of two ways:

Check that it worked

  1. Open the Sales app, go to Orders > Quotations, and click New.
  2. In the Customer field, type the name of a contact you did not tag. It should not appear.
  3. Type the name of a tagged business. It should appear, and selecting it should work as before.
  4. For pricelists, open a contact in a country covered by a country group and look at the Pricelist field. A pricelist Odoo picked for the contact is shown in grey, while one set by hand is shown in normal text.

Common mistakes to check first

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

Common questions

How do I limit the Customer dropdown on Odoo quotations?

Tag the contacts you sell to, then open a quotation in Studio, click the Customer field and set its Domain to contacts carrying that tag. Studio is part of Odoo Enterprise.

Can I filter the Customer field on Is a Company in Odoo 20?

You can, but it hides businesses without a real tax number. In Odoo 20 Is a Company is calculated from the tax ID and the absence of a parent company, so a tag you control is a more reliable filter.

How do I assign a pricelist to a customer in Odoo?

On the contact's Sales & Purchase tab, choose one in the Pricelist field. To cover a whole region at once, fill in Country Groups on the pricelist instead.

Why are some customers listed first in the Odoo Customer field?

On quotations, Odoo sorts contacts by how many customer invoices have been posted for them. Contacts you invoice often appear near the top of the matches.

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 →