# Odoo

Odoo (anteriormente intitulado OpenERP) é uma solução de gestão empresarial ERP completo, com um sistema CRM.
É baseado na arquitetura MVC e implementa um cliente e um servidor, sendo a comunicação entre o cliente e o servidor por interface XML-RPC. O Software é open source e disponível sob a GNU General Public License - Affero.
As principais áreas funcionais são: contabilidade gerencial, contabilidade, gerenciamento de materiais, gestão de vendas e compras, tarefas automatizadas, gestão de recursos humanos, marketing, help desk, e ponto de venda. O Odoo é extremamente modular, com 350 módulos disponíveis.

## Modelo de Negócios

O OpenERP segue um modelo de negócio totalmente open source. O desenvolvimento e os esforços da comunidade são gerenciadas através do gestor de projetos Launchpad, utilizando o sistema de gestão de versões Bazaar. A comunidade OpenERP é organizada no site OpenObject, onde estão os fóruns e todos os módulos disponíveis para OpenERP. A documentação também é gerenciada no Launchpad, mas um site dedicado a todos com os livros, foi criado em 2009.
OpenERP estabelece um modelo de negócio com uma relação ganhar-ganhar entre a comunidade, a rede de parceiros e o editor. O papel dos parceiros é desenvolver o mercado em torno da ofertas de serviços OpenERP. O editor é responsável pela qualidade e visão do desenvolvimento do produto, e em conjunto com a comunidade dinamiza atividades para contribuir para o crescimento do produto.

## Licença

O Servidor e o cliente GTK+ do OpenERP é publicado sob a licença GPL versão 3.0. O cliente Web está disponível através da "OpenERP Public Licence". que é uma licença derivada da "Mozilla Public License", gratuito para uso e modificações. A maior restrição importante é manter os logotipos originais da Tiny, ERP Open e Axelor nas páginas web visível para o usuário.$^[$

## Arquitetura

A estrutura do OpenERP tem três camadas: base de dados, servidor e cliente.
O banco de dados é o PostgreSQL.
A componente servidor é escrita em Python. As funcionalidades de negócio são organizadas em "módulos". Um módulo é uma pasta com uma estrutura predefinida contendo código Python e arquivos XML. Um módulo define a estrutura de dados, formulários, relatórios, procedimentos, workflows, etc.
O cliente é "leve" porque não contém lógica de negócios. Ao adicionar novos objetos, tais como menus ou formulários, ficam disponíveis em qualquer tipo de cliente: GTK +, web ou Qt.
O cliente GTK+ é o padrão e é baseado na plataforma PyGTK (Python).
O cliente Web é escrito em Python. Ele usa a plataforma turbogears até a versão 5.0.1. Embora o cliente GTK+ e o clientes web sejam equivalentes, há algumas diferenças na funcionalidade da interface. Por exemplo, o cliente Web pode ter um link "personalizar" em todos os formulários, mas no cliente GTK+ não é assim.
O cliente Qt é escrito em Python, mas não está disponível como um download oficial, desde de agosto de 2009.

## Ambiente de desenvolvimento

Não existe um ambiente de desenvolvimento integrado. O código Python deve ser editado em um editor externo. A lógica da aplicação (ou seja, os fluxos de trabalho e estrutura de dados) pode ser alterada através da interface do cliente. Um tutorial exemplifica como usar a ferramenta DIA para a criação visual de um módulo.

## Localização brasileira

Existe um grupo de usuários no Brasil que se dedica à tradução e criação dos módulos l10n_br e l10n_br_data que implementam adaptações específicas para atender às necessidades do Brasil.