Odoo is a powerful set of open source business applications built on the OpenObject framework. When you first install Odoo, the only functionality you will have is limited messaging options between users. From there, Odoo allows you to install the modules you need as you need them. This flexibility makes Odoo much more accessible than many business software solutions.
In this chapter, we will get started working with Odoo by covering the installation and the basics of setting up an Odoo database.
The topics we will cover include:
Using the free two-user edition of Odoo
Setting up a trial company
Installing Odoo on Windows and Ubuntu
Troubleshooting and configuring your installation
Not long ago, nearly all companies kept their primary information systems in-house. This approach requires not only a lot of capital expense in purchasing servers and software licenses, but also creates a lot of responsibility and risk in backing up data and ensuring business continuity. Today, more and more companies are choosing to host their business applications in online networks commonly known as the cloud. Odoo allows you the flexibility of both options—either hosting on your own hardware, or utilizing Odoo's online software services.
The best thing about accessing Odoo online is that you can jump in and start using the software right away. You don't have to decide what operating system to use. You don't have to install any software at all. Just enter the URL into your web browser and you are ready to get started.
Another added benefit of taking this approach is that you will verify that your web browser is up to date and compatible with the latest version of Odoo. So, even if you intend to install Odoo on your own hardware, it is still worth taking a minute to test out the online trial version of Odoo. Expect to put a great deal of time into determining which Odoo applications are right for your company.
Google Chrome (recommended)
Macintosh users will need to make sure they are running Mac OS X or above. Users running older Macintosh systems are currently having difficulties running Odoo version 7. Also, in my experience, Google Chrome tends to offer the best experience in working with Odoo. Firefox is also often recommended by others in the Odoo community.
Beginning with Odoo 8, Odoo has native support for mobile phones and tablets. Menus are designed to flow and format properly. The new website application even includes a preview within the portal administration to emulate how the site would appear on a mobile phone. While you still suffer many of the limitations that come with a small screen size, the applications are functional and make it even easier for developers to create mobile Odoo applications.
Odoo's mobile application support covers both the Android and Apple iOS platforms. Make sure, however, that for any processes you intend to implement for your business, you test all processes thoroughly for both desktop and any mobile solutions. Smaller screen sizes might make some data unreadable or very awkward to work with.
Accessing the online trial version of Odoo online could not be simpler. Just open up your browser and navigate to https://www.odoo.com/start.
You will then be prompted to choose one of more than 20 business applications, as shown in the following screenshot:
Don't worry, you can add more applications later:
For our example, let's go ahead and install the CRM application by clicking on the Install CRM button:
Be patient as it can take thirty seconds or longer for the servers to build the database and bring up the starting page. When the installation is complete, Odoo automatically signs you in so you can begin trying out the software. The goal of this approach is to get users to directly start using the software right away and avoid having to fill out lengthy forms or create logins and passwords to begin using the software. It really is just one click and you have your own version of Odoo to play with.
In the preceding screenshot, you can see the screen that appears after installing the CRM application. With it, you can manage your customers, leads, and opportunities. We will discuss the CRM application in detail in Chapter 3, Exploring Customer Relationship Management in Odoo.
Take a few minutes to look around in Odoo to get familiar with the interface. You don't have to worry about breaking anything or doing anything wrong. If you run into problems or get confused, just close your web browser and try again.
At the very top of the Odoo application, just under the address bar in the browser, you will see a message that informs you about how much longer your trial version of Odoo will run before you need to register. Also, remember that it is possible to lose this instance of Odoo before the time runs out.
After you have filled out the form and clicked on Start using, the Odoo application will once again reload. Now, you will see in the top-right-hand corner that you are logged in under the name you provided in the signup form. Also, you will see at the top, a countdown of how many days are remaining in your trial version.
For 15 days, you can use Odoo for free without subscribing. Once your 15 days run out, you must subscribe to Odoo in order to keep using their enterprise cloud-hosted version of the software. The first two users of Odoo are free indefinitely.
This means you can sign up and continue using Odoo with just two users without having to pay any monthly fees. For additional users, the current pricing is $25 per month, per user at the time of writing. Each application that you use also will incur a monthly cost depending upon the specific application.
The following screenshot is the Odoo Online Pricing calculator in July of 2015:
You can locate the Odoo Online Pricing page at https://www.odoo.com/pricing-online.
Odoo Online is priced for employees that use the applications. You are not charged for customers or suppliers that access Odoo through the web portal.
Depending on your requirements, an Odoo subscription might be a good decision. Installing and maintaining an Odoo installation takes a degree of expertise and has risks for production systems. You must maintain adequate disaster recovery procedures in case of server crashes or hard drive failures. There are also complexities in applying bug fixes and migrating to newer versions of Odoo. This book will help you with many of these tasks. Yet, it can be quite convenient to have an Odoo subscription so you can focus on the functional, rather than the technical, aspects of working with Odoo.
To subscribe to Odoo online and continue using Odoo past the 15 day trial period, click on the Subscribe to keep it running link at the top of the page:
Setting up and managing an Odoo installation will require a basic understanding of the components that make up Odoo. Every business system has a set of technologies and underlying software platforms that are required for the system to function. Fortunately, unless you plan to customize Odoo, you only need to understand the very basics of the Odoo architecture to complete a successful installation.
In this book, we provide a basic overview of the Odoo architecture. If you wish to get more detailed documentation on the Odoo architecture, visit https://doc.Odoo.com/trunk/server/02_architecture/.
Like most ERP systems, Odoo has specific database requirements. In this case, it is PostgreSQL. PostgreSQL is an open source, cross-platform Object Relational Database Management System (ORDMS). While not popular on the scale of Microsoft SQL Server or MySQL, PostgreSQL is an enterprise-class database server with many advanced features. In fact, PostgreSQL stacks up very well against far more expensive databases such as Microsoft SQL Server and Oracle Database.
PostgreSQL runs on every major operating system. For most Odoo installations, Ubuntu is the operating system of choice. However, PostgreSQL will also run quite well under other versions of Linux, Microsoft Windows, and even Mac OS X.
You can learn more about PostgreSQL at http://www.postgresql.org/.
The primary programming language of Odoo is Python. Like the other technologies underlying Odoo, the Python language is open source and runs on all the major contemporary operating systems. It is an extremely popular programming language which makes it very easy to find resources to help you get started.
You can learn more about the Python programming language at http://python.org/.
Odoo is built upon a Model-View-Controller (MVC) architecture. One of the primary goals of this architecture is to separate the visual display of the information from the business rules and management of the underlying data. For example, if you need to change the way data is organized in the model, it is desirable not to have to make dramatic changes to how you view the data. This is true for maintaining flexibility in viewing data. Today, it is common to have many different client applications sharing the same underlying data.
The model is essentially the data that makes up your Odoo installation, which is stored in the PostgreSQL database. Odoo is unique, in that, database structures are typically defined by the Odoo modules at the time they are installed. The Odoo framework takes the model definitions and automatically creates the necessary table structures inside the PostgreSQL database. Furthermore, a web interface in Odoo allows administrators to easily extend the Odoo data model in a variety of ways without having to modify the Odoo source code.
Each view in Odoo is defined in XML documents. The Odoo framework is responsible for rendering these view files in a web browser. Alternative views can be built to render Odoo functionality upon other platforms such as mobile devices.
Some of you who bought this book might have already jumped ahead and installed Odoo on their Microsoft Windows computer. So, for you go-getters, that working installation of Odoo might function just fine for researching and testing its features. Often, the Windows all-in-one installer provides a simple method to get Odoo up and running instantly on your hardware. Basically, you do not have to install a new operating system.
If you are familiar with Windows and have no Ubuntu experience, you might get going a little faster by sticking with a Windows install for your first setup. Downloading and installing modules and making changes to configuration files will be much easier if you are familiar with the operating system.
While Microsoft Windows does not really need an introduction, it is probably worth giving a brief introduction to Ubuntu. In short, Ubuntu (pronounced oo-BOON-too) is a very popular open source operating system based on the Linux kernel. It has enjoyed increasing popularity because it is easy to install and very stable. Ubuntu can be installed either as a server operating system without a graphical interface or as a desktop operating system with a graphical interface that closely resembles Windows.
You can learn more about the Ubuntu operating system and why it is so popular at http://www.ubuntu.com/.
Ubuntu is the primary target platform: While Odoo is released for Windows and still well-supported, the Ubuntu installation continues to be favored. The development team of Odoo works primarily with Ubuntu for bug fixes and platform releases. It can be expected that, for the most part, Odoo development will be optimized around Ubuntu, not Windows or Mac.
Ubuntu is open source: Installing Odoo on any Windows operating system is going to require a license from Microsoft. While using Odoo on your Windows PC or Mac is a viable and perhaps desirable solution for testing and development, it is unlikely you will want to run Odoo on a Windows desktop system for any production environment. Why? Well, this requires Windows Server, which has much higher license costs than desktop editions. With an Ubuntu installation, you get an entirely open source and virtually cost-free solution.
Ubuntu has additional scalability options: It is possible to configure a more scalable solution under Ubuntu than what you can currently configure under Microsoft Windows Server.
Ubuntu has strong community support for Odoo: The fact is that a vast majority of the production installations of Odoo are running under Ubuntu. When you run into trouble or management issues with your Odoo installation, you may find it easier to get assistance if you are running an Ubuntu installation.
Although this book will focus on Windows and Ubuntu installations, you do have several other options. In the past, Odoo has been deployed under a variety of Linux distributions and even on the Macintosh OS. There are also many community members actively developing client frontends for mobile platforms such as Google's Android OS.
When deploying an Odoo system, it is important to understand the various Odoo versions, as well as the release and upgrade policies. There is currently one major release for versions 6.0, 7.0, and 8.0, as well as a master branch that is the latest development version which will soon become Odoo Version 9.0. The stable versions are the standard support version of Odoo and, typically, the one you should choose to install for most situations. The master version is the development version and will often contain bugs and unfinished features. This is primarily downloaded by developers or those who wish to get a look at the latest features.
The goal of the Odoo development team is to release two stable version upgrades each year. Odoo further labels some stable versions as Long Term Support (LTS) versions. These releases are supported by Odoo for those that have an Odoo Enterprise support contract. For any production environment, it is smart to choose an LTS version. Most importantly, installing an LTS release of Odoo will make bug fixes and patches much easier to implement.
We begin our installation by locating the packages that are currently available to install. You can find the current list at http://nightly.odoo.com/.
The examples and case studies in this book use Odoo 8.0. This means you should select the 8.0 LTS (stable) version of Odoo to download. You can navigate directly to the 8.0 Odoo downloads here http://nightly.odoo.com/8.0/nightly/.
It is entirely possible that Odoo will change the URL as new versions are released. To best follow the examples in this book, download an 8.x installation of Odoo.
Naturally, the specific download packages are going to change on a nightly basis.
The latest version of the stable LTS release will contain the most current Odoo built with bug fixes included and will appear at the bottom of the list. By the way, the upload dates you'll see are in Coordinated Universal Time (UTC) and, therefore, might be many hours ahead of your time zone, especially if you live in the Western Hemisphere.
The first screen will prompt you to select the language for your installation.
After you have selected the language and clicked on OK, the wizard will continue with the installation. From here, everything will continue like a normal Windows installation.
It is recommended that you change the username and password for security purposes. These values will be written into the Odoo configuration file. The username and password provided will be the administration credentials for the PostgreSQL database, so be sure to remember them.
After the wizard is complete, if you leave Start Odoo checked and then click on Finish, Odoo should open up in your default browser.
If Odoo fails to launch, you can look at the Troubleshooting Odoo Installations section later in this chapter for solutions to some of the problems commonly encountered during installation.
This book will walk you through the installation procedure for Odoo on Ubuntu using the latest all-in-one nightly package. Depending on your Ubuntu installation and how you want to work with Odoo, there are alternative installation methods.
At the time of this writing, Odoo is most commonly installed on Ubuntu Version 14.04.
deb http://nightly.Odoo.com/8.0/nightly/deb/ ./
This installs the package.
sources.list, you can start the installation process by entering these commands into a terminal window:
sudo apt-get update sudo apt-get install openerp
The Odoo packages will be first downloaded and then installed. This is an all-in-one installation and should set up all the necessary packages, PostgreSQL, and library dependencies required to run Odoo.
As far as ERP installations go, Odoo is typically very easy to install. Unfortunately, it is possible for an installation to fail for a variety of reasons. In this next section, we will discuss some of the most common installation issues and provide some troubleshooting tips for diagnosis problems with an Odoo installation.
If you have followed the default installation, then your Odoo installation should be accessing Odoo at
Make sure the URL is exactly as you can see it above. If you did change the port number during installation, make sure you change the port in the URL.
If you are unable to pull up Odoo in the browser, it can be good to verify that the Odoo services are running.
Pull up the Task Manager and go to the Services tab, then look for Odoo-server8.0. The status should be running, as shown in the following screenshot:
Here is an example of the Odoo-server-8.0 service successfully running on Windows.
Additional Odoo troubleshooting steps for Windows can be found at https://doc.odoo.com/install/windows/server/complementary_install_information/.
When managing an Odoo server, one of the most common tasks you will find yourself performing is starting and stopping the Odoo services. Odoo allows you to start and stop the services with a command switch.
To start the services, use:
sudo /etc/init.d/Odoo-server start
To stop the services, use:
sudo /etc/init.d/Odoo-server stop
Odoo writes many messages, warnings, and error messages to a log. Often, when troubleshooting problems, this log file is valuable in determining what action you should take. In a default installation, the log file is located at
The log is especially valuable to locate problems you may have when installing new modules.
Using this file, you can change many of the attributes of Odoo.
By default, Odoo runs on port
8069. For many installations, the default port will work fine. There are situations, however, where it can be useful to change this default port. One common scenario would be the need to run more than one version of Odoo. Multiple installations cannot run on port
8069, so you will need to modify the port. Sometimes there are security reasons behind changing ports, as many hackers are aware of the default ports that people use.
Fortunately, changing the default port number is easy.
Port=8059 will change the default port for the web client to port 8059.
Odoo offers database management tools that can be accessed easily through your web browser. This makes it easy to create, backup, and even delete database, all through a web interface. While there are sometimes links available on the login page that will take you to these tools, it is possible that when installing some applications, such as the website builder, you will not find a link easily.
To access the database management tools, use the following path:
Also, be careful while starting up your Odoo server from the command line without specifying an alternative password or the path to the configuration file. If you do, you leave the instance open with the default password.
Installing and configuring Odoo can quickly become a very complex task that is outside the scope of this book. In Appendix, Locating Additional Odoo Resources, you will find links to additional resources that can assist you with installing Odoo.
In this chapter, we saw how easy it was to get started using Odoo online. We discussed how to set up a trial company and the basics of creating a database and installing your first module. If you choose not to use the online services, you likely found the topics on installing Odoo on Windows or Ubuntu helpful. Finally, we discussed various methods of troubleshooting and configuring Odoo.
In the next chapter, we will begin to jump into our first real business applications in Odoo. You will get introduced to our real world case study and set up the basic configuration of the company. We will walk you through setting up your first product and, finally, creating and printing your first sales order.