Saltar al contenido principal

Introducción

Conecta Dodo Payments a miles de aplicaciones y servicios a través de N8N. Automatiza flujos de trabajo activando flujos de trabajo de N8N cuando ocurren eventos de pago, desde enviar correos electrónicos hasta actualizar hojas de cálculo, crear tareas, realizar operaciones en bases de datos y mucho más.
Esta integración requiere una URL de webhook de N8N de la configuración de tu flujo de trabajo.

Comenzando

1

Abre la sección de Webhook

En tu panel de Dodo Payments, navega a Webhooks → + Agregar Endpoint y expande el menú desplegable de integraciones.
Agregar Endpoint y menú desplegable de integraciones
2

Selecciona N8N

Elige la tarjeta de integración N8N.
3

Crea un Webhook en N8N

En N8N, crea un nuevo flujo de trabajo y agrega un nodo de Webhook como el disparador. Configúralo como un webhook POST y copia la URL del webhook.
4

Pega la URL del Webhook

Pega la URL del webhook de N8N en la configuración del endpoint.
5

Configura la Transformación

Edita el código de transformación para formatear los datos para tu flujo de trabajo de N8N.
6

Prueba y Crea

Prueba con cargas útiles de ejemplo y haz clic en Crear para activar la integración.
7

Activa el Flujo de Trabajo

En N8N, activa tu flujo de trabajo para comenzar a recibir eventos de webhook.
8

¡Listo!

🎉 Los eventos de pago ahora activarán automáticamente tus flujos de trabajo de N8N.

Ejemplos de Código de Transformación

Carga Útil Básica del Webhook

basic_webhook.js
function handler(webhook) {
  if (webhook.eventType === "payment.succeeded") {
    const p = webhook.payload.data;
    webhook.payload = {
      event_type: webhook.eventType,
      payment_id: p.payment_id,
      amount: (p.total_amount / 100).toFixed(2),
      currency: p.currency || "USD",
      customer_email: p.customer.email,
      customer_name: p.customer.name,
      payment_method: p.payment_method || "unknown",
      timestamp: webhook.payload.timestamp
    };
  }
  return webhook;
}

Manejador de Eventos de Suscripción

subscription_webhook.js
function handler(webhook) {
  const s = webhook.payload.data;
  switch (webhook.eventType) {
    case "subscription.active":
      webhook.payload = {
        event_type: "subscription_started",
        subscription_id: s.subscription_id,
        customer_email: s.customer.email,
        customer_name: s.customer.name,
        product_id: s.product_id,
        amount: (s.recurring_pre_tax_amount / 100).toFixed(2),
        frequency: s.payment_frequency_interval,
        next_billing: s.next_billing_date,
        timestamp: webhook.payload.timestamp
      };
      break;
    case "subscription.cancelled":
      webhook.payload = {
        event_type: "subscription_cancelled",
        subscription_id: s.subscription_id,
        customer_email: s.customer.email,
        cancelled_at: s.cancelled_at,
        cancel_at_next_billing: s.cancel_at_next_billing_date,
        timestamp: webhook.payload.timestamp
      };
      break;
  }
  return webhook;
}

Manejador de Alertas de Disputa

dispute_webhook.js
function handler(webhook) {
  if (webhook.eventType.startsWith("dispute.")) {
    const d = webhook.payload.data;
    webhook.payload = {
      event_type: webhook.eventType,
      dispute_id: d.dispute_id,
      payment_id: d.payment_id,
      amount: (d.amount / 100).toFixed(2),
      status: d.dispute_status,
      stage: d.dispute_stage,
      remarks: d.remarks || "",
      urgent: webhook.eventType === "dispute.opened",
      timestamp: webhook.payload.timestamp
    };
  }
  return webhook;
}

Casos de Uso Populares de N8N

  • Envía correos electrónicos de Gmail/Outlook para confirmaciones de pago
  • Crea secuencias de correos electrónicos en Mailchimp/ConvertKit
  • Envía notificaciones de Slack/Discord a través de webhooks
  • Crea registros en Google Sheets automáticamente
  • Envía mensajes de Telegram/WhatsApp
  • Agrega contactos a HubSpot/Salesforce
  • Crea negocios en Pipedrive/Close
  • Actualiza registros de clientes en Airtable
  • Registra actividades en Monday.com
  • Sincroniza datos a bases de datos PostgreSQL/MySQL
  • Crea tareas en Asana/Trello
  • Agrega elementos de lista de tareas en Notion
  • Crea eventos de calendario en Google Calendar
  • Envía notificaciones SMS a través de Twilio
  • Crea problemas en GitHub para disputas
  • Transforma y enriquece datos de pago
  • Almacena eventos en bases de datos (PostgreSQL, MongoDB)
  • Agrega métricas y análisis
  • Genera informes y exportaciones
  • Activa flujos de trabajo complejos de múltiples pasos

Consejos

  • Mantén la estructura de la carga útil simple para facilitar el análisis de nodos en N8N
  • Usa nombres de campo consistentes en todos los eventos
  • Incluye marcas de tiempo para la sincronización y programación de flujos de trabajo
  • Prueba tu flujo de trabajo con datos de ejemplo antes de activarlo
  • Usa el nodo IF de N8N para lógica condicional y enrutamiento
  • Aprovecha el nodo Code de N8N para transformaciones de datos personalizadas
  • Usa el nodo Switch para enrutar diferentes tipos de eventos a diferentes caminos
  • Configura flujos de trabajo de error para manejar entregas de webhook fallidas

Solución de Problemas

  • Verifica que la URL del webhook sea correcta y accesible
  • Asegúrate de que el flujo de trabajo esté activado en N8N
  • Asegúrate de que el nodo de webhook esté configurado como método POST
  • Prueba la entrega del webhook en el historial de ejecución de N8N
  • Verifica que la configuración del firewall/red permita webhooks entrantes
  • Revisa la configuración de autenticación del webhook de N8N si está configurada
  • Verifica los nombres de los campos en las configuraciones de nodos de N8N
  • Asegúrate de que los tipos de datos coincidan con los formatos esperados en los nodos
  • Usa la función de prueba de N8N para inspeccionar los datos entrantes
  • Asegúrate de que el código de transformación devuelva JSON válido
  • Verifica la configuración del formato de respuesta del nodo de webhook
  • Usa el nodo Set para renombrar o reestructurar campos
  • Revisa los registros de ejecución en N8N para mensajes de error detallados
  • Verifica la configuración de conexión de nodos y credenciales
  • Asegúrate de que todos los campos requeridos estén presentes en la carga útil
  • Prueba nodos individuales con datos de ejemplo
  • Habilita flujos de trabajo de error para capturar y manejar fallos
  • Verifica los límites de tasa y cuotas de API para los servicios conectados