O Odoo liga-se a outros sistemas de três formas principais: a sua API externa (JSON-2 desde o Odoo 19, que substitui o XML-RPC e o JSON-RPC, agora obsoletos), pontos de acesso REST criados com módulos à medida ou da comunidade, e middleware com filas para grandes volumes de dados. O acesso à API externa exige o plano Custom, e as ferramentas de IA conectam-se através do servidor MCP do Odoo 20.
Quer precise de integrar um portal de clientes, plataformas de e-commerce como a Shopify, sincronizar dados com um CRM de terceiros ou gerir grandes fluxos de dados de vários sistemas, o Odoo oferece opções de API flexíveis para cada caso.
Quais são os métodos de integração de API do Odoo?
O Odoo suporta três tecnologias-chave de integração:
- RPC (Remote Procedure Call): API nativa para acesso direto a funções
- REST API: Uma interface web padrão para casos de uso comuns
- Queued Middleware: Uma abordagem baseada em mensagens para troca de dados assíncrona e escalável
Cada abordagem tem pontos fortes e compromissos específicos, consoante os sistemas envolvidos, a natureza do fluxo de dados e as necessidades de tempo real da sua aplicação.
Estes métodos também podem ser combinados, por exemplo, REST para APIs públicas e RPC para tarefas internas. Para assistentes de IA como o Claude ou o ChatGPT, o Odoo 20 acrescenta outra via: um servidor MCP nativo.
O que é a API externa do Odoo (JSON-2 e RPC)?
O Odoo suporta nativamente uma interface RPC (Remote Procedure Call) que permite chamadas diretas a métodos usando JSON ou XML.
Desde o Odoo 19, o padrão é a API JSON-2: envia-se por POST um corpo JSON com uma chave de API como bearer token, por exemplo para chamar o método search_read do Odoo em /json/2/res.partner/search_read. Os pontos de acesso antigos de XML-RPC e JSON-RPC (/xmlrpc, /xmlrpc/2, /jsonrpc) estão obsoletos e a sua remoção está prevista para o Odoo 22 (outono de 2028) e o Odoo Online 21.1 (inverno de 2027).
A abordagem da API RPC permite um acesso profundo às funcionalidades centrais do Odoo e é o método mais integrado na plataforma.
Vantagens:
- Perfeita para interações rápidas com o mínimo de sobrecarga, por ser leve e eficiente.
- Suporta todos os métodos internos do Odoo sem configuração adicional, permitindo acesso total ao sistema.
Desvantagens:
- Opera ao nível da função e não com recursos estruturados, ou seja, chama diretamente métodos de backend como create, write ou search_read, em vez de trabalhar com recursos REST padrão como /products ou /customers
- Não é tão adotada e não tem a padronização universal do REST ou do GraphQL.
- Cada chamada JSON-2 é executada na sua própria transação de base de dados, pelo que não é possível encadear várias chamadas numa única operação atómica.
Melhor para: Integrações internas, tarefas críticas em termos de desempenho ou quando é necessário acesso total aos métodos sem restrições.
O Odoo tem uma API REST?
A API RESTful no Odoo segue as normas convencionais da web, permitindo interagir com os dados do Odoo através de métodos HTTP comuns como GET, POST, PUT e DELETE.
É uma interface amplamente compatível e ideal para a integração com plataformas ou serviços externos.
Embora o Odoo não inclua uma API REST nativa por predefinição, muitas implementações usam módulos da comunidade ou controladores à medida para expor endpoints RESTful.
Vantagens:
- Padronizada, amplamente adotada e suportada por praticamente todas as linguagens de programação modernas.
- Organiza os dados em tipos claros (como produtos ou encomendas), tornando o sistema mais fácil de gerir e de expandir mais tarde.
- Existem bibliotecas de cliente REST na maioria das frameworks, por se tratar de um ecossistema amplamente suportado.
- É mais fácil documentar e testar APIs REST, com ferramentas como o Postman ou o Swagger.
Desvantagens:
- As chamadas REST trazem metadados adicionais que podem tornar tudo mais lento.
- Menos eficiente para casos de uso complexos, e o desempenho pode ressentir-se se forem necessárias muitas chamadas encadeadas à API.
- Funciona apenas sobre HTTP e não oferece suporte nativo a transportes alternativos como WebSockets.
- A ausência de estado é uma restrição comum do REST, o que pode levar a chamadas repetitivas, por exemplo, voltar a obter dados de autenticação/utilizador.
Melhor para: Portais web, aplicações móveis e integrações com serviços de terceiros, onde a compatibilidade universal é essencial.
Quando utilizar middleware com filas no Odoo?
Para projetos com grandes volumes de dados ou necessidades de comunicação assíncrona, o Odoo pode ser integrado com ferramentas de queued middleware como o Kafka ou o RabbitMQ, embora não inclua suporte nativo para estas ferramentas.
Este padrão desacopla os sistemas e garante uma comunicação tolerante a falhas, mesmo quando um dos lados está temporariamente indisponível.
Vantagens:
- Permite a comunicação sem depender dos tempos de resposta.
- Lida com grandes conjuntos de dados e permite que as mensagens fiquem em buffer e sejam processadas quando houver recursos disponíveis.
- Altamente escalável e resiliente, ou seja, as mensagens não se perdem mesmo durante falhas do sistema.
Desvantagens:
- Configuração mais complexa e exige uma infraestrutura de filas separada.
- Não é em tempo real: podem ocorrer atrasos, porque o processamento é assíncrono.
- Exige uma configuração cuidadosa e uma gestão contínua dos message brokers, devido às dependências de middleware
Melhor para: Processos com muitos dados, como relatórios, sincronização entre sistemas ou operações de leitura/escrita em massa ao longo do tempo.
Como escolher o método certo de integração de API do Odoo?
Ao selecionar a estratégia de API certa para o seu projeto Odoo, considere:
- Parceiro de integração: Está a trabalhar com um sistema de terceiros ou com ferramentas internas?
- Necessidades de tempo real: Precisa de transferência de dados instantânea ou é aceitável um processamento diferido?
- Volume de dados: Está a sincronizar meia dúzia de registos ou a transmitir milhares por hora?
- Complexidade do sistema: Quer algo padronizado e pronto a usar ou altamente otimizado e à medida?
Eis uma regra prática rápida:
Caso de uso | Melhor método |
Chamadas rápidas a sistemas internos | RPC |
Integrações comuns (por exemplo, Zapier) | API REST |
Operações assíncronas com grandes volumes de dados | Middleware com filas |
Ao escolher um método de ligação por API no Odoo, não tem de se limitar estritamente a um.
É frequente usar uma abordagem híbrida, por exemplo, REST para sistemas voltados para o público, RPC para orquestração de backend e filas para processamento pesado em segundo plano.
Atenção: A API externa do Odoo só está disponível no plano de preços Custom, não no One App Free nem no Standard. As opções de REST e de middleware dependem da sua versão do Odoo ou de implementações à medida.
O que verificar antes de lançar uma integração de API do Odoo?
Antes de avançar para o desenvolvimento, esclareça estes pontos com a sua equipa ou com o parceiro de integração:
- Estratégia de autenticação: Vai usar tokens, autenticação por sessão ou OAuth?
- Tratamento de erros e novas tentativas: Especialmente importante em operações em fila ou em lote
- Propriedade e mapeamento de dados: Quem detém a fonte de verdade de cada campo?
- Considerações de segurança: Garanta que os endpoints estão protegidos e os dados encriptados
- Monitorização e registo: Tenha visibilidade sobre o tráfego da API e as taxas de falha
Uma integração bem preparada poupa tempo, reduz erros e garante que os sistemas ligados se mantêm fiáveis e preparados para o futuro.
Perguntas Mais Frequentes (FAQ) sobre a API do Odoo
Que métodos usa o Odoo para integração de API?
O Odoo integra-se através da sua API externa (JSON-2 desde o Odoo 19; o XML-RPC e o JSON-RPC estão obsoletos), de pontos de acesso REST adicionados com módulos à medida ou da comunidade e de middleware com filas, como o RabbitMQ ou o Kafka, para grandes volumes de dados. Os assistentes de IA conectam-se através do servidor MCP do Odoo 20.
É fácil ligar o Odoo a outro software através de API?
Sim, se o seu plano o incluir. A API externa do Odoo só está disponível no plano de preços Custom, não no One App Free nem no Standard. Com ela, pode ligar o Odoo a ferramentas como o Shopify ou CRMs de terceiros para automatizar fluxos de trabalho e sincronizar dados sem introdução manual.
Como manter segura a minha ligação à API do Odoo?
Utilize uma chave de API do Odoo dedicada para cada integração, enviada como bearer token no cabeçalho Authorization, e nunca a palavra-passe de um utilizador. Execute as integrações com um utilizador bot que tenha apenas os direitos de acesso necessários, encripte todo o tráfego com HTTPS e revogue uma chave de imediato se for detetado um risco de segurança.
O XML-RPC está obsoleto no Odoo?
Sim. O XML-RPC e o JSON-RPC (/xmlrpc, /xmlrpc/2, /jsonrpc) estão obsoletos desde o Odoo 19. A documentação do Odoo prevê a sua remoção no Odoo 22 (outono de 2028) e no Odoo Online 21.1 (inverno de 2027). Migre as integrações para a API JSON-2 antes disso, idealmente no âmbito do upgrade do Odoo.
O que é a API JSON-2 do Odoo?
O JSON-2 é a API externa do Odoo desde o Odoo 19. Envia-se por POST um corpo JSON para /json/2/model/method, por exemplo /json/2/res.partner/search_read, com uma chave de API como bearer token no cabeçalho Authorization. Cada chamada é executada na sua própria transação de base de dados, pelo que não é possível encadear várias chamadas de forma atómica.
Que plano do Odoo é necessário para aceder à API?
É necessário o plano Custom. A documentação do Odoo indica que o acesso a dados através da API externa só está disponível nos planos de preços Custom, não no One App Free nem no Standard. Se estiver no Standard e planear integrações, preveja no orçamento a mudança para o Custom antes de iniciar o desenvolvimento.
Como se conectam ao Odoo ferramentas de IA como o Claude ou o ChatGPT?
Através do MCP (protocolo de contexto de modelo). O Odoo 20 inclui um servidor MCP nativo num ponto de acesso /mcp com cinco ferramentas só de leitura por predefinição; um administrador tem de ativar as ações de escrita. Utiliza chaves de API dedicadas ao MCP e aplica os direitos de acesso do utilizador. Saiba mais sobre o servidor MCP do Odoo.
Precisa de integrar o Odoo com outros sistemas? Fale connosco!
Escolher o método certo de API do Odoo é essencial quando quer sincronizar dados com o seu CRM, alimentar dashboards em tempo real ou gerir fluxos de dados de grande escala.
Fale com os nossos especialistas para explorar o que é possível com as capacidades de integração do Odoo e obter clareza sobre a abordagem mais adequada ao seu caso de uso.