Webhooks PagBrasil para Eventos no Klaviyo

- Published on
- Duração
- 3 semanas
- Função
- Integração de dados
- Ferramentas
- Klaviyo, PagBrasil, Google Cloud
- Tecnologias
- Python, Flask, Gunicorn, Git e GitHub



Visão Geral do Projeto
Em um cenário de e-commerce e assinaturas, conectar os dados financeiros de uma plataforma de pagamento com as ferramentas de automação de marketing é um diferencial competitivo. Este projeto nasceu da necessidade de integrar a PagBrasil, gateway de pagamentos focado no mercado brasileiro, com o Klaviyo, uma das principais plataformas de marketing automation para e-commerce.
O resultado é uma API serverless, desenvolvida em Python com Flask, que atua como um tradutor e orquestrador: ela recebe webhooks da PagBrasil, enriquece esses dados com informações detalhadas da assinatura e os envia como eventos estruturados para o Klaviyo, permitindo triggers de automação, segmentação avançada e análise de comportamento do cliente.
Objetivos e Resultados
- Automatizar a comunicação com o cliente baseada no ciclo de vida da assinatura (ativação, pagamento pendente, cancelamento).
- Unificar dados transacionais e de marketing em um único fluxo de dados em tempo real.
- Criar uma ponte serverless e escalável, que opera sob demanda e sem a necessidade de gerenciar infraestrutura.
- Permitir segmentação avançada no Klaviyo, utilizando propriedades como status da assinatura, produto adquirido e valor do pedido.
Funcionalidades Técnicas
| Funcionalidade | Descrição |
|---|---|
| Recepção de Webhooks | Endpoint POST /webhook/pagbrasil que escuta notificações da PagBrasil sobre mudanças no status de assinaturas. |
| Enriquecimento de Dados | Consulta à API da PagBrasil (subscription/get) para obter detalhes completos da assinatura, como produtos, histórico de recorrências e dados do cliente. |
| Mapeamento de Dados | Conversão de códigos internos da PagBrasil (status, método de pagamento, status do pedido) em textos descritivos para o Klaviyo. |
| Envio de Eventos ao Klaviyo | Criação e envio de um evento estruturado para a API do Klaviyo, contendo todas as propriedades relevantes da assinatura. |
| Endpoints de Suporte | Endpoints /health para monitoramento, /test para testes de integração e / para informações do serviço. |
Stack Tecnológico
| Camada | Tecnologia | Finalidade |
|---|---|---|
| Runtime | Python 3.11+ | Linguagem de programação principal. |
| Framework Web | Flask | Criação da API RESTful e gerenciamento de rotas. |
| Server HTTP | Gunicorn | Servidor WSGI para produção, gerenciando múltiplas requisições. |
| Requisições HTTP | Requests | Biblioteca para consumir a API da PagBrasil e enviar dados ao Klaviyo. |
| Plataforma de Deploy | Google Cloud Run | Hospedagem serverless, escalável e com baixa latência. |
| Controle de Versão | Git e GitHub | Versionamento do código e colaboração. |
Estrutura de Dados e Lógica de Negócio
Fluxo de Dados
- Webhook Recebido: A PagBrasil envia um payload JSON com o identificador da assinatura (
subscription). - Consulta à PagBrasil: A API utiliza o
PAGBRASIL_SECRETePAGBRASIL_PBTOKENpara autenticar e buscar os dados completos da assinatura. - Mapeamento de Dados: Códigos de status e métodos de pagamento são convertidos em nomes legíveis.
- Envio ao Klaviyo: Um novo evento é criado na plataforma, contendo as propriedades mapeadas.
- Resposta ao Webhook: A API retorna um status
200para a PagBrasil, confirmando o processamento.
Exemplo de Saída (Evento Klaviyo)
O evento enviado ao Klaviyo contém propriedades como billing_cycle, cancellation_date, product_sku, order_status e payment_method, permitindo uma segmentação rica e precisa.
Olá! Quer saber mais?
Deploy e Infraestrutura
O projeto foi projetado para ser deployado de forma simples e rápida no Google Cloud Run, uma plataforma serverless que gerencia automaticamente a infraestrutura.
Comando de Deploy Exemplo
gcloud run deploy pagbrasil-webhook \
--source . \
--platform managed \
--region us-central1 \
--allow-unauthenticated \
--set-env-vars "PAGBRASIL_SECRET=... ,PAGBRASIL_PBTOKEN=... ,KLAVIYO_API_KEY=..."
As variáveis de ambiente gerenciam todas as credenciais sensíveis, garantindo a segurança da aplicação.
Desafios e Aprendizados
- Debugging Remoto: Rastrear erros em um ambiente serverless exigiu o uso intensivo dos logs do Cloud Run, o que reforçou a importância de uma boa estratégia de logging.
- Mapeamento de Dados: A necessidade de mapear diversos códigos de status da PagBrasil em textos para o Klaviyo me fez aprofundar na documentação de ambas as APIs, garantindo uma integração sem fricção.
- Arquitetura Orientada a Eventos: Entender o fluxo de webhooks e eventos foi crucial para projetar uma aplicação que atua como um "tradutor" entre dois sistemas distintos.
Conclusão
A API PagBrasil → Klaviyo demonstra como a integração entre sistemas pode gerar valor real para o negócio. Ela transforma dados brutos em ações de marketing personalizadas, escaláveis e baseadas em dados. Este projeto não apenas resolve um problema específico, mas também serve como um exemplo de boas práticas para integrações serverless, consolidando meu conhecimento em Python, arquitetura de APIs e automação de marketing.
Fique ligado
Seja um Expert em Growth
Receba insights práticos sobre marketing, dados, performance e tecnologia direto no seu email.