WooCommerce dejó de cobrar: guía de diagnóstico para dueños de tienda
Tu tienda en línea dejó de procesar pagos. Los clientes intentan comprar, pero el checkout falla. Cada hora que pasa son ventas perdidas y reputación dañada. Aquí te explicamos las 5 causas reales, cómo diagnosticarlas y qué hacer antes de que sea demasiado tarde.
En una línea: Cuando WooCommerce deja de cobrar, el 80% de las veces no es un problema de la pasarela de pagos. Es un webhook caído, una sesión PHP corrupta, un firewall bloqueando IPs, un límite de memoria insuficiente o un certificado SSL obsoleto. Este artículo te enseña a diagnosticar cuál es tu caso y cómo resolverlo.
1. Síntomas vs causas reales
Lo que ve el dueño de la tienda no siempre es lo que está pasando técnicamente. Estos son los síntomas más comunes y lo que realmente significan:
| Síntoma | Lo que parece | Lo que suele ser |
|---|---|---|
| "El checkout no procesa pagos" | Problema con Mercado Pago / Stripe / Openpay | Webhook caído, sesión PHP corrupta o WAF bloqueando |
| "Las tarjetas son rechazadas" | La pasarela no funciona | Certificado SSL/TLS obsoleto o IP del servidor cambió |
| "El pedido se crea pero no se cobra" | Error en el flujo de WooCommerce | Notificación de la pasarela no llega (webhook roto) |
| "El checkout se queda cargando infinitamente" | Problema de JavaScript o del tema | Límite de memoria PHP o timeout en la base de datos |
| "Error 500 al intentar pagar" | El servidor se cayó | Plugin incompatible, memoria insuficiente o conflicto de caché |
La primera regla del diagnóstico es: no asumas que el problema es la pasarela de pagos hasta haber descartado todo lo demás. El 80% de los casos que atendemos no son problemas de Mercado Pago, Stripe, Conekta u Openpay. Son problemas de WordPress, del servidor o de la configuración.
2. Las 5 causas más comunes
Causa #1: Webhook caído de la pasarela de pagos
Las pasarelas de pagos modernas (Stripe, Mercado Pago, Openpay, Conekta) funcionan con webhooks: cuando un pago se completa, la pasarela envía una notificación a tu sitio para que WooCommerce actualice el estado del pedido de "pendiente" a "procesando" o "completado".
Si el webhook no llega, el pedido se crea pero queda en "pendiente" para siempre. El cliente pagó, pero tu tienda no lo sabe.
Tienda WooCommerce sin cobrar desde las 3 AM
Síntoma: El cliente reportó que los pedidos se creaban pero quedaban en "pendiente" desde las 3 AM. Nadie se dio cuenta hasta las 9 AM.
Causa real: El proveedor de hosting cambió la IP del servidor durante la madrugada. El webhook de Stripe estaba configurado para aceptar solo la IP anterior. Stripe enviaba las notificaciones, pero el servidor las rechazaba.
Solución: Actualizar la IP permitida en la configuración de Stripe y verificar que los webhooks se procesaran correctamente.
Cómo verificarlo: Entra al panel de tu pasarela (Stripe Dashboard, Mercado Pago, etc.) y revisa el estado de los webhooks. Si ves errores de conexión o timeouts, ese es tu problema.
Causa #2: Sesiones PHP corruptas
WooCommerce usa sesiones de PHP para mantener el carrito de compras y el estado del checkout. Si la carpeta de sesiones se llena, los permisos cambian o el mecanismo de almacenamiento falla, los clientes no pueden completar el proceso de compra.
Este problema es especialmente común en servidores compartidos donde múltiples sitios comparten la misma carpeta de sesiones.
Cómo verificarlo: Revisa el log de errores de PHP. Si ves mensajes como Failed to write session data o session_start(): Failed to read session data, ese es tu problema.
Causa #3: WAF bloqueando IPs de pasarelas
Un WAF (Web Application Firewall) como Cloudflare, Wordfence o el firewall del hosting puede bloquear las IPs de las pasarelas de pagos si las configura como "sospechosas". Esto es especialmente común después de actualizaciones de seguridad o cambios en las reglas del WAF.
Checkout WooCommerce rechaza todas las tarjetas
Síntoma: Los clientes intentaban pagar, pero todas las tarjetas eran rechazadas. El mensaje era genérico: "Error al procesar el pago".
Causa real: La pasarela de pagos deprecó TLS 1.0 y exigía TLS 1.2 o superior. El certificado SSL del servidor era antiguo y solo soportaba TLS 1.0. La conexión se establecía, pero la pasarela rechazaba la transacción por seguridad.
Solución: Renovar el certificado SSL y configurar el servidor para soportar TLS 1.2 y 1.3.
Cómo verificarlo: Revisa los logs del WAF. Si ves bloqueos desde IPs que pertenecen a Stripe, Mercado Pago, Openpay o Conekta, necesitas agregar esas IPs a la lista blanca.
Causa #4: Límite de memoria PHP insuficiente
WooCommerce con catálogos grandes (más de 2,000 productos) requiere más memoria PHP de la que asignan muchos hostings compartidos. Cuando el límite se alcanza durante el checkout, el proceso falla con error 500 o timeout.
Error 500 intermitente en checkout
Síntoma: El checkout fallaba con error 500, pero solo a veces. No era reproducible de forma consistente.
Causa real: El catálogo tenía 8,000 SKUs. Cuando el checkout necesitaba calcular impuestos, envíos y stock para productos específicos, la consulta a la base de datos excedía el límite de memoria PHP (128 MB).
Solución: Aumentar el límite de memoria a 512 MB y optimizar las consultas de WooCommerce para catálogos grandes.
Cómo verificarlo: Revisa el log de errores de PHP. Si ves Allowed memory size of X bytes exhausted, ese es tu problema. También puedes verificar el límite actual en WooCommerce → Estado → Información del sistema.
Causa #5: Certificado SSL/TLS obsoleto
Las pasarelas de pagos exigen conexiones seguras con TLS 1.2 o superior. Si tu servidor usa un certificado antiguo o una configuración de TLS obsoleta, las transacciones serán rechazadas.
Este problema es especialmente común después de que las pasarelas actualizan sus requisitos de seguridad (como hizo Stripe con TLS 1.0 en 2026).
Cómo verificarlo: Usa herramientas como SSL Labs para verificar la configuración de tu certificado. Si obtienes una calificación B o inferior, necesitas actualizar.
Muchos dueños de tienda asumen que porque su sitio tiene HTTPS (el candadito verde), todo está bien. Pero HTTPS no garantiza que la configuración de TLS sea adecuada para procesar pagos. Puedes tener HTTPS y aun así ser rechazado por las pasarelas.
3. Protocolo de diagnóstico paso a paso
Este es el orden que seguimos para diagnosticar problemas de pagos en WooCommerce. No lo cambies: seguir el orden correcto te ahorra horas de pruebas innecesarias.
Revisa el estado de los pedidos
Ve a WooCommerce → Pedidos. ¿Los pedidos se crean pero quedan en "pendiente"? ¿O ni siquiera se crean? Esta distinción es crucial: si se crean pero no se cobran, el problema es el webhook. Si no se crean, el problema es anterior al pago.
Verifica los webhooks en la pasarela
Entra al panel de tu pasarela (Stripe Dashboard, Mercado Pago, Openpay, Conekta). Busca la sección de webhooks. ¿Están activos? ¿Hay errores de conexión? ¿Cuándo fue la última notificación exitosa? Si ves errores, ese es tu problema.
Revisa el log de errores de PHP
Accede al log de errores de tu servidor (o pídelo a tu hosting). Busca errores de las últimas 24 horas. ¿Ves mensajes sobre sesiones, memoria o conexiones fallidas? Estos errores te dirán exactamente qué está fallando.
Prueba en modo sandbox
Si tu pasarela lo permite, activa el modo de pruebas (sandbox) e intenta procesar un pago de prueba. Si el pago de prueba funciona pero los pagos reales no, el problema es la configuración de producción (webhooks, certificados, IPs).
Desactiva plugins de caché temporalmente
Los plugins de caché pueden interferir con el checkout. Desactívalos temporalmente e intenta procesar un pago. Si funciona, el problema es la caché: necesitas excluir las páginas de checkout, carrito y mi cuenta de la caché.
Verifica la configuración de TLS/SSL
Usa SSL Labs para verificar tu certificado. Si la calificación es B o inferior, o si TLS 1.0/1.1 están habilitados, necesitas actualizar la configuración.
Revisa los logs de la pasarela en WooCommerce
Ve a WooCommerce → Estado → Logs y selecciona el log de tu pasarela (stripe, mercadopago, etc.). ¿Hay errores de conexión? ¿Timeouts? ¿Respuestas vacías? Estos logs te dirán si WooCommerce está recibiendo respuestas de la pasarela.
4. Cuándo es urgente y cuándo puede esperar
No todos los problemas de pagos requieren atención inmediata. Esta tabla te ayuda a priorizar:
| Situación | Urgencia | Qué hacer |
|---|---|---|
| Todos los pagos fallan desde hace más de 2 horas | Crítica | Diagnóstico inmediato. Cada hora son ventas perdidas. |
| Los pedidos se crean pero quedan en "pendiente" | Alta | Verificar webhooks en las próximas 24 horas. Los clientes pagaron pero no lo sabes. |
| Algunos pagos fallan, otros funcionan | Media | Investigar en los próximos 3-5 días. Puede ser un problema intermitente. |
| El checkout es lento pero funciona | Baja | Optimizar en las próximas 2 semanas. Afecta conversión pero no bloquea ventas. |
Un sitio que cobra mal es peor que un sitio que no cobra. El cliente que intenta pagar y falla no regresa. Y si pagó pero el pedido quedó en "pendiente", tienes un problema de contabilidad, inventario y atención al cliente.
— Manuel Macedo, Mexico WordPress5. Checklist de prevención para Buen Fin
El Buen Fin 2026 es del 15 al 18 de noviembre. Si tu tienda va a participar, este es el checklist mínimo que debes completar antes del 1 de noviembre:
Verificar webhooks de todas las pasarelas
Entra al panel de cada pasarela (Mercado Pago, Stripe, Openpay, Conekta, PayPal) y verifica que los webhooks estén activos y sin errores. Prueba enviando una notificación de prueba.
Procesar un pago de prueba con cada pasarela
No asumas que porque funcionó la semana pasada, funcionará el Buen Fin. Procesa al menos un pago de prueba con cada pasarela activa y verifica que el pedido se complete correctamente.
Verificar límite de memoria PHP
Si tu catálogo tiene más de 2,000 productos, asegúrate de que el límite de memoria PHP sea de al menos 256 MB (512 MB recomendado). Verifica en WooCommerce → Estado → Información del sistema.
Revisar certificado SSL/TLS
Usa SSL Labs para verificar que tu certificado tenga calificación A o A+. Si es inferior, renuévalo antes del Buen Fin.
Excluir páginas críticas de la caché
Verifica que tu plugin de caché excluya las páginas de carrito, checkout, mi cuenta y cualquier página con formularios dinámicos.
Tener un plan de contingencia
Si el checkout falla durante el Buen Fin, ¿quién lo va a resolver? ¿En cuánto tiempo? Ten identificado a quién llamar y cuánto va a costar. No esperes a que pase para buscar solución.
Monitoreo de uptime activo
Durante el Buen Fin, necesitas monitoreo cada 5 minutos, no cada 30. Si tu hosting no lo ofrece, contrata un servicio externo o configura alertas con UptimeRobot o Pingdom.
Si completas este checklist antes del 1 de noviembre, reducirás el riesgo de problemas durante el Buen Fin en un 90%. El 10% restante son problemas impredecibles (caída del proveedor de hosting, problemas masivos de la pasarela, etc.) para los que necesitas un plan de contingencia.
¿Tu WooCommerce está listo para el Buen Fin?
Revisamos tu tienda por fuera, sin costo. En 30 minutos sabes si hay problemas de webhooks, caché, memoria o certificados. Si hay que entrar, el diagnóstico se descuenta al 100% si contratas la reparación.
6. Preguntas frecuentes
Las causas más comunes de un fallo repentino son: (1) el proveedor de hosting cambió la IP del servidor y los webhooks de la pasarela ya no llegan, (2) la pasarela actualizó sus requisitos de seguridad (como TLS) y tu servidor no cumple, (3) un plugin se actualizó automáticamente y rompió la integración, o (4) la carpeta de sesiones PHP se llenó o cambió de permisos. Revisa el log de errores de PHP y los webhooks de la pasarela para identificar cuál es tu caso.
No, no es normal. Si el pedido se crea pero queda en "pendiente", significa que el cliente inició el proceso de pago pero la pasarela no pudo notificar a WooCommerce que el pago se completó. Esto suele ser un problema de webhooks: la pasarela envía la notificación, pero tu servidor la rechaza (IP bloqueada, URL incorrecta, timeout). Revisa el panel de tu pasarela para ver si los webhooks están activos y sin errores. Si los pedidos llevan horas en "pendiente", es probable que los clientes ya pagaron y tú no lo sepas.
El diagnóstico es pagado y varía según la complejidad. Un problema de webhook mal configurado puede resolverse en 30 minutos. Un problema de memoria PHP con catálogo grande puede tomar 2-3 horas. Un problema de certificado SSL con reconfiguración del servidor puede tomar 4-6 horas. El diagnóstico se descuenta al 100% si contratas la reparación con nosotros. Solicita un diagnóstico aquí.
Sí, WooCommerce permite tener múltiples pasarelas activas (Mercado Pago, Stripe, Openpay, Conekta, PayPal, etc.). De hecho, es recomendable para ofrecer opciones a los clientes. Pero cada pasarela adicional es un punto de fallo potencial. Si una falla, las demás pueden seguir funcionando. Asegúrate de probar todas las pasarelas antes del Buen Fin y de tener identificado cuál es la crítica para tu operación.
El 90% de las veces, el hosting dice que es WooCommerce y WooCommerce dice que es el hosting. La verdad suele estar en el medio: puede ser un problema de configuración del servidor (memoria, sesiones, certificados) que afecta el funcionamiento de WooCommerce. La forma de saberlo es revisar el log de errores de PHP: si los errores mencionan límites de memoria, timeouts de base de datos o problemas de sesiones, es el servidor. Si los errores mencionan plugins específicos o funciones de WooCommerce, es la aplicación. Si no sabes leer los logs, necesitas un diagnóstico profesional.
