Skip to main content

Introducción

La integración de Slack publica eventos de Dodo Payments, como pagos exitosos, cambios de suscripción y disputas, en el canal de Slack que elijas. Tu equipo puede seguir los pagos y actuar sobre las disputas desde Slack, sin tener que consultar el dashboard.
El conector de Slack convierte cada evento de Dodo Payments en un mensaje de Slack mediante una transformación: código JavaScript que se ejecuta en el evento antes de la entrega. El conector incluye código de transformación, por lo que no necesitas programar para comenzar. Necesitas acceso a Developer → Webhooks en el dashboard de Dodo Payments y permiso para añadir aplicaciones a tu espacio de trabajo de Slack.

Comenzando

1

Open the Webhook Section

En el dashboard de Dodo Payments, ve a Developer → Webhooks y haz clic en Add endpoint.
Cuadro de diálogo Add endpoint con el menú desplegable Integration configurado como Custom webhook
2

Select Slack Integration

En Integration, selecciona Slack. El dashboard carga el código de transformación de Slack y muestra los pasos de configuración en el panel How to connect Slack.
Cuadro de diálogo Add endpoint con Slack seleccionado y los pasos de How to connect Slack
3

Create a Slack Webhook URL

En Slack, crea una aplicación con un webhook entrante para el canal que debe recibir las notificaciones:
  1. Abre api.slack.com/apps, haz clic en Create New App y selecciona From scratch.
  2. Asigna un nombre a la aplicación, por ejemplo Dodo Payments Notifications, elige tu espacio de trabajo y haz clic en Create App.
  3. En la barra lateral, abre Incoming Webhooks y activa Activate Incoming Webhooks.
  4. Haz clic en Add New Webhook to Workspace, elige el canal y haz clic en Allow.
  5. Copia la Webhook URL, que comienza con https://hooks.slack.com/services/.
Pantalla de permisos de Slack con un selector de canales y un botón Allow
4

Paste the Webhook URL

Pega la URL del webhook de Slack en Endpoint URL. Slack no necesita una API key.
5

Select Events

Subscribed events muestra los eventos compatibles con el conector de Slack. Si cambias la transformación, conserva solo los eventos que gestiona. Slack rechaza una solicitud que no sea un mensaje de Slack, por lo que un evento que la transformación deje sin cambios no se podrá entregar.
6

Customize Transformation Code

En Transformation code, edita el handler para elegir qué eventos publican un mensaje y qué aspecto tiene cada mensaje. Conserva el código del conector o empieza con los ejemplos.
Editor de código de transformación con el handler de Slack para eventos de pago
7

Test and Create

En Test this code, selecciona un tipo de evento y haz clic en Simulate. En Result se muestra el mensaje que recibiría Slack. Después, haz clic en Create endpoint.
Panel Test this code con payment.succeeded seleccionado, un botón Simulate y el botón Create endpoint
8

Integration Complete!

Dodo Payments ahora publica cada evento suscrito en tu canal de Slack. Para publicar un mensaje de prueba, abre la pestaña Testing del endpoint, selecciona un tipo de evento y haz clic en Send example.

Ejemplos de código de transformación

Cada handler reemplaza webhook.payload con un mensaje de Slack y conserva webhook.url, tu URL de webhook entrante. Los importes de Dodo Payments están en la unidad monetaria más pequeña, por lo que los ejemplos los dividen entre 100 y muestran el código de moneda. Para monedas sin decimales, como JPY y KRW, usa el importe tal cual.

Notificaciones básicas de pagos

Publica un mensaje de texto sin formato cuando un pago se completa correctamente, falla o está en proceso:
payment_notifs.js

Notificaciones detalladas de suscripciones

Publica un mensaje codificado por colores con campos adjuntos cuando una suscripción se activa, se cancela o se renueva:
subscription_notifs.js

Notificaciones de gestión de disputas

Publica un mensaje rojo cuando se abre una disputa o se pierde, y uno verde cuando se gana:
dispute_notifs.js

Handler completo para todos los eventos

Publica un mensaje con el mismo formato para cada tipo de evento. Los eventos sin su propio case reciben un mensaje genérico con el tipo de evento y la hora:
all_events_notifs.js

Prácticas recomendadas

Sigue estas prácticas para que las notificaciones de Slack sean útiles:
  • Usa archivos adjuntos en los mensajes con colores y campos, para que cada evento sea claro y permita actuar fácilmente.
  • Incluye datos clave, como el importe, el correo electrónico del cliente y los ID, para que tu equipo pueda encontrar rápidamente el registro.
  • Asocia el color con el tipo de evento: verde (good) para los eventos completados correctamente, rojo (danger) para disputas o fallos, amarillo (warning) para cancelaciones y azul (#3aa3e3) para eventos informativos.
  • Añade una marca de tiempo (ts), para que cada mensaje muestre cuándo ocurrió el evento.
Gestiona los datos confidenciales: No publiques en Slack valores confidenciales, como claves de licencia completas o datos personales. Trúncalos u ocúltalos parcialmente, como hace el campo de clave de licencia del ejemplo para todos los eventos.

Solución de problemas

  • Comprueba que la URL del webhook de Slack sea correcta y que su aplicación de Slack siga instalada.
  • Comprueba que el código de transformación sea JavaScript válido.
  • Comprueba que se estén produciendo los eventos suscritos. Para enviar uno, usa Send example en la pestaña Testing del endpoint.
  • Comprueba que tu aplicación de Slack tenga activados los Incoming Webhooks y pueda publicar en el canal.
  • Abre la pestaña Logs en Developer → Webhooks y comprueba la respuesta de la entrega fallida.
  • Comprueba que los campos del payload que lee tu código coincidan con el payload del evento para ese tipo de evento.
  • Prueba tu código con Simulate y un payload de ejemplo.
  • Comprueba que cada campo que lee tu código esté presente. Los campos opcionales, como error_message, pueden ser null.
  • Comprueba que el evento esté seleccionado en Subscribed events. Para cambiar la selección, abre el endpoint y haz clic en Edit.
  • Comprueba que el conector de Slack admita el evento. Subscribed events solo muestra los eventos compatibles con el conector.
  • Comprueba que tu transformación tenga un case para el evento. Los ejemplos dejan sin cambios los demás eventos, y Slack los rechaza.
Última modificación el 26 de septiembre de 2026