Cómo conectar Stripe a Shopify Flow
Stripe es una plataforma de pagos. Envía un Webhook por cada pago, reembolso, reclamación, cambio en la suscripción y evento de facturación que se produzca en su cuenta. Workflow Webhooks convierte esa llamada en un activador de Shopify Flow, de modo que su tienda pueda reaccionar ante ella: etiquetar a un cliente, añadir una nota al pedido, enviar un correo electrónico interno, actualizar un metacampo... cualquier cosa que Shopify Flow pueda hacer.
Esta guía establece todo el proceso - Stripe envía, Workflow Webhooks recibe y verifica, Shopify Flow actúa - con la firma HMAC de Stripe comprobada en cada solicitud, de modo que solo Stripe pueda iniciar su flujo de trabajo.
Lo que puede construir
- Etiquete a un cliente de Shopify que haya pagado a través de una pantalla de pago de Stripe o de un enlace de pago, para que sus segmentos permanezcan sincronizados.
- Añada una nota al pedido e informe a su equipo en cuanto se abra una reclamación.
- Envíe un correo electrónico al personal cuando falle el pago de una suscripción, para que alguien pueda ponerse en contacto con el cliente antes de que este se dé de baja.
Eventos habituales que se suelen enviar: payment_intent.succeeded, charge.refunded, charge.dispute.created, customer.subscription.deleted, invoice.payment_failed.
Antes de empezar
- Workflow Webhooks instalado en su tienda de Shopify.
- Shopify Flow instalada, que se puede descargar de forma gratuita desde la App Store de Shopify.
- Una cuenta en Stripe con permiso para crear webhooks.
Paso 1: Cree el webhook en Workflow Webhooks
- Acceda a Workflow Webhooks -> Webhooks -> Crear webhook y asígnele un nombre que pueda reconocer en Shopify Flow, como, por ejemplo,
Stripe events. - En «Autenticación», seleccione HMAC.
- En «Proveedor de firma», seleccione Stripe. La aplicación rellena automáticamente los campos de encabezado, algoritmo, payload firmado y ventana de repetición; no es necesario configurar nada más.
- Deje el campo «Secreto» en blanco por ahora y haga clic en «Guardar». Copie la URL del webhook que aparece en la página.
Consulte Autenticación para conocer los demás modos de autenticación, y Asignación de la carga útil y variables de flujo para seleccionar qué campos se envían a Shopify Flow.

Paso 2: Añada el punto final en Stripe
En el panel de control de Stripe, abra «Desarrolladores» -> «Webhooks», añada un punto final con la URL que ha copiado y seleccione los eventos que desee enviar.
Cómo encontrar su secreto de firma de Stripe
Secreto de firma de webhooks (whsec_...) desde el panel de control de Stripe -> Desarrolladores -> Webhooks.
La propia documentación de Stripe sobre las firmas de webhooks, disponible en, incluye el texto exacto y las capturas de pantalla correspondientes a su cuenta.
Pegue esa clave secreta en el campo «Secret» del webhook en Workflow Webhooks y guarde los cambios. A partir de ese momento, cada entrega de Stripe se verificará antes de llegar a Shopify Flow.
Qué comprueba esto
| ¿Qué? | Valor |
|---|---|
| Encabezado de la firma | Stripe-Signature |
| Dónde se coloca la firma | En el valor v1 de ese encabezado, que contiene pares key=value separados por comas |
| ¿Qué es lo que se ha firmado? | {timestamp}.{body} |
| Firma | HMAC-SHA256, codificado en hexadecimal |
| Marca de tiempo | El valor t del encabezado de la firma, expresado en segundos de Unix |
| Protección contra la reproducción | Se rechazan las solicitudes cuya marca de tiempo firmada se encuentre a más de 5 minutos de la hora actual. |
| El secreto | Se utiliza como texto sin formato. Péguelo exactamente tal y como lo muestra el remitente. |
En la payload firmada, {body} es el cuerpo de la solicitud sin procesar, byte a byte, y {timestamp} es la marca de tiempo indicada anteriormente.
Cualquier solicitud que incumpla alguno de estos requisitos se rechaza con el código de error 401, se registra en Historial y resolución de problemas y nunca inicia un flujo de trabajo.
Paso 3: Crear el flujo de trabajo Shopify Flow
- En «Shopify Flow», cree un flujo de trabajo y seleccione el activador «Workflow Webhooks».
- Haga clic en «Grabar eventos» y, a continuación, envíe un evento de prueba desde Stripe (o utilice la opción «Enviar prueba» en Workflow Webhooks) para que Shopify Flow aprenda la estructura de sus datos.
- Cada webhook del que disponga activa el mismo activador de Shopify Flow, por lo que debe añadir una primera condición basada en el ID del webhook para que este flujo de trabajo se limite exclusivamente a Stripe. El ID aparece en la página del webhook.
- Añada sus acciones: etiquete a un cliente, añada una nota, envíe un correo electrónico interno, actualice un metacampo.



Paso 4: Realice una prueba de extremo a extremo
Un activador de eventos reales en Stripe. En Workflow Webhooks -> Historial debería ver la invocación con el estado «Éxito». Si la firma era incorrecta, aparecerá una entrada de error con el motivo correspondiente; además, en Verificación de webhooks firmados se explica cómo funciona el verificador de firmas, que le muestra exactamente en qué paso se produjo el error.

La firma no coincide▾
En este pedido: el secreto (la causa más habitual: un espacio de más o una clave del entorno equivocado), si el remitente está utilizando el secreto de otro punto final y si hay algún elemento entre Stripe y la aplicación que reescriba el cuerpo del mensaje. Las firmas abarcan los bytes sin procesar, por lo que un proxy que reformatee el JSON las invalida. El verificador de firmas de la página de webhooks muestra el texto exacto que se ha firmado.
Me aparece el error 401 en todas las solicitudes▾
Compruebe que la autenticación del webhook esté configurada como HMAC con el proveedor Stripe seleccionado, que se haya introducido el secreto y que Stripe envíe la solicitud a la URL tal y como aparece en la aplicación, incluido el código al final.
No aparece nada en el historial▾
La solicitud nunca se recibió. Vuelva a comprobar la URL en Stripe y consulte el registro de entregas de Stripe para ver la respuesta que se recibió. Un error 404 indica que el webhook es incorrecto o ha sido eliminado; un error 429 significa que ha superado el límite de invocaciones de su plan; consulte Planes y uso.
El flujo de trabajo se ejecuta para eventos incorrectos▾
Cada webhook de su tienda activa el mismo activador de Shopify Flow. Añada una condición basada en el ID del webhook como primer paso del flujo de trabajo, o limite los eventos que envía desde Stripe.
Las solicitudes fallan con el mensaje «marca de tiempo fuera de los límites de tolerancia»▾
Stripe firma una marca de tiempo y la aplicación rechaza cualquier evento que tenga más de 5 minutos de antigüedad. Normalmente, se trata de un problema de reloj por parte del remitente, o de un envío que Stripe ha vuelto a intentar mucho más tarde con la marca de tiempo original. Los reintentos de la misma solicitud original no pueden pasar; solicite a Stripe que envíe un evento nuevo.
Relacionado
- Verificación de webhooks firmados - todos los proveedores que verificamos, y cómo describir a aquellos que no verificamos.
- Asignación de la carga útil y variables de flujo - extraer los campos correctos del payload y introducirlos en Shopify Flow.
- Protección contra entregas duplicadas - ¿Qué ocurre cuando Stripe vuelve a intentar realizar un pago?
- Historial y resolución de problemas - el registro de todas las solicitudes, con la posibilidad de reproducirlas.

