Configurar un webhook de Stripe para recibir los eventos de clientes en tiempo real

Actualizado el 4 nov 20264 min de lectura
Español
En esta página

Sin un webhook, la pestaña Detalles de una conversación sigue leyendo en vivo los pagos y las suscripciones de Stripe cada vez que se abre la conversación, y los clientes de Stripe se importan como contactos una vez al día. Entre esas lecturas no se guarda nada en Deskwoot, y un cliente nuevo de Stripe solo se convierte en contacto con la siguiente importación diaria.

Un webhook cierra esa brecha. Stripe envía los eventos a Deskwoot en el momento en que ocurren en tu cuenta, y Deskwoot guarda al instante cada cobro, reembolso y cambio de suscripción. Esta guía te muestra cada clic con capturas de pantalla del panel real de Stripe.

Paso 1: Copia tu URL del webhook en Deskwoot

Abre Configuración → Integraciones → Stripe en Deskwoot. El recuadro Eventos de clientes en tiempo real muestra tu URL personal del webhook en Paso 1. URL del webhook. Se ve así: https://deskwoot.com/api/webhooks/stripe-customer/<your-integration-id>. Haz clic en Copiar, junto a la URL.

Paso 2: Abre la página de webhooks de Stripe

Inicia sesión en dashboard.stripe.com. En la esquina inferior izquierda haz clic en Desarrolladores (1.) y luego en Webhooks en el menú que se abre (2.).

Panel de Stripe con Desarrolladores abajo a la izquierda y la opción Webhooks resaltada en el menú de arriba

Paso 3: Crea un destino y selecciona los 8 eventos

En la página de webhooks, haz clic en el botón para crear un nuevo destino de eventos. Se abre el asistente Crea un destino de evento:

  1. Deja Ámbito del destino de eventos en Tu cuenta (1.).
  2. Deja Estilo de la carga útil en Resumen y la Versión de API que Stripe propone por defecto.
  3. En Eventos, cambia a la pestaña Todos los eventos (2.).
  4. En el campo de búsqueda (3.), busca y marca cada uno de estos 8 eventos:
    • charge.succeeded
    • charge.refunded
    • customer.created
    • customer.updated
    • customer.subscription.created
    • customer.subscription.updated
    • customer.subscription.deleted
    • invoice.paid
  5. Haz clic en Continuar (4.).
Asistente de Stripe Crea un destino de evento con flechas que señalan Tu cuenta, la pestaña Todos los eventos, el campo de búsqueda y el botón Continuar

Paso 4: Elige el tipo de destino

Elige Punto de conexión de webhook (casi siempre ya viene seleccionado) y haz clic en Continuar.

Asistente de Stripe con el tipo de destino Punto de conexión de webhook seleccionado y el botón Continuar resaltado

Paso 5: Configura el destino

Escribe Deskwoot en Nombre del destino, pega en el campo URL del punto de conexión la URL del webhook que copiaste en el paso 1 y haz clic en Crear destino. La descripción es opcional.

Formulario de Stripe Configurar el destino con flechas en Nombre del destino con el valor Deskwoot, en URL del punto de conexión ya completado y en el botón Crear destino

Paso 6: Muestra y copia el secreto de firma

Ahora Stripe muestra tu nuevo destino con la marca Activos. A la derecha, en Datos de destino, busca el recuadro Secreto de firma, haz clic en el ícono del ojo para verlo y copia el valor que empieza con whsec_.

Página del nuevo destino en Stripe con la marca Activos y el recuadro Secreto de firma (whsec_...) resaltado a la derecha

Paso 7: Pega el secreto en Deskwoot

De vuelta en Deskwoot, en Configuración → Integraciones → Stripe, pega el valor whsec_ en el campo de Paso 2. Secreto de firma del webhook y haz clic en Guardar. El estado del recuadro Eventos de clientes en tiempo real cambia de “Sin configurar” a “Configurado”.

Paso 8: Envía un evento de prueba

De vuelta en la página del destino en Stripe, haz clic en Enviar eventos de prueba arriba a la derecha y envía un evento charge.succeeded. En pocos segundos la pestaña Entregas de eventos lo muestra con una respuesta 200. ¡Listo!

A partir de ahora, Stripe envía a Deskwoot los cobros nuevos, los reembolsos, los cambios de suscripción y los clientes nuevos en el momento en que ocurren, y Deskwoot los guarda al instante en lugar de esperar la importación diaria de contactos.

Solución de problemas

El webhook de prueba devuelve un error 4xx. Abre Deskwoot en Configuración → Integraciones → Stripe y comprueba que el secreto de firma sea exactamente el que te mostró Stripe, sin espacios al inicio ni al final. El secreto tiene que coincidir para que la verificación de la firma funcione.

El endpoint muestra un error 412 Precondition Failed. Deskwoot tiene la integración, pero todavía no hay un secreto de firma guardado. Pega el valor whsec_ en el campo Secreto de firma del webhook y guarda.

Los eventos llegan, pero los clientes siguen sin aparecer en Deskwoot. Lo más probable es que los eventos que seleccionaste no incluyan charge.succeeded o customer.created. Abre el destino en Stripe, haz clic en Edita el destino y comprueba que esté seleccionada la lista completa de eventos de arriba.

Preguntas frecuentes

¿Necesito el webhook?
No, es opcional. Sin él, la pestaña Detalles de una conversación sigue leyendo en vivo los pagos y las suscripciones de Stripe cada vez que se abre la conversación, y los clientes de Stripe se importan como contactos una vez al día. Con el webhook, Deskwoot guarda cada cobro, reembolso y cambio de suscripción, y también los clientes nuevos, en el momento en que ocurren.
¿Qué eventos selecciono en Stripe?
Estos 8: charge.succeeded, charge.refunded, customer.created, customer.updated, customer.subscription.created, customer.subscription.updated, customer.subscription.deleted e invoice.paid.
¿Dónde encuentro el secreto de firma?
En la página de tu nuevo destino en Stripe, en el recuadro Secreto de firma de Datos de destino. Haz clic en el ícono del ojo para verlo, copia el valor que empieza con whsec_ y pégalo en Deskwoot en Paso 2. Secreto de firma del webhook. Luego haz clic en Guardar.
¿Qué significa un error 412 Precondition Failed?
Deskwoot tiene tu integración con Stripe, pero todavía no hay un secreto de firma guardado. Pega el valor whsec_ en Paso 2. Secreto de firma del webhook y guarda.

¿Te resultó útil esta guía?

Sigue leyendo

Preguntar a Fynn sobre esta guía

Recibe una respuesta corta basada en esta guía y el resto del centro de ayuda.

¿Aún necesitas ayuda?

Fynn responde en el chat con estas guías, y ahí también puedes hablar con el equipo.

Escríbenos por correo