Pitch: Sincronização de clientes do Odoo com a AbacatePay
AbacatePay Addons for Odoo 16
Módulos open-source que integram o Odoo 16 com a AbacatePay — plataforma brasileira de pagamentos via API REST com suporte a PIX, Checkouts, Links de Pagamento e Assinaturas.
Repositório: github.com/CristianoMafraJunior/abacatepay-addons
O que é o Odoo?
Odoo é um ERP open-source modular escrito em Python. Ele cobre praticamente tudo que uma empresa precisa: CRM, estoque, faturamento, contabilidade, e-commerce, RH e muito mais. A grande vantagem é sua arquitetura de módulos — você instala só o que precisa e pode criar os seus próprios estendendo o core sem modificá-lo.
No Brasil ele é amplamente usado por empresas de médio porte, mas ainda tem pouca integração nativa com ferramentas brasileiras de pagamento.
O que é a OCA?
A OCA (Odoo Community Association) é uma organização sem fins lucrativos que coordena o desenvolvimento de módulos open-source para o Odoo. Todos os módulos seguem padrões rígidos de qualidade — revisão de código, testes automatizados, pre-commit com pylint e flake8 — e são publicados sob licença AGPL-3.0.
Este projeto segue as convenções da OCA e está estruturado para futura contribuição ao ecossistema.
Por que isso existe?
O Odoo possui um sistema nativo de provedores de pagamento, mas ele é voltado para e-commerce. Empresas que usam o Odoo como ERP e querem cobrar clientes via PIX ou link de pagamento de forma programática não tinham nenhuma solução pronta com a AbacatePay.
A AbacatePay é uma das plataformas de pagamento mais simples e bem documentadas para desenvolvedores no Brasil — API REST limpa, sandbox com simulação de pagamentos e suporte a PIX, assinaturas e webhooks. Fazia sentido conectar as duas.
Módulos
abacatepay_base
Módulo base obrigatório. Armazena as credenciais da AbacatePay (API Key e modo sandbox) diretamente na empresa do Odoo, com suporte nativo a multi-empresa.
abacatepay_client
Sincronização de clientes entre o Odoo e a AbacatePay. Todo res.partner pode virar um Customer na AbacatePay, com rastreamento de status de sincronização, exportação em lote e gerenciamento via menu dedicado no app de Contacts.
Requisitos
- Odoo 16.0 Community ou Enterprise
- Python 3.10+
- Biblioteca
requests(já inclusa no Odoo) - Conta ativa na AbacatePay
Configuração
- Acesse Settings → Companies → [sua empresa]
- Vá até a aba AbacatePay
- Informe sua API Key (obtida em
app.abacatepay.com) - Ative o Modo Sandbox se quiser testar sem cobranças reais
Uso — Módulo abacatepay_client
Exportar contatos para a AbacatePay
Acesse Contacts → AbacatePay → Export Contacts e escolha:
- Export All — exporta todos os contatos do Odoo que possuem e-mail
- Select contacts — escolha contatos específicos
- Skip Already Synced — não re-sincroniza contatos já enviados
Gerenciar clientes sincronizados
Acesse Contacts → AbacatePay → Customers para ver todos os contatos com status de sincronização:
| Status | Descrição |
|---|---|
Not Synced | Ainda não enviado para a AbacatePay |
Synced | Sincronizado com sucesso |
Error | Falha na última sincronização |
Sincronizar um contato individualmente
Abra qualquer contato em Contacts, vá até a aba AbacatePay e clique em Sync to AbacatePay.
Roadmap
-
abacatepay_base— credenciais por empresa -
abacatepay_client— sincronização de clientes -
abacatepay_product— sincronização de produtos -
abacatepay_payment— geração de Checkouts e PIX a partir de faturas -
abacatepay_webhook— recepção de eventos para atualização automática de pagamentos
Quer ver isso funcionando na prática?
Estou pensando em gravar um vídeo mostrando o fluxo completo: desde a configuração da API Key no Odoo, exportação de clientes, sincronização de produtos, geração de cobrança via PIX e confirmação automática do pagamento via webhook — tudo integrado dentro do ERP.
Se você toparia assistir, deixa uma star no repositório ou abre uma issue com o que gostaria de ver no vídeo. Isso me ajuda a entender se vale a pena produzir o conteúdo.
Autor
Cristiano Mafra Junior — @CristianoMafraJunior