Reparar WooCommerce cuando no deja comprar
Guía completa para reparar WooCommerce cuando no deja comprar: causas frecuentes, soluciones paso a paso, plugins, código y buenas prácticas.
Índice
- Diagnóstico inicial cuando WooCommerce no deja comprar
- Problemas comunes en el carrito y el checkout
- Conflictos con plugins y temas
- Errores de configuración en WooCommerce
- Métodos de pago y envío que bloquean la compra
- Problemas técnicos: caché, HTTPS y sesiones
- Solución con código, snippets y ajustes avanzados
- Buenas prácticas para prevenir fallos en la compra
- Checklist rápido antes de pedir soporte
- Preguntas frecuentes
Diagnóstico inicial cuando WooCommerce no deja comprar
Cuando WooCommerce no deja comprar, el problema suele manifestarse de varias formas: el botón de "Añadir al carrito" no funciona, el carrito se vacía solo, el botón de "Finalizar compra" no responde, aparece un mensaje de error genérico o el pedido no se crea. Antes de aplicar soluciones avanzadas, es fundamental realizar un diagnóstico ordenado para acotar el origen del fallo.
El objetivo de esta sección es ayudarte a identificar si el problema está relacionado con la configuración de WooCommerce, un conflicto con plugins o temas, un error de servidor, un ajuste de caché o un método de pago/envío mal configurado. Cuanto más preciso sea el diagnóstico, más rápida será la reparación y menor el riesgo de romper otras partes de la tienda.
- Define exactamente qué parte del proceso de compra falla (carrito, checkout, pago, confirmación).
- Anota los mensajes de error completos que aparezcan en pantalla.
- Comprueba si el problema ocurre en todos los productos o solo en algunos.
- Verifica si el fallo se reproduce en modo incógnito y en otro navegador.
- Pregunta a varios usuarios o clientes si experimentan el mismo problema.
Un buen diagnóstico comienza por reproducir el error de forma controlada. Crea un producto de prueba con precio simbólico, realiza todo el proceso de compra como si fueras un cliente real y documenta cada paso donde algo no funcione como debería. Esto te permitirá aislar mejor la causa del problema y comunicarla con claridad si necesitas soporte técnico adicional.
Problemas comunes en el carrito y el checkout
La mayoría de las veces, cuando WooCommerce no deja comprar, el origen está en el carrito o en la página de checkout. Estos son los puntos más sensibles del embudo de conversión y donde intervienen más scripts, estilos y validaciones. Identificar el tipo de fallo te orientará hacia la solución adecuada.
Síntomas típicos en el carrito
- El botón "Añadir al carrito" no hace nada o muestra un error en consola.
- El producto se añade, pero el carrito aparece vacío al recargar la página.
- El mini carrito del header no se actualiza o muestra cantidades incorrectas.
- Al actualizar cantidades, los cambios no se guardan o se pierden.
- Se muestran mensajes de error sobre stock, variaciones o campos obligatorios.
Síntomas típicos en el checkout
- El botón "Finalizar compra" no responde o se queda cargando indefinidamente.
- Los métodos de pago no aparecen o se muestran deshabilitados.
- Los gastos de envío no se calculan o aparecen como "no hay métodos de envío".
- Se muestran errores de validación en campos que el usuario sí ha rellenado.
- Tras pulsar "Realizar el pedido", no se crea el pedido en WooCommerce.
Para analizar estos problemas, abre las herramientas de desarrollador del navegador (F12) y revisa dos pestañas clave:
- Consola: busca errores de JavaScript que puedan estar bloqueando los botones o scripts de WooCommerce.
- Red/Network: comprueba si las peticiones AJAX del carrito y checkout devuelven errores 400/500 o respuestas inesperadas.
Esta información será muy útil para determinar si el problema está en el código del tema, en un plugin de terceros o en la configuración del servidor.
Conflictos con plugins y temas
Uno de los motivos más frecuentes por los que WooCommerce no deja comprar son los conflictos entre plugins o con el tema activo. Cada extensión añade código propio y, si no está bien desarrollada o actualizada, puede interferir con el funcionamiento del carrito y el checkout. Por eso, aislar y detectar conflictos es un paso clave en la reparación.
Cómo detectar conflictos con plugins
El método más eficaz es la desactivación selectiva de plugins, empezando por aquellos que afectan directamente al proceso de compra: pasarelas de pago, plugins de envío, optimización de rendimiento, seguridad, campos personalizados y constructores de páginas.
- Haz una copia de seguridad completa de archivos y base de datos antes de empezar.
- Accede a Plugins > Plugins instalados en el panel de WordPress.
- Desactiva todos los plugins excepto WooCommerce.
- Prueba el proceso de compra con un producto de prueba.
- Si funciona, reactiva los plugins uno a uno, probando la compra tras cada activación.
- Cuando el fallo reaparezca, habrás identificado el plugin conflictivo.
Conflictos con el tema de WordPress
El tema activo también puede causar problemas si sobreescribe plantillas de WooCommerce, añade scripts incompatibles o no está preparado para la versión actual del plugin. Para comprobarlo, es recomendable usar un tema por defecto de WordPress como referencia.
- Ve a Apariencia > Temas y activa un tema por defecto (por ejemplo, Twenty Twenty-Four).
- Vuelve a probar el proceso de compra completo.
- Si con el tema por defecto la compra funciona, el problema está en el tema original.
- Revisa las plantillas sobreescritas en
/woocommerce/dentro del tema. - Comprueba si hay actualizaciones del tema o contacta con el desarrollador.
Trabaja siempre en un entorno de pruebas o staging cuando sea posible. Realizar cambios drásticos en plugins y temas directamente en la tienda en producción puede provocar caídas temporales o afectar a usuarios que estén comprando en ese momento. Un flujo seguro consiste en clonar la web, reproducir el error en staging, solucionar el conflicto y después aplicar los cambios en producción de forma controlada.
Errores de configuración en WooCommerce
No todos los problemas de compra se deben a fallos técnicos. En muchos casos, WooCommerce no deja comprar porque hay una configuración incompleta o incoherente: páginas esenciales sin asignar, impuestos mal definidos, moneda incorrecta, productos sin precio o ajustes de inventario que bloquean el pedido. Revisar la configuración básica es un paso imprescindible.
Revisión de páginas esenciales
WooCommerce necesita que ciertas páginas estén creadas y correctamente asignadas para que el flujo de compra funcione: tienda, carrito, finalizar compra y mi cuenta. Si alguna falta o está mal configurada, el proceso puede romperse.
- Ve a WooCommerce > Ajustes > Avanzado.
- Comprueba que las páginas de Carrito, Finalizar compra y Mi cuenta están asignadas.
- Abre cada página y verifica que contienen el shortcode correspondiente, por ejemplo
[woocommerce_checkout]. - Si falta alguna página, usa el asistente de WooCommerce para recrearla o crea una nueva y añade el shortcode adecuado.
Ajustes de moneda, impuestos e inventario
Configuraciones incoherentes en moneda, impuestos o inventario pueden impedir que el sistema calcule correctamente el total del pedido o que considere los productos como no disponibles.
- En WooCommerce > Ajustes > General, revisa la moneda y la ubicación de la tienda.
- En Impuestos, comprueba que las reglas no generen totales negativos o incoherentes.
- En Productos > Inventario, revisa los ajustes de stock, reservas y umbrales.
- Abre varios productos y verifica que tienen precio, impuestos y stock configurados correctamente.
Un error típico es tener productos con precio vacío o igual a cero cuando la tienda no está preparada para vender productos gratuitos. Otro caso frecuente es marcar productos como "agotados" sin permitir reservas, lo que hace que WooCommerce bloquee su compra. Revisa estos detalles en los productos que tus clientes no pueden comprar y ajusta los valores según tu política de ventas.
Métodos de pago y envío que bloquean la compra
Otra causa habitual de que WooCommerce no deje comprar son los métodos de pago o de envío mal configurados. Si no hay ninguna forma válida de pagar o enviar el pedido según la dirección del cliente, WooCommerce mostrará mensajes como "No hay métodos de pago disponibles" o "No hay métodos de envío para tu dirección", impidiendo finalizar la compra.
Revisión de métodos de pago
Los plugins de pasarelas de pago (Stripe, PayPal, Redsys, TPV bancario, etc.) son sensibles a la configuración de credenciales, moneda, países permitidos y modo de pruebas. Un ajuste incorrecto puede hacer que el método no aparezca o falle al procesar el pago.
- Ve a WooCommerce > Ajustes > Pagos.
- Comprueba que al menos un método de pago está activado.
- Entra en la configuración de cada método y revisa credenciales, claves API y modo sandbox/producción.
- Verifica que la moneda de la tienda coincide con la admitida por la pasarela.
- Haz una prueba de compra con importe bajo para validar el flujo completo.
Revisión de métodos de envío
Si WooCommerce no encuentra un método de envío válido para la dirección del cliente, bloqueará el pedido. Esto suele deberse a zonas de envío incompletas, tarifas mal definidas o incompatibilidades con productos concretos.
- Accede a WooCommerce > Ajustes > Envío.
- Revisa las zonas de envío y asegúrate de que cubren los países y provincias donde vendes.
- Comprueba que cada zona tiene al menos un método de envío activo (tarifa plana, envío gratuito, etc.).
- Verifica las condiciones de envío gratuito (importe mínimo, cupones, etc.).
- Haz pruebas con direcciones de distintos países y códigos postales para confirmar que siempre aparece al menos una opción.
Un error muy común es configurar solo una zona de envío genérica y olvidar añadir métodos de envío dentro de esa zona. El resultado es que WooCommerce no encuentra ninguna tarifa aplicable y muestra un mensaje de bloqueo en el checkout. Dedica unos minutos a revisar todas las combinaciones de país, provincia y código postal que usen tus clientes habituales para asegurarte de que siempre existe un método válido.
Problemas técnicos: caché, HTTPS y sesiones
Incluso con la configuración correcta, WooCommerce puede dejar de permitir compras si hay problemas técnicos en el servidor o en la capa de optimización. Los más habituales están relacionados con la caché agresiva, la configuración de HTTPS, las sesiones de usuario y las reglas de seguridad que bloquean peticiones legítimas del checkout.
Caché y plugins de rendimiento
El carrito y el checkout no deben cachearse como páginas estáticas. Si un plugin de caché o el propio servidor almacenan versiones antiguas de estas páginas, el resultado puede ser un carrito que se vacía, totales incorrectos o imposibilidad de completar el pedido.
- Identifica si usas plugins como WP Rocket, W3 Total Cache, LiteSpeed Cache, etc.
- Excluye de la caché las URLs de carrito, checkout y mi cuenta.
- Excluye también las cookies de WooCommerce relacionadas con el carrito y la sesión.
- Vacía completamente la caché del plugin y del servidor (si tu hosting la ofrece).
- Vuelve a probar el proceso de compra en modo incógnito.
HTTPS, cookies y sesiones
WooCommerce utiliza cookies y sesiones para mantener el contenido del carrito y la información del usuario. Si hay problemas con el certificado SSL, redirecciones mal configuradas o restricciones de cookies, el sistema puede perder la sesión y vaciar el carrito o bloquear el checkout.
- Comprueba que el certificado SSL está correctamente instalado y vigente.
- Asegúrate de que todo el sitio carga por https:// sin contenido mixto.
- Revisa en Ajustes > Generales que las URLs de WordPress y del sitio usan HTTPS.
- Evita redirecciones en bucle entre HTTP y HTTPS, especialmente en el checkout.
- Verifica que tu plugin de seguridad no esté bloqueando cookies esenciales de WooCommerce.
Si sospechas de un problema de sesiones, prueba a iniciar el proceso de compra en una ventana de incógnito, sin extensiones del navegador y desde otra conexión a Internet. Si en ese entorno el carrito funciona correctamente, es probable que el problema esté en una combinación de caché, cookies o reglas de seguridad que afectan solo a ciertos usuarios. Ajustar las exclusiones de caché y revisar las reglas del firewall suele resolver estos casos.
Solución con código, snippets y ajustes avanzados
En ocasiones, reparar WooCommerce cuando no deja comprar requiere ir un paso más allá de la configuración estándar y aplicar pequeños fragmentos de código o ajustes avanzados. Estos cambios deben hacerse con cuidado, preferiblemente en un tema hijo o mediante un plugin de snippets, para evitar perderlos en futuras actualizaciones.
Activar el modo de depuración de WordPress y WooCommerce
El primer paso avanzado consiste en activar los registros de errores para obtener información detallada sobre qué está fallando en el proceso de compra.
- Edita el archivo
wp-config.phpy añade o ajusta estas líneas en entorno de pruebas:define( 'WP_DEBUG', true );define( 'WP_DEBUG_LOG', true );define( 'WP_DEBUG_DISPLAY', false );
- En WooCommerce > Estado > Registros, revisa los logs de errores recientes.
- Busca entradas relacionadas con el checkout, pasarelas de pago o errores de PHP.
Snippets útiles para el checkout
Algunos problemas se deben a validaciones excesivas o campos personalizados que bloquean el pedido. En estos casos, puedes usar snippets para desactivar validaciones concretas o simplificar el formulario de checkout.
- Eliminar campos no esenciales que generan errores en ciertos navegadores.
- Desactivar validaciones personalizadas que ya no son necesarias.
- Forzar la recarga de métodos de envío o pago en determinadas condiciones.
Siempre que apliques código personalizado, documenta qué hace cada snippet, en qué archivo o plugin lo has añadido y qué problema resuelve. Esto te permitirá revertir cambios rápidamente si algo deja de funcionar tras una actualización. Además, evita modificar directamente los archivos de WooCommerce o del tema padre; utiliza un tema hijo o un plugin específico para snippets para mantener tu tienda mantenible y segura.
Buenas prácticas para prevenir fallos en la compra
Más allá de reparar WooCommerce cuando no deja comprar, es importante establecer una serie de buenas prácticas que reduzcan al mínimo la probabilidad de que estos problemas se repitan. Una tienda online es un sistema vivo que evoluciona con nuevas versiones de WordPress, plugins, temas y pasarelas de pago; mantenerla estable requiere una estrategia de mantenimiento continua.
Plan de actualizaciones controladas
Muchas incidencias aparecen justo después de una actualización automática de WordPress, WooCommerce o algún plugin crítico. Para minimizar riesgos, es recomendable seguir un plan de actualizaciones controladas.
- Desactiva las actualizaciones automáticas en plugins críticos de pago y envío.
- Prueba primero las actualizaciones en un entorno de staging.
- Realiza copias de seguridad antes de cualquier actualización importante.
- Actualiza solo un bloque de plugins cada vez y prueba el checkout tras cada bloque.
- Documenta qué versiones funcionan bien juntas para poder volver atrás si es necesario.
Monitorización y pruebas periódicas
No basta con asumir que la tienda sigue funcionando porque nadie ha reportado problemas. Es recomendable realizar pruebas periódicas de compra y monitorizar métricas clave para detectar incidencias antes de que afecten a muchos clientes.
- Realiza al menos una compra de prueba completa cada mes.
- Monitoriza la tasa de conversión y los abandonos de carrito.
- Configura alertas en tu herramienta de analítica para caídas bruscas en ventas.
- Revisa regularmente los registros de errores de WooCommerce y del servidor.
- Solicita feedback a clientes recurrentes sobre su experiencia de compra.
Invertir tiempo en prevención es mucho más rentable que reaccionar a una tienda caída en pleno pico de ventas. Un protocolo sencillo de mantenimiento mensual, combinado con pruebas de compra automatizadas o manuales, puede ahorrarte pérdidas significativas y preservar la confianza de tus clientes en tu ecommerce.
Checklist rápido antes de pedir soporte
Antes de contactar con el soporte de tu hosting, del desarrollador de un plugin o de un profesional externo, es útil seguir un checklist rápido. Esto no solo puede ayudarte a resolver el problema por tu cuenta, sino que también proporcionará información valiosa al técnico que te atienda, acelerando la solución.
- ¿Has reproducido el error en modo incógnito y en otro navegador?
- ¿Has probado con todos los plugins desactivados excepto WooCommerce?
- ¿Has probado con un tema por defecto de WordPress?
- ¿Has revisado las páginas de carrito y checkout y sus shortcodes?
- ¿Hay al menos un método de pago y uno de envío activos y funcionales?
- ¿Has vaciado la caché del sitio, del navegador y del servidor?
- ¿Has revisado los registros de errores de WooCommerce y del servidor?
- ¿Puedes proporcionar capturas de pantalla y pasos exactos para reproducir el fallo?
Cuanta más información estructurada aportes al solicitar ayuda, más fácil será para cualquier profesional identificar el origen del problema. Incluye siempre detalles como la versión de WordPress, de WooCommerce, del tema y de los plugins clave, así como la URL exacta donde se produce el error y el momento aproximado en que empezó a ocurrir.
Preguntas frecuentes
A continuación se responden algunas de las dudas más habituales relacionadas con la reparación de WooCommerce cuando no deja comprar. Estas respuestas te ayudarán a actuar con rapidez y a evitar errores comunes durante el proceso de solución.
¿Por qué WooCommerce no deja añadir productos al carrito?
Las causas más frecuentes son conflictos de JavaScript con el tema o con plugins, problemas de caché que sirven versiones antiguas de la página, o errores en la configuración del producto (por ejemplo, variaciones sin precio o stock). Empieza revisando la consola del navegador en busca de errores, desactiva plugins de optimización y prueba con un tema por defecto para aislar el origen.
¿Qué hago si el botón de finalizar compra no funciona?
En primer lugar, prueba el checkout con todos los plugins desactivados excepto WooCommerce y con un tema por defecto. Si así funciona, reactiva elementos uno a uno hasta encontrar el conflicto. Revisa también si hay errores de JavaScript en la consola y si algún plugin de seguridad o caché está bloqueando las peticiones AJAX del checkout.
¿Puedo reparar WooCommerce sin cerrar la tienda?
Depende de la gravedad del problema. Si el fallo impide cualquier compra, es recomendable activar temporalmente un modo mantenimiento con un mensaje claro mientras trabajas en la solución. Si el problema solo afecta a ciertos métodos de pago o zonas de envío, puedes desactivarlos mientras tanto y seguir vendiendo con las opciones que sí funcionan, informando adecuadamente a tus clientes.
¿Cuándo debo contactar con mi proveedor de hosting?
Contacta con tu hosting cuando detectes errores 500 en el servidor, límites de recursos superados, problemas con el certificado SSL o bloqueos por parte del firewall. Facilita siempre los registros de errores y la hora aproximada en que se produjo el fallo para que puedan localizarlo más rápido.
¿Es mejor usar un plugin o código para solucionar el problema?
Si existe un plugin bien mantenido y específico para el problema que quieres resolver, suele ser la opción más rápida y segura. Sin embargo, para ajustes muy concretos del checkout o del carrito, un pequeño snippet bien documentado puede ser más ligero y controlable. En cualquier caso, evita acumular plugins innecesarios y prueba siempre los cambios en un entorno de staging antes de aplicarlos en producción.
¿Necesitas asesoramiento legal?
Nuestro equipo de expertos está listo para ayudarte