Sales

Odoo Contacts: contact management software

Community + Enterprise

Centralize your address book

Odoo Ready Partner
★★★★★4.9 on Clutch
Calgary, in-house team
Odoo Contacts logo
What it does

What Odoo Contacts does

Odoo Contacts is the app that holds the single shared address book your whole Odoo setup runs on. Every customer, every vendor, every employee, every sales lead, every supplier rep, every freight company is one entry here, and the rest of Odoo (Sales, Invoicing, CRM, Purchase, Inventory, the works) just points back to that entry instead of keeping its own copy.

One shop, one chain, an agency, a manufacturer, a contractor outfit, an accounting firm: anyone with more than a handful of parties to track lives in Contacts. You can test Odoo Contacts free on the Odoo trial; pricing kicks in only if you install more than one Odoo app.

For Odoo's own product overview, see Odoo's official documentation.

How it works

The day-to-day flow

A new contact gets created the moment you start typing a name in any Odoo screen that needs one. A new sales quote, a new vendor bill, a new lead, a new employee entry: each one offers the option to either pick an existing contact or create a new one on the spot, with the form already open and the cursor in the right input. There is no separate "go add the contact first" step.

Each contact carries a flag for whether it is a company or a person. A company can have any number of people listed underneath it: the buyer, the AR contact, the warehouse manager, the receptionist. Each of those people inherits the company's main address by default but can override it (a buyer working from home, a sales rep based in another city). The job title sits on the person, not the company, so a re-org does not blow up your address book.

Addresses themselves are tagged by purpose. A customer can carry one main contact address, plus a separate billing address (so the invoice goes to accounts payable in a different building), plus one or several delivery addresses (so the warehouse ships to the right dock). The tax ID, the bank account details, the preferred language, the timezone, and tags like "VIP" or "NET30" all live on the same contact and travel with the customer everywhere they show up in Odoo.

Calibre configures Odoo Contacts for Alberta businesses: step by step, in writing.

Speak to an Implementation Specialist
In this module

What's inside Odoo Contacts

One Entry for Companies and People
Every party uses the same kind of entry, with a flag for whether it is a company or a person. A company can have any number of people listed underneath it (buyer, AR, warehouse manager, receptionist). The person carries the job title; the company carries the main address. The two stay linked, so a re-org or a name change updates everywhere.
Four Address Types per Party
Each contact can hold multiple addresses tagged by purpose: a main contact address, a billing address (so the invoice goes to AP), a delivery address (so the warehouse ships to the right dock), and Other for anything else. Sales pulls the delivery address on quotes, Invoicing pulls the billing address on invoices, and Purchase pulls the vendor's billing address on POs.
Tags With a Hierarchy
Tag any contact with one or more labels (VIP, NET30, Wholesale, Coffee Account, whatever you need) and Odoo will index them for fast filtering across Sales, CRM, Invoicing, and the rest. Tags can be grouped into a parent and child hierarchy, so a Wholesale group can hold Wholesale-Retail Buyer and Wholesale-Distributor as sub-tags.
VAT and Tax ID Validation by Country (with Accounting Installed)
Tax ID format validation is not in Contacts on its own; it lives in a small add-on that ships with the Accounting app. With Accounting installed, the Tax ID input on a company is validated against the format for the country on the address, and European TVA numbers can be checked against the EU VIES service if you turn that on. Bad IDs surface at data entry time, not at quarter-end. A standalone Contacts install (no Accounting) stores the Tax ID as plain text without any format check.
Bank Account Storage per Contact
Each contact can carry one or several bank accounts (account number, bank, IBAN, BIC where applicable). Customer accounts feed the receivables side of bank reconciliation; vendor accounts feed the payment run. The bank details stay with the contact, so a customer who changes their bank only gets updated in one place.
Language and Timezone per Contact
Set the language a contact prefers and Odoo will send them invoices, quotes, and emails in that language automatically (with the right translations for the document templates). Timezone on the contact lets meeting invites and reminders fire at the right local hour. A North American team selling into Europe stops sending 3 AM follow-ups by accident.
Industry Classification
Tag each company with an industry (Construction, F&B, SaaS, Manufacturing, Retail, whatever your list looks like). Industry filtering powers segmentation in CRM campaigns and pipeline reports, and feeds the "customers like this one" lookups in Sales when a rep is researching a new prospect.
Notes, Chatter, and Activities on Every Contact
Every contact carries a free-form Notes section for context that does not fit a structured input. Underneath the contact is the same chatter and activity log that runs across Odoo, so emails, internal messages, and follow-up activities all attach to the contact and travel with them as they move between Sales, Invoicing, and Helpdesk.
Color Tags, Avatars, and Quick-View Cards
Each contact gets a colour label and a photo or logo. The list view shows a card per contact with the name, the colour, the logo, the city, and the role at a glance. A receptionist scanning a list of names for a visitor can spot the right one in seconds without opening each one.
Archive Instead of Delete
Contacts are archived rather than deleted when they go inactive, so a vendor you stopped buying from a year ago does not disappear from the historical sales and invoice documents. Toggle Active off and the contact drops off the active lists but stays linked to every document they ever touched. One important caveat: a contact linked to an active Odoo user cannot be archived directly; Odoo blocks the action and asks you to archive the user first, which prevents accidentally orphaning someone's login or scheduled activities.
Built for

Is Odoo Contacts right for your team?

Outgrowing the entry-level tools

SMBs whose data lives in QuickBooks, HubSpot Free, or Excel spreadsheets that were set up when the business was smaller. The team now spends hours building reports by hand and reconciling between tools every month-end.

Operations across multiple tools

Retail, manufacturing, mechanical, or professional services businesses with 10 to 200 employees running on a patchwork of point tools. The team wants one database for the whole company instead of Zapier holding it together.

At a glance Community + Enterprise Cloud, Odoo.sh, or self-host iOS + Android app 15-day free trial CSV migration from current tool Odoo Ready Partner support
Bundle

Apps people often run with Odoo Contacts

Odoo Contacts is the address book the rest of Odoo reads from. Odoo Sales attaches a contact to every quote and order, pulling the delivery address from the contact's delivery entries and the billing address from the billing entry. Odoo Invoicing reads the contact for the bill-to side of every customer invoice and vendor bill, and writes payment history back onto the contact. Odoo CRM uses the contact as the linked customer on every lead and opportunity, so the deal card and the contact card share the same name, email, and phone. Odoo Purchase tracks vendors as contacts with the vendor-side bank account details on the same contact. Odoo Employees keeps each staff member as a contact, so a customer-facing email signature and a direct-deposit account live in the same place. Odoo Discuss provides the chatter, messages, internal notes, and activities that sit underneath every contact, so a sales conversation, an AR follow-up, and an internal note all surface on the same contact thread.

Pricing

What Odoo Contacts costs

One App Free
CA$0
forever
  • One app, unlimited users
  • Multi-company allowed
  • Odoo Online hosting
  • Dependent apps included free
If Odoo Contacts is the only Odoo app you install
Custom
CA$55
/user/month, billed yearly
  • Everything in Standard
  • Studio (no-code customizer)
  • Multi-company management
  • Hosting: Online, Odoo.sh, or on-premise
  • External API access
Choose this when you need custom layouts or multi-company management.
Calibre Implementation
Quote
phase-by-phase, in writing
  • Scoping, configuration, training
  • Data migration from your current tool
  • Named engineer through go-live and support
Book the call →
Free 45-minute scoping call. Quote in writing before any code ships.

Pricing source: Odoo's published Standard and Custom plans as of 2026-05. Calibre quotes in CAD; conversion from Odoo's local pricing in your region may vary.

Questions

Common questions about Odoo Contacts

Is Odoo Contacts free?
Yes. Odoo Contacts is part of the free Odoo Community edition, and the One App Free rule means that if Contacts is the only Odoo app you install, you pay nothing for the software no matter how many contacts you store. The moment you add a second app (Sales, CRM, Invoicing, anything else), the whole setup moves to the paid plan, which is around CA$35.20 per user per month billed annually for the full Odoo suite. You can test Odoo Contacts free on the Odoo 15-day trial, with every other app turned on, before committing to the licence.
What's the difference between Odoo Contacts in Community and Enterprise?
The Contacts app itself is identical in both editions. Companies, people, multiple addresses, tags, bank accounts, VAT validation, industry, languages, timezones, and the chatter all work the same way. The Enterprise tier adds the polish layer that affects how you USE the address book: Studio (the no-code customizer for adding inputs to the contact form), the polished iOS and Android mobile app, the de-duplication tool, and the better dashboards. For a shop that just needs a clean shared address book, Community Contacts is enough on its own.
Can we move our contacts from Salesforce, HubSpot, QuickBooks, or a spreadsheet into Odoo?
Yes. Odoo Contacts accepts CSV and Excel imports for the contact list, company-and-people hierarchies, tags, industries, bank accounts, VAT IDs, addresses (main, billing, delivery), languages, timezones, and notes. Every major CRM and accounting tool exports to that format. The hard part is rarely the upload. It is mapping your existing columns cleanly to Odoo's structure (where, for example, the company and the buyer are separate linked entries, not a single flattened row). Calibre handles the mapping during the rollout and keeps your prior tool live as a read-only reference for the first month so a rep can always check what was on a contact before the cutover.
Does Odoo Contacts connect with Gmail, Outlook, or my phone's contacts?
Email side: Odoo's mail integration ties the inbound email address on a contact to their entry, so a reply from a known contact attaches to their chatter on the right thread. The Gmail and Outlook plugins (a small add-on you install in the email client) let a rep open a Gmail message and create or update the matching Odoo contact with one click. Phone contacts: Odoo does not sync directly with your phone's address book, but the CSV export from Odoo and the import path from a phone vCard both work, and most teams just keep the source of truth in Odoo and let phones pull from there.
Is there a mobile app for Odoo Contacts?
Yes, on iOS and Android. The Odoo mobile app covers searching the contact list, opening a contact card, editing the name, email, phone, address, tags, and notes, attaching a photo, and logging a quick activity. The polished native app is part of the Enterprise tier; Community users get the responsive web version, which works on a phone browser but is less smooth for thumb taps. A rep on the road can pull up a customer's address, call them with one tap, and log the conversation in seconds.
Can one company have several people working under it, each with their own email and role?
Yes, and this is how Odoo expects the structure for any B2B customer or vendor. Create the company as one contact with the is-a-company flag on, then add the buyer, the AR clerk, the warehouse manager, and the receptionist as separate contacts that point back to the company as their parent. Each person carries their own email, phone, job title, and language preference; they inherit the company's main address by default but can override it if (say) the buyer works from a home office. When you send an invoice to the company, Odoo routes it to the AR contact's email; when you send a shipping notice, it routes to the warehouse manager. Re-orgs and personnel changes update one entry at a time, not a list of duplicated rows.
Can we tag contacts and filter on those tags across every Odoo app?
Yes. Tags live on the contact (as a many-to-many to a tag list you control), and every Odoo app that filters on customers or vendors honours them. A CRM rep can filter pipeline by Wholesale-Retail Buyer. A bookkeeper can filter the AR aging report by NET30. A marketing email can target every contact tagged VIP. Tags can be nested in a parent and child hierarchy if your list gets long. Adding or removing a tag is one click on the contact and propagates to every report that uses it.

Working with Calibre

How long does a Calibre implementation typically take?
Single-module rollouts on an existing Odoo setup run 2-6 weeks depending on data migration scope. Greenfield Odoo with a multi-module rollout runs 4-16 weeks. Calibre commits to a written, phase-by-phase timeline after the free scoping call before any code is written.
How much does a Calibre implementation cost?
Cost depends on module scope, user count, custom work, and migration complexity. Calibre's posture is a written fixed-phase quote after the scoping call rather than an hourly engagement, so the cost is committed in writing before the first commit.
What happens to our data if we ever want to leave Odoo?
Everything exports. CSV, XML, or a full PostgreSQL database dump, yours on day one. Migrating off Odoo has been done before and it's not a one-way door.
Speak to an Implementation Specialist

Talk to Calibre about Odoo Contacts.

Written, phase-by-phase quote before any code is written. Odoo Ready Partner, Calgary. In-house team, no offshore handoffs.

Speak to an Implementation Specialist Try the 15-day free trial

What you get

  • Free 45-minute scoping call with an Odoo-certified engineer
  • Module-by-module fit/gap assessment
  • Written, phase-by-phase quote
  • Named engineer for implementation and support
  • Data-export commitment in writing