How to Configure Odoo 16 in Visual Studio Code on Ubuntu 20.10

Odoo is a powerful open-source business management software suite that covers a wide range of business needs, including CRM, e-commerce, accounting, inventory management, and more. It is highly customizable and can be tailored to fit the specific requirements of your business. Visual Studio Code (VS Code), on the other hand, is a popular open-source code editor developed by Microsoft, known for its extensive extension ecosystem and versatility.

In this blog post, we will guide you through the process of configuring Odoo 16 in Visual Studio Code on Ubuntu 20.10. This setup allows developers and system administrators to work seamlessly with Odoo, making development and customization tasks more efficient.


Before we begin, ensure that you have the following prerequisites in place

  1. Ubuntu 20.10: You should have a working installation of Ubuntu 20.10 on your system.
  2. Visual Studio Code: Make sure you have VS Code installed. If not, you can download it from the official website (https://code.visualstudio.com/).
  3. Odoo 16: Install Odoo 16 on your Ubuntu system. You can refer to the official Odoo documentation for detailed instructions on how to do this (https://www.odoo.com/documentation/16.0/setup/install.html).
  4. Python: Odoo is built using Python, so ensure you have Python 3.x installed on your system.

Configuring Odoo 16 in Visual Studio Code

Now, let’s dive into the steps to configure Odoo 16 in Visual Studio Code:

Step 1: Install the Required VS Code Extensions

To work with Odoo in VS Code effectively, you need to install some extensions. Open VS Code and navigate to the Extensions view by clicking on the square icon on the left sidebar or pressing Ctrl+Shift+X. Search for and install the following extensions


This extension provides support for Python development in VS Code, including syntax highlighting, code completion, and debugging capabilities.


If you plan to use Docker for Odoo development, this extension will be handy for managing Docker containers.

Odoo Snippets

This extension provides code snippets for common Odoo development tasks, making your coding process faster and more efficient.

Step 2: Open Your Odoo Project

Open VS Code and navigate to the File menu. Select “Open Folder” and choose the directory where your Odoo project is located. This should be the directory where you have your custom Odoo modules or where you plan to start your development.

Step 3: Configure Python Interpreter

To ensure that VS Code uses the correct Python interpreter, you need to configure it. Open your project folder in VS Code and create a .vscode directory if it doesn’t already exist. Inside the .vscode directory, create a settings.json file and add the following configuration:

    "python.defaultInterpreterPath": "/path/to/your/python3"

Replace /path/to/your/python3 with the actual path to your Python 3 interpreter. You can find the path by running which python3 in your terminal.

Step 4: Create a Virtual Environment

It’s a good practice to work within a virtual environment to isolate your project’s dependencies. In your Odoo project directory, open a terminal within VS Code (you can do this by clicking Terminal -> New Terminal), and create a virtual environment:

python3 -m venv venv

Activate the virtual environment:

source venv/bin/activate

Step 5: Install Odoo Dependencies

With your virtual environment activated, install the required Python packages for Odoo development using pip. Typically, you’ll need packages like odoo, requests, psycopg2, and others. You can install them using a requirements.txt file or individually as needed:

pip install odoo requests psycopg2

Step 6: Configure Odoo Server in VS Code

To run and debug your Odoo server from within VS Code, you’ll need to configure a launch configuration. Create a .vscode directory in your Odoo project folder if it doesn’t already exist, and inside it, create a launch.json file. Add the following configuration:

    "version": "0.2.0",
    "configurations": [
            "name": "Odoo Server",
            "type": "python",
            "request": "launch",
            "stopOnEntry": false,
            "program": "${workspaceFolder}/odoo/odoo-bin",
            "args": [
            "cwd": "${workspaceFolder}/odoo",
            "env": {},
            "envFile": "${workspaceFolder}/.env",
            "debugOptions": [
            "pythonPath": "${config:python.defaultInterpreterPath}",
            "console": "integratedTerminal",
            "internalConsoleOptions": "neverOpen",
            "relaunch": true

This configuration tells VS Code how to launch your Odoo server. Make sure to adjust the paths according to your project’s structure.

Step 7: Start Odoo Server

Now, you can start your Odoo server directly from VS Code. Click on the Run and Debug icon on the left sidebar (or press F5). Select the “Odoo Server” configuration and click the green play button to start the server. You can set breakpoints and debug your Odoo code as needed.

Step 8: Work on Your Odoo Modules

With your Odoo server up and running in VS Code, you can work on your custom Odoo modules, create new ones, and test your changes seamlessly. You can use the Odoo Snippets extension to speed up your development by providing code snippets for common Odoo tasks.

Step 9: Deploy Your Changes

Once you’ve developed and tested your Odoo modules, you can deploy them to your production environment. Make sure to follow best practices for module deployment, such as version control and proper testing procedures, to ensure the stability and reliability of your Odoo instance.


Configuring Odoo 16 in Visual Studio Code on Ubuntu 20.10 can significantly enhance your development workflow. With the right extensions and configurations in place, you can streamline your Odoo development tasks, write high-quality code, and efficiently manage your Odoo projects. This setup not only boosts productivity but also ensures that your Odoo-based business management solutions are robust and reliable. Happy coding!

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button