Escúchalo en:
En el episodio 524 de WordPress Semanal te explico por qué fallan los pagos en Stripe, cómo funciona el sistema de reintentos automáticos, qué opciones tienes para recuperar esos cobros y qué puedes hacer para que ocurra menos. Si vendes cursos, membresías o productos desde WordPress, mejor estar preparado.
Entender y recuperar pagos fallidos en Stripe
1. Por qué fallan los pagos en Stripe2. Dónde ver los pagos fallidos en tu panel de Stripe3. Smart Retries: los reintentos automáticos de StripeCoste de Smart Retries
4. Los emails automáticos de pago fallido5. Qué pasa si todos los reintentos fallan6. Lo que tú puedes hacer para reducir los pagos fallidosRecuerda que Stripe tiene comisionesPlugin de la semanaContenidos recomendados
1. Por qué fallan los pagos en Stripe
Los pagos no fallan por capricho. Cuando Stripe intenta cobrar a un cliente y el banco emisor rechaza la transacción, devuelve un código de rechazo. Los motivos más frecuentes son:
Fondos insuficientes (insufficient_funds): el cliente no tiene saldo. Es el más común.
Tarjeta caducada (expired_card): la tarjeta ha expirado y el cliente no ha actualizado sus datos.
Rechazo genérico (generic_decline): el banco rechaza sin dar un motivo claro. Puede ser temporal.
Autenticación fallida (authentication_required): el pago requería 3D Secure y el cliente no completó la verificación.
Tarjeta reportada como perdida o robada: aquí no hay reintento posible.
Límite de crédito superado: el cliente ha agotado su línea de crédito.
Estos motivos se dividen en dos categorías que conviene distinguir:
Rechazos blandos (soft declines): problemas temporales como fondos insuficientes o rechazo genérico. Se pueden reintentar con posibilidades de éxito.
Rechazos duros (hard declines): problemas permanentes como tarjeta caducada, perdida o cuenta cerrada. No tiene sentido reintentar sin que el cliente actualice sus datos de pago.
Fuente: Códigos de rechazo – Documentación de Stripe
2. Dónde ver los pagos fallidos en tu panel de Stripe
En el panel de Stripe, ve a Transactions → Payments y filtra por estado Failed. Cada pago fallido te muestra:
El motivo del rechazo (el código que devolvió el banco).
El consejo de Stripe sobre qué hacer a continuación.
Si se va a reintentar automáticamente o no.
Si vendes suscripciones, también puedes ver el estado de los reintentos desde Billing → Revenue recovery, donde Stripe muestra un resumen de la tasa de fallos, la tasa de recuperación y los pagos en proceso de reintento.
Fuente: Revenue recovery – Documentación de Stripe
3. Smart Retries: los reintentos automáticos de Stripe
Smart Retries es el sistema de Stripe que usa inteligencia artificial para elegir el mejor momento para reintentar un pago fallido. En lugar de reintentar a intervalos fijos, analiza cientos de señales (historial del cliente, hora del día, día de la semana, comportamiento de la tarjeta…) para maximizar las posibilidades de éxito.
Puedes configurarlos desde Billing → Revenue recovery → Retries:
Número de reintentos: hasta 8.
Periodo máximo: 1 semana, 2 semanas, 3 semanas, 1 mes o 2 meses.
Configuración recomendada por Stripe: 8 reintentos en 2 semanas.
Si el rechazo es duro (tarjeta caducada, perdida…), Stripe programa los reintentos pero solo los ejecuta si detecta que el cliente ha actualizado su método de pago.
También puedes desactivar Smart Retries y crear tu propio calendario de reintentos manual (hasta 3 reintentos con un número de días entre cada uno), pero Stripe recomienda dejar los Smart Retries activos porque recuperan más.
Coste de Smart Retries
Smart Retries están incluidos dentro de Stripe Billing, que cobra un 0.7% sobre el volumen de facturación (modelo pay-as-you-go, sin cuota mensual fija). Este 0.7% incluye los reintentos, los emails automáticos de pago fallido, la actualización automática de tarjetas y el portal del cliente.
Es importante saber que Stripe Billing se activa cuando usas suscripciones o facturas recurrentes a través de la API de Billing. Si vendes con WooCommerce + Stripe usando pagos puntuales (no suscripciones gestionadas desde Stripe Billing), los Smart Retries no aplican directamente. En ese caso, la gestión de reintentos la hace WooCommerce Subscriptions u otro plugin.
Fuente: Automate payment retries – Documentación de Stripe
4. Los emails automáticos de pago fallido
Stripe puede enviar automáticamente un email al cliente cuando un pago falla. Este email incluye un enlace a una página alojada en Stripe donde el cliente puede actualizar su tarjeta directamente.
Para activarlo: Settings → Billing → Subscriptions and emails → Manage failed payments y activa la opción «Send emails when card payments fail».
Además de los emails de pago fallido, puedes activar:
Aviso de tarjeta a punto de caducar: para que el cliente actualice sus datos antes de que falle.
Aviso de renovación próxima: para que el cliente sepa que se le va a cobrar.
Aviso de fin de periodo de prueba: si usas trials en tus suscripciones.
Recuerda que si WooCommerce (u otro plugin) también envía sus propios emails para estos eventos, el cliente los recibe duplicados. Decide quién envía qué y desactiva los que sobren (como ya expliqué en el episodio 520).
Para que estos emails generen confianza, tu branding tiene que estar configurado (logo, colores, información de contacto). Sin eso, parecen correos genéricos y el cliente desconfía.
Estos emails automáticos están incluidos en Stripe Billing (dentro del 0.7%) sin coste adicional.
Fuente: Automate customer emails – Documentación de Stripe
5. Qué pasa si todos los reintentos fallan
Si después de agotar todos los reintentos el pago sigue sin realizarse, Stripe ejecuta la acción que tú hayas configurado. Las opciones son:
Cancelar la suscripción: es la opción por defecto. El cliente pierde el acceso.
Pausar la suscripción: se detiene el cobro pero la suscripción no se elimina. Se puede reactivar cuando el cliente actualice su pago.
Marcar la factura como incobrable: la suscripción sigue activa pero la factura queda abierta. Útil en contextos B2B donde prefieres gestionar el cobro por otra vía.
Dejar la factura abierta sin hacer nada más: no se cancelan cobros futuros, pero el impago queda pendiente.
Elige la opción según tu modelo de negocio. Si vendes formación o membresías, cancelar suele ser lo más limpio. Si vendes a empresas, marcar como incobrable te da margen para negociar.
Esta configuración se encuentra en Settings → Billing → Subscriptions and emails → Manage failed payments.
Fuente: How subscriptions work – Documentación de Stripe
6. Lo que tú puedes hacer para reducir los pagos fallidos
Además de los reintentos y los emails, hay varias cosas que puedes hacer de forma proactiva:
Actualización automática de tarjetas: Stripe actualiza automáticamente los datos de tarjetas cuando el banco emite una nueva (por ejemplo, por renovación). No requiere acción por tu parte y viene activado por defecto.
Descriptor del extracto claro: un cobro que el cliente no reconoce puede acabar en disputa. Si tu descriptor dice algo reconocible, el cliente no llama al banco. Lo cubrimos en el episodio 520.
Ofrecer más de un método de pago: si la tarjeta falla, tener PayPal, domiciliación bancaria u otro método alternativo puede salvar la venta.
Activar 3D Secure adaptativo con Radar: Stripe Radar puede pedir automáticamente verificación 3D Secure solo en pagos de riesgo, lo que reduce fraude y disputas sin friccionar todos los pagos. Radar básico viene incluido con Stripe sin coste adicional (la versión avanzada, Radar for Fraud Teams, cuesta 0.02€ extra por transacción).
Recuerda que Stripe tiene comisiones
Comisión base de Stripe: varía según país y tipo de tarjeta. En Europa, suele ser 1.5% + 0.25€ para tarjetas europeas.
Stripe Billing (suscripciones, Smart Retries, emails automáticos, portal del cliente): 0.7% del volumen de facturación. Sin cuota mensual fija.
Radar básico (protección contra fraude con IA): incluido con la tarifa estándar de Stripe.
Radar for Fraud Teams (reglas personalizadas, listas de bloqueo): 0.02€ extra por transacción.
Disputas: 15$ por cada disputa recibida, ganes o pierdas.
Plugin de la semana
El plugin de la semana es System Dashboard. Muestra en un solo panel toda la información técnica de tu instalación de WordPress: versión de PHP, base de datos, tamaño de directorios, tablas creadas por cada plugin, hooks activos, roles y capacidades, y más. No carga nada en el frontend y es ideal para diagnosticar problemas o auditar una web sin tener que buscar cada dato por separado.
Contenidos recomendados
Vídeo de la Zona Código: Cargar Elementor solo en las páginas que lo usan en WordPress
Curso de Stripe
Episodio 520: Lo que tienes que configurar en Stripe antes de conectarlo con WordPress
Episodio 521: Recorrido práctico por el panel de Stripe
Episodio 491: Stripe vs PayPal en WordPress
Newsletter de WordPress Semanal
La entrada 524 | Pagos rechazados en Stripe: causas reales y cómo recuperarlos es una artículo de Gonzalo Navarro.