Configuración del webhook de Stripe
En este artículo, le explicaremos cómo configurar los webhooks de Stripe para que MEC complete las reservas de forma fiable, incluso cuando el cliente no vuelva a visitar su sitio web.
¿Por qué usar webhooks?
Por defecto, MEC confirma una reserva de Stripe cuando el cliente es redirigido a tu sitio web tras el pago. Si el cliente cierra la pestaña del navegador, pierde la conexión o se bloquea la redirección, el pago se realiza correctamente en Stripe, pero la reserva no se completa.
Con los webhooks, Stripe notifica directamente a tu sitio web sobre los pagos exitosos. MEC confirma la reserva automáticamente, independientemente de lo que haga el navegador del cliente. Esto reduce significativamente las solicitudes de soporte sobre boletos pagados pero no reservados.
Los webhooks funcionan tanto para las pasarelas Stripe como para Stripe Connect.
Nota: Los webhooks son opcionales, pero muy recomendables. Sin un webhook, MEC recurre al comportamiento de solo redireccionamiento.
Paso 1: Copie la URL de su webhook.
Ve a Configuración de MEC > Reservas > Pasarelas de pago > Stripe y localiza el campo Secreto de webhook . El texto de ayuda que aparece debajo del campo muestra la URL del webhook de tu sitio:
https://yourdomain.com/wp-json/mec/v1/stripe/webhook
Copia esta URL; la pegarás en tu panel de control de Stripe en el siguiente paso.
Paso 2: Agrega el punto final en Stripe.
- Inicie sesión en su Panel de control de Stripe.
- Navegue a Desarrolladores > Webhooks.
- Haga clic en Agregar punto final.
- Pega la URL del webhook que copiaste en el paso 1.
- En Seleccionar eventosSeleccione únicamente el siguiente evento:
- intención de pago exitosa
- Haga clic en Agregar punto final.
Paso 3: Copie la clave secreta de firma.
Después de que se crea el punto final, Stripe muestra su Firma secreta (comienza con whsec_) Hacer clic Revelar y copiarlo.
Paso 4 – Pegar el secreto en MEC
De vuelta en Configuración de MEC > Reservas > Pasarelas de pago > Stripe , pegue la clave secreta de firma en el campo Clave secreta del webhook y guarde la configuración.
Eso es todo. MEC ahora verifica cada mensaje de webhook usando esta clave secreta; las solicitudes que no provengan de tu cuenta de Stripe serán rechazadas.
Stripe Connect
Si utiliza la pasarela Stripe Connect , configure el webhook para su cuenta de plataforma de la misma manera:
- El patrón de URL del webhook es idéntico (
/wp-json/mec/v1/stripe/webhooken su sitio web). - Suscríbete a
payment_intent.succeeded. - Pegue la clave secreta de firma en el Secreto del webhook campo de la configuración de Stripe Connect.
Cuando se habilita el módulo de Pago del Organizador y los organizadores conectan sus propias cuentas de Stripe, la configuración por organizador incluye el mismo campo Secreto de Webhook para el punto final de su cuenta conectada.
Probando tu webhook
- Activar Modo de prueba/sandbox en la configuración de la pasarela Stripe (o utilice las claves de prueba de Stripe).
- Reserva un evento con Stripe. tarjeta de prueba (p.ej
4242 4242 4242 4242). - Cierra la pestaña del navegador inmediatamente después de pagar, antes de que se produzca la redirección.
- Después de unos segundos, compruebe MEC > Reservas: la reserva debe aparecer como confirmada, entregada por el webhook, no por la redirección.
También puedes inspeccionar las entregas en Desarrolladores > Webhooks > tu punto final en el panel de control de Stripe para ver cada evento que MEC recibió.
Localización de averías
“Firma de webhook de Stripe no válida”
La clave de firma no coincide. Revela la clave del punto final exacto que creaste y pégala de nuevo en MEC. Si recreaste el punto final, recuerda que el nuevo punto final tendrá una clave nueva.
“La clave secreta del webhook de Stripe no está configurada”.
El campo Secreto de Webhook en MEC está vacío. Complete el paso 4.
Los eventos aparecen en Stripe, pero las reservas no están confirmadas.
Asegúrese de que el punto final esté suscrito a payment_intent.succeeded (¿No estás registrado como checkout.session.completed o cualquier otro evento), y que la URL del webhook apunte al mismo sitio web que contiene la reserva.