Si los clientes no pueden completar su compra, el checkout de su tienda WooCommerce ha dejado de cumplir su función, aunque el resto de la tienda parezca totalmente normal.
El problema puede manifestarse de distintas formas:
- el botón "Place order" (Realizar el pedido) no hace nada
- la página se queda cargando después de que el cliente hace clic
- aparece un mensaje de error, a veces poco claro
- el cliente paga, pero no aparece ningún pedido en WooCommerce
- la página de checkout está en blanco o solo se carga en parte
- faltan opciones de envío o métodos de pago
Un checkout roto afecta directamente a las ventas, y a menudo en silencio: los clientes rara vez escriben para avisarle, simplemente se van.
La buena noticia es que un problema en el checkout rara vez significa que haya perdido sus productos, sus clientes o sus pedidos anteriores. En la mayoría de los casos, algo en la cadena entre el carrito y el pago ha dejado de funcionar, y puede localizarse con un enfoque tranquilo y paso a paso.
Esta guía explica los síntomas y las causas más habituales, qué comprobaciones son seguras, cómo probar correctamente el checkout y cuándo es mejor pedir soporte técnico.
¿Qué aspecto tiene un "checkout que no funciona"?
Antes de probar nada, anote exactamente lo que ocurre. El síntoma es una de las pistas más útiles.
El botón "Place order" no hace nada
El cliente hace clic y no ocurre nada: ni error, ni carga, ni redirección. Esto suele apuntar a un error de JavaScript en la página, que impide que se ejecute el script del checkout.
La página se queda cargando
El checkout muestra una animación de carga que nunca termina. Puede que la solicitud esté fallando en el servidor, que se agote el tiempo de espera o que reciba una respuesta inesperada, por ejemplo porque interfiere una caché o una regla de seguridad.
Aparece un mensaje de error
Los mensajes pueden ser concretos, como una tarjeta rechazada, o genéricos, como "There was an error processing your order" (Se ha producido un error al procesar su pedido). Un mensaje genérico suele significar que el error real está registrado en un log, no en la pantalla.
El cliente paga pero no se crea ningún pedido
Es uno de los casos más graves. El dinero puede llegar a su proveedor de pagos, pero WooCommerce nunca recibe la confirmación. Suele estar relacionado con la pasarela de pago o con la forma en que se comunica de vuelta con su sitio web.
La página de checkout está en blanco o rota
La página puede estar vacía, mostrar un error crítico o cargarse sin la sección de pago. Puede deberse a un conflicto de plugins o del tema, a un error de PHP o a un problema en la propia página de checkout.
Faltan opciones de envío o de pago
Sin un método de envío o de pago no se puede realizar el pedido. Esto suele deberse a la configuración más que al código.
¿Qué puede haber causado el problema?
Entre las causas más habituales están las siguientes.
Un conflicto de plugins o del tema tras una actualización
El checkout depende de que WooCommerce, el tema, el plugin de pago y a menudo otros plugins funcionen juntos. Una actualización de cualquiera de ellos puede introducir un conflicto.
La actualización no tiene por qué estar relacionada con los pagos: los plugins de marketing, traducciones o campos personalizados también añaden código al checkout. Un cambio de versión de PHP o una nueva regla de seguridad del servidor pueden tener un efecto parecido.
La pasarela de pago
Puede que el plugin de la pasarela se haya actualizado, que sus credenciales hayan cambiado o caducado, o que se haya quedado activado el modo de prueba. Si el checkout falla solo con un método de pago, la pasarela es la primera sospechosa. Nuestra guía sobre problemas con la pasarela de pago trata este tema en detalle.
La página del carrito o del checkout se está almacenando en caché
La caché hace más rápido un sitio web guardando copias de las páginas. Sin embargo, las páginas del carrito, del checkout y de la cuenta son distintas para cada cliente y no deben almacenarse en caché.
Si un plugin de caché, la caché del hosting o una CDN guarda una copia del checkout, los clientes pueden ver el carrito de otra persona, una página desactualizada o un checkout que no se puede enviar.
Errores de JavaScript
El checkout de WooCommerce depende mucho de JavaScript. Un error de script procedente de otro plugin, del tema o de una herramienta de optimización que combina o retrasa scripts puede impedir que el checkout funcione aunque la página parezca normal.
Reglas de envío o de impuestos
Si ningún método de envío coincide con la dirección del cliente, o se ha modificado una zona de envío o un ajuste de impuestos, el checkout puede negarse a continuar. Es habitual después de editar las zonas de envío o de añadir nuevos países.
Compatibilidad entre el checkout por bloques y el checkout clásico
WooCommerce ofrece dos formas de construir la página de checkout:
- el bloque Checkout, que se usa por defecto en muchas tiendas más recientes
- el checkout clásico, basado en el shortcode
[woocommerce_checkout]
Algunas pasarelas de pago, extensiones y personalizaciones solo funcionan con una de las dos. Si la página de checkout se ha modificado, reconstruido o creado recientemente con una versión más nueva de WooCommerce, un plugin que antes funcionaba puede dejar de aparecer o de comportarse correctamente.
Primero, intente entender qué ha cambiado
Piense en lo que ocurrió justo antes de que el checkout dejara de funcionar.
Por ejemplo:
- ¿Se actualizó o instaló WooCommerce, WordPress, el tema o algún plugin?
- ¿Cambió alguien los ajustes de pago, envío o impuestos?
- ¿Se instaló o reconfiguró un plugin de caché o de optimización?
- ¿Se editó o reconstruyó la página de checkout?
- ¿Hizo algún cambio el proveedor de hosting o un desarrollador?
Intente identificar también cuándo se realizó el último pedido correcto. Abra WooCommerce > Orders (WooCommerce > Pedidos) y fíjese en la fecha del pedido completado o en procesamiento más reciente. Si los pedidos se interrumpieron un día concreto, compare esa fecha con las actualizaciones o cambios.
¿Cómo se puede probar el checkout con seguridad?
Probar es la única forma fiable de saber si el checkout funciona y si una corrección ha resuelto realmente el problema.
Pruebe en una ventana privada
Abra la tienda en una ventana privada o de incógnito, sin haber iniciado sesión. Los administradores a veces ven una versión distinta de la página, y los usuarios conectados pueden saltarse la caché.
Añada un producto al carrito y complete el checkout como lo haría un cliente normal.
Utilice un modo de prueba cuando esté disponible
Muchas pasarelas de pago ofrecen un modo de prueba o sandbox, que permite hacer pedidos con datos de pago de prueba en lugar de tarjetas reales. Los pasos exactos dependen del proveedor y del plugin, así que consulte su documentación.
Tenga cuidado: mientras el modo de prueba esté activo, puede que los clientes reales no puedan pagar. Actívelo solo si puede hacerlo durante poco tiempo, o en una copia de staging de la tienda.
Haga un pedido real de poco importe
Un pedido real es la prueba más precisa, porque utiliza el método de pago real exactamente como lo haría un cliente. Si es posible, utilice un producto de poco importe o un producto de prueba temporal con un precio bajo, y reembolse o cancele el pedido después.
Compruebe que:
- el pago llega a su proveedor de pagos
- el pedido aparece en WooCommerce con el estado esperado
- llega el correo de confirmación
- el stock se actualiza correctamente
Pruebe distintos métodos de pago y de envío
Si un método de pago falla y otro funciona, el problema probablemente está en esa pasarela concreta. Si fallan todos los métodos, es más probable que la causa sea general: un conflicto, una caché, un error de JavaScript o un problema del servidor.
¿Qué puede probar con seguridad?
Revise WooCommerce > Status
Vaya a WooCommerce > Status (WooCommerce > Estado). La página de estado del sistema resume la configuración de WooCommerce y destaca algunos problemas, como plantillas del tema que sobrescriben versiones antiguas, páginas que faltan o límites del servidor.
La pestaña Logs (Registros) puede contener errores registrados por WooCommerce y por los plugins de pago. Busque entradas de la hora en que falló el checkout.
Vacíe la caché
Si utiliza un plugin de caché, una caché del hosting o una CDN, vacíe la caché y vuelva a probar. Después, compruebe que las páginas del carrito, del checkout y de mi cuenta están excluidas de la caché. Muchas herramientas de caché lo hacen automáticamente para WooCommerce, pero algunas reglas personalizadas o ajustes de optimización pueden anularlo.
Contacte con su proveedor de pagos
Si a los clientes se les cobra pero no se crean los pedidos, o los pagos se rechazan de forma inesperada, revise el panel de su proveedor de pagos y contacte con su soporte. Pueden ver si los pagos llegan y si sus notificaciones a su sitio web se completan correctamente.
Desactive un plugin sospechoso
Hágalo solo si tiene un motivo sólido para sospechar de un plugin concreto, por ejemplo uno que se actualizó justo antes de que apareciera el problema, y solo si tiene un backup reciente.
Desactivar un plugin en una tienda en producción puede afectar a otras funciones, como el cálculo de los envíos, los descuentos o las facturas. Después de cualquier cambio, haga otro pedido de prueba.
¿Qué debe evitar?
Cuando las ventas se ven afectadas, es tentador probarlo todo a la vez. Esto suele hacer más difícil encontrar la causa.
Evite:
- actualizar todos los plugins a la vez con la esperanza de que se arregle el problema
- desactivar muchos plugins a la vez en la tienda en producción
- restaurar un backup antiguo sin comprobar qué pedidos se perderían
- cambiar entre el checkout por bloques y el clásico sin hacer pruebas
- desactivar de forma permanente funciones de seguridad para "ver si ayuda"
- dejar el modo de prueba activo en una tienda en producción
- editar directamente los archivos de WooCommerce o de los plugins
Restaurar un backup merece un cuidado especial en una tienda online. Un backup de ayer puede no contener los pedidos, clientes o cambios de stock de hoy. Restaurarlo puede eliminar datos reales.
Cambie una sola cosa cada vez y anote lo que ha hecho.
¿Cuándo conviene pedir soporte técnico?
Se recomienda pedir soporte técnico cuando:
- no han entrado pedidos durante un periodo inusualmente largo
- a los clientes se les cobra pero no se crean los pedidos
- el checkout falla con todos los métodos de pago
- el problema empezó después de una actualización y no consigue identificar cuál
- los logs muestran errores que no entiende
- el checkout utiliza código personalizado o está muy personalizado
- no dispone de un backup reciente y verificado
- el problema vuelve a aparecer después de una solución temporal
- no se siente cómodo desactivando plugins en una tienda en producción
No necesita conocer antes la causa: una descripción clara de lo que ven los clientes es un buen punto de partida.
¿Qué información conviene reunir?
Algunos datos útiles:
- la URL del sitio web
- una captura de pantalla o una grabación de pantalla del error
- la fecha y la hora del último pedido correcto
- qué métodos de pago y de envío están afectados
- las actualizaciones o cambios recientes
- si algún cliente ha comunicado que se le ha cobrado sin que se creara un pedido
- el nombre de su proveedor de pagos y de su proveedor de hosting
- el informe de estado del sistema de WooCommerce (ver más abajo)
- si hay disponible un backup reciente
No envíe contraseñas, API keys ni datos de pago completos por correo electrónico. D4Hub puede explicarle cómo compartir el acceso de forma segura.
Cómo puede ayudarle D4Hub
El objetivo no es solo conseguir que pase un pedido, sino entender por qué se rompió el checkout y asegurarse de que siga funcionando.
Según el problema, D4Hub puede ayudarle a:
- reproducir el problema e identificar dónde falla el checkout
- revisar los logs de WooCommerce, los logs del servidor y los errores del navegador
- localizar el plugin, el tema o la actualización que ha causado un conflicto
- revisar la configuración de la pasarela de pago y la conexión con su proveedor
- corregir las reglas de caché y optimización que afectan al carrito y al checkout
- revisar las zonas de envío, los métodos y los ajustes de impuestos
- comprobar la compatibilidad entre el checkout por bloques y el checkout clásico
- recuperar los pedidos que se pagaron pero no se registraron, cuando sea posible
- probar todo el flujo de compra después de la corrección
- recomendar staging, monitorización y mantenimiento para evitar problemas futuros
Puede pedir ayuda en cualquier fase del proceso.
Por ejemplo, D4Hub puede confirmar si una comprobación es segura en una tienda en producción, tomar el relevo después de un intento fallido, completar toda la reparación o revisar el checkout después de una solución temporal.
Abrir un ticket de soportePara usuarios con perfil técnico: comprobaciones técnicas de un checkout roto
Las comprobaciones siguientes son para usuarios que se manejan con el escritorio de WordPress, las herramientas para desarrolladores del navegador y WP-CLI.
La mayoría solo leen información. Antes de cambiar nada en una tienda en producción, asegúrese de tener un backup reciente que incluya la base de datos y, si puede, trabaje en una copia de staging. Cambie una sola cosa cada vez y pruebe con un pedido después de cada cambio.
Lea los logs de WooCommerce
Vaya a WooCommerce > Status > Logs (WooCommerce > Estado > Registros).
Según su versión de WooCommerce, verá una lista de archivos de log o de entradas que pueden filtrarse por origen. Busque:
- orígenes con el nombre de su pasarela de pago
fatal-errors, que registra los errores fatales de PHP capturados por WooCommerce- entradas cuya fecha y hora coincidan con un checkout fallido
Algunos plugins de pago solo registran detalles cuando se activa una opción de depuración. Desactívela cuando termine.
Los logs pueden contener datos de clientes, direcciones de correo electrónico o detalles técnicos. No los publique ni los pegue en foros públicos.
Revise la consola del navegador en busca de errores de JavaScript
Abra la página de checkout y, después, las herramientas para desarrolladores del navegador:
- en Chrome, Edge o Firefox, haga clic con el botón derecho en la página, elija Inspect (Inspeccionar) y abra la pestaña Console (Consola)
- en Safari, active primero las herramientas para desarrolladores en los ajustes avanzados
Recargue la página e intente realizar un pedido. Conviene anotar los errores que aparecen en rojo, sobre todo si mencionan una carpeta de un plugin o del tema en la ruta del archivo.
La pestaña Network (Red) también puede ayudar: al hacer clic en "Place order", se envía una solicitud al servidor. Si devuelve un estado de error, como 403 o 500, el problema está en el servidor y no en el navegador.
Excluya de la caché el carrito, el checkout y mi cuenta
Asegúrese de que las páginas siguientes no se almacenen nunca en caché, ni por su plugin de caché, ni por la caché del hosting, ni por su CDN:
- la página del carrito
- la página de checkout
- la página de mi cuenta
Sus direcciones se configuran en WooCommerce > Settings > Advanced (WooCommerce > Ajustes > Avanzado), en la configuración de páginas. Si tiene una tienda multilingüe, compruebe también las versiones traducidas de estas páginas.
Muchas herramientas de caché también omiten la caché para los visitantes que tienen cookies de WooCommerce, como woocommerce_items_in_cart o wp_woocommerce_session_. Si utiliza reglas de caché personalizadas, compruebe que respetan estas cookies.
Si utiliza funciones de optimización de scripts, como combinar, minificar o retrasar JavaScript, pruebe a excluir de ellas la página de checkout y vuelva a probar.
Liste los plugins activos
Con WP-CLI puede ver qué plugins están activos y sus versiones:
wp plugin list --status=activePara comprobar qué plugins tienen actualizaciones disponibles:
wp plugin list --update=availableCompare la lista con las actualizaciones recientes. Un plugin actualizado justo antes de que empezara el problema es un buen candidato para probarlo en staging.
Para probar un único plugin, desactívelo, haga un pedido de prueba y vuelva a activarlo:
wp plugin deactivate plugin-slug
wp plugin activate plugin-slugSustituya plugin-slug por el nombre de la carpeta que aparece en la lista. Hágalo en staging siempre que sea posible.
Compruebe qué checkout utiliza la página
Abra la página de checkout en el editor. Si contiene el bloque Checkout, la tienda utiliza el checkout por bloques. Si contiene el shortcode [woocommerce_checkout], o un bloque de shortcode clásico, utiliza el checkout clásico.
Al seleccionar el bloque Checkout, el editor puede avisarle de extensiones que no son compatibles con él. Si un plugin clave no es compatible, pregunte a su desarrollador si existe una versión compatible antes de cambiar el tipo de checkout. Pruebe siempre todo el flujo de compra después del cambio.
Genere el informe de estado del sistema
Vaya a WooCommerce > Status (WooCommerce > Estado) y utilice el botón Get system report (Obtener informe del sistema). Genera un informe de texto con sus versiones de WordPress y WooCommerce, los plugins activos, el tema, las plantillas sobrescritas y la configuración del servidor.
Revíselo antes de compartirlo y compártalo solo a través de un canal de soporte privado.
D4Hub puede ayudarle a interpretar los logs y el informe y a decidir el siguiente paso seguro.
Preguntas frecuentes
¿He perdido mis pedidos o mis clientes?
Normalmente no. Un problema en el checkout impide que se realicen o registren nuevos pedidos, pero los pedidos existentes y las cuentas de los clientes suelen permanecer en la base de datos.
Si se ha cobrado a clientes sin que se creara un pedido, los datos del pago suelen estar visibles en el panel de su proveedor de pagos, lo que puede ayudar a reconstruir los pedidos que faltan.
El checkout me funciona a mí pero no a mis clientes. ¿Por qué?
Como administrador, puede que tenga la sesión iniciada, se salte la caché o utilice otro navegador. Los clientes pueden estar en otro país, utilizar otro método de pago o ver una versión de la página almacenada en caché.
Pruebe siempre en una ventana privada, sin haber iniciado sesión, y pruebe más de una opción de pago y de envío.
¿Debo pasar del checkout por bloques al checkout clásico?
Puede resolver problemas de compatibilidad con algunos plugins, pero no es una solución universal. También puede romper funciones que dependen del checkout por bloques.
Haga el cambio solo después de comprobar qué extensiones se ven afectadas, y pruebe después todo el flujo de compra.
¿Cómo sé que el problema está realmente resuelto?
Haga al menos un pedido real o de prueba después de la corrección y compruebe que el pago, el estado del pedido, el correo de confirmación y el stock son correctos. Después, vigile los pedidos durante los días siguientes.
¿Puede ayudarme D4Hub si ya he intentado solucionarlo?
Sí. Explique qué cambios hizo y qué ocurrió después de cada uno. Esto ayuda a reconstruir lo sucedido y a encontrar el siguiente paso seguro.