Introdução
A integração com o Slack publica eventos do Dodo Payments, como pagamentos bem-sucedidos, alterações de assinatura e contestações, em um canal do Slack que você escolher. Sua equipe pode acompanhar pagamentos e agir sobre contestações pelo Slack, sem precisar verificar o dashboard.O conector do Slack transforma cada evento do Dodo Payments em uma mensagem do Slack por meio de uma transformação: código JavaScript executado no evento antes da entrega. O conector já vem com código de transformação, portanto não é necessário programar para começar. Você precisa ter acesso a Developer → Webhooks no dashboard do Dodo Payments e permissão para adicionar apps ao seu workspace do Slack.
Começando
1
Open the Webhook Section
No dashboard do Dodo Payments, acesse Desenvolvedor → Webhooks e clique em Adicionar endpoint.

2
Select Slack Integration
Em Integração, selecione Slack. O dashboard carrega o código de transformação do Slack e exibe as etapas de configuração no painel Como conectar o Slack.

3
Create a Slack Webhook URL
No Slack, crie um app com um webhook de entrada para o canal que deve receber as notificações:
- Abra api.slack.com/apps, clique em Create New App e escolha From scratch.
- Dê um nome ao app, por exemplo
Dodo Payments Notifications, selecione seu workspace e clique em Create App. - Na barra lateral, abra Incoming Webhooks e ative Activate Incoming Webhooks.
- Clique em Add New Webhook to Workspace, escolha o canal e clique em Allow.
- Copie a Webhook URL, que começa com
https://hooks.slack.com/services/.

4
Paste the Webhook URL
Cole a URL do webhook do Slack em Endpoint URL. O Slack não precisa de uma chave de API.
5
Select Events
Subscribed events lista os eventos compatíveis com o conector do Slack. Se você alterar a transformação, mantenha apenas os eventos que ela trata. O Slack rejeita uma solicitação que não seja uma mensagem do Slack; portanto, um evento que a transformação deixa inalterado não é entregue.
6
Customize Transformation Code
Em Transformation code, edite o handler para escolher quais eventos publicam uma mensagem e como cada mensagem será exibida. Mantenha o código do conector ou comece pelos exemplos.

7
Test and Create
Em Testar este código, selecione um tipo de evento e clique em Simular. O Resultado mostra a mensagem que o Slack receberia. Em seguida, clique em Criar endpoint.

8
Integration Complete!
O Dodo Payments agora publica cada evento inscrito no seu canal do Slack. Para publicar uma mensagem de teste, abra a guia Testing do endpoint, selecione um tipo de evento e clique em Send example.
Exemplos de código de transformação
Cada handler substituiwebhook.payload por uma mensagem do Slack e mantém webhook.url, sua URL de webhook de entrada. Os valores do Dodo Payments estão na menor unidade da moeda, portanto os exemplos dividem por 100 e exibem o código da moeda. Para moedas sem casas decimais, como JPY e KRW, use o valor como está.
Notificações básicas de pagamento
Publique uma mensagem de texto simples quando um pagamento for bem-sucedido, falhar ou estiver sendo processado:payment_notifs.js
Notificações detalhadas de assinatura
Publique uma mensagem com código de cores e campos de anexo quando uma assinatura for ativada, cancelada ou renovada:subscription_notifs.js
Notificações de gerenciamento de contestações
Publique uma mensagem vermelha quando uma contestação for aberta ou perdida, e uma verde quando for ganha:dispute_notifs.js
Handler abrangente para todos os eventos
Publique uma mensagem no mesmo formato para cada tipo de evento. Os eventos sem seu própriocase recebem uma mensagem genérica com o tipo e o horário do evento:
all_events_notifs.js
Práticas recomendadas
Siga estas práticas para manter as notificações do Slack úteis:- Use anexos de mensagem com cores e campos para que cada evento seja claro e fácil de utilizar.
- Inclua dados importantes, como o valor, o e-mail do cliente e os IDs, para que sua equipe encontre o registro rapidamente.
- Combine a cor com o tipo de evento: verde (
good) para sucesso, vermelho (danger) para contestações ou falhas, amarelo (warning) para cancelamentos e azul (#3aa3e3) para eventos informativos. - Adicione um registro de data e hora (
ts) para que cada mensagem mostre quando o evento ocorreu.
Solução de problemas
Notifications Not Appearing in Slack
Notifications Not Appearing in Slack
- Verifique se a URL do webhook do Slack está correta e se o aplicativo do Slack ainda está instalado.
- Verifique se o código de transformação é um JavaScript válido.
- Verifique se os eventos inscritos estão ocorrendo. Para enviar um, use Enviar exemplo na aba Testes do endpoint.
- Verifique se o aplicativo do Slack tem Webhooks de entrada ativado e consegue publicar no canal.
Transformation Errors
Transformation Errors
- Abra a aba Registros em Desenvolvedor → Webhooks e verifique a resposta da entrega com falha.
- Verifique se os campos do payload lidos pelo seu código correspondem ao payload do evento desse tipo de evento.
- Teste seu código com Simular e um payload de exemplo.
- Verifique se cada campo lido pelo seu código está presente. Campos opcionais, como
error_message, podem sernull.
Missing Event Types
Missing Event Types
- Verifique se o evento está selecionado em Eventos inscritos. Para alterar a seleção, abra o endpoint e clique em Editar.
- Verifique se o conector do Slack é compatível com o evento. Eventos inscritos lista apenas os eventos compatíveis com o conector.
- Verifique se sua transformação tem um
casepara o evento. Os exemplos deixam os outros eventos inalterados, e o Slack os rejeita.