Saltar al contenido
WooRescueHQ

WooCommerce / Checkout

Problemas con el checkout de WooCommerce

Para el cliente, todos los fallos del checkout se parecen (un spinner, un error, nada), pero las causas van desde un error de JavaScript hasta un error fatal de PHP o una respuesta de la pasarela de pago. La forma más rápida de llegar a la causa es averiguar qué capa falla primero.

Respuesta corta

Abre el panel de red del navegador y haz un pedido de prueba. Si no se envía ninguna petición del checkout, el problema es JavaScript. Si la petición (?wc-ajax=checkout, o la Store API en el bloque de Checkout) devuelve un error, lee los registros de PHP y de WooCommerce. Si el pedido se crea pero el pago falla, el problema está en el traspaso a la pasarela.

Problemas concretos

Fallos de checkout habituales

El checkout no funciona en absoluto

Ningún cliente puede completar un pedido.

/es/woocommerce/checkout/no-funciona/

El checkout no deja de cargar

La petición ha fallado, ha superado el tiempo o ha devuelto algo que la página no entiende.

Falla al pulsar Realizar pedido

Un error PHP, una validación fallida o un rechazo de la pasarela al crear el pedido.

Funciona con sesión, falla con invitados

Páginas de checkout en caché, nonces caducados, ajustes de cuentas y de invitados.

Se rompió tras actualizar un plugin

Un hook modificado, una dependencia de JavaScript o una plantilla eliminada.

/es/woocommerce/errores/conflicto-de-plugins/

Checkout lento

Tiempo perdido en PHP, la base de datos o llamadas a APIs externas.

/es/woocommerce/rendimiento/checkout-lento/

Primero, encuentra la capa que falla

Qué ves en el panel de red Qué significa Dónde mirar después
Ninguna petición al pulsar Realizar pedido El navegador no la envió Errores de consola, scripts bloqueados o diferidos
La petición devuelve 500 PHP falló en el servidor Registro fatal-errors, log de errores PHP
La petición devuelve 403 Algo la bloqueó Plugin de seguridad, reglas de WAF o CDN, restricciones de la REST API
200 con un mensaje de error WooCommerce rechazó el pedido Validación, campos, cupones, respuesta de la pasarela
200, pedido creado, el pago falla Traspaso a la pasarela Registro de la pasarela, eventos del proveedor

Checkout clásico y bloque de Checkout

El checkout clásico (shortcode [woocommerce_checkout]) envía el pedido a ?wc-ajax=checkout. El bloque de Checkout (el predeterminado en las tiendas nuevas) crea los pedidos mediante la Store API bajo /wp-json/wc/store/v1/. Fallan en sitios distintos: una regla que bloquea la REST API solo rompe el bloque, y una extensión pensada solo para el checkout clásico puede no hacer nada en el bloque sin avisar.

Qué no hacer

  • No desactives plugins uno a uno en la tienda en producción en horario comercial: puede romper otros flujos y perder pedidos en curso.
  • No cachees las páginas de checkout, carrito o cuenta, ni minifiques o difieras los scripts del checkout sin probar un pedido completo.
  • No edites archivos del núcleo de WooCommerce ni copies plantillas del núcleo para «arreglar» el checkout. El arreglo se perderá con la próxima actualización.

Preguntas frecuentes

¿Por qué el checkout de WooCommerce no deja de cargar?

Normalmente porque la petición del checkout falló o devolvió algo que la página no pudo leer: un error fatal de PHP, un aviso de PHP impreso en la respuesta, un timeout o una petición bloqueada por una regla de seguridad. La respuesta de la petición en el panel de red indica cuál.

¿Por qué el checkout funciona con sesión iniciada pero no para invitados?

A menudo porque la página de checkout o de carrito se sirve desde una caché de páginas a visitantes sin sesión, con un nonce de seguridad caducado. Las páginas de checkout, carrito y cuenta deben quedar fuera de la caché.

¿Puede una actualización de un plugin romper el checkout?

Sí. Una actualización puede cambiar un hook, la prioridad de un filtro o una dependencia de JavaScript en la que se apoya otra extensión, el tema o el código a medida.

$ describe el problema

¿Tienes un problema con WooCommerce?Solicita un diagnóstico.

Cuéntanos qué falla, qué ha cambiado últimamente y cómo afecta al negocio. Revisamos cada solicitud y te recomendamos el siguiente paso.

Solicitar un diagnóstico Ver servicios y precios

Nunca envíes contraseñas, claves API ni datos de tarjetas a través del formulario.

Diagnóstico desde299 €

Solicitar un diagnóstico