html, css, php, seo, mysql

PayPal no aparece en PrestaShop 9 con Hummingbird

6 Nov, 2026 | eCommerce

Banner Prestashop vs Paypal

Si estás montando o migrando tu tienda a PrestaShop 9 con el nuevo tema Hummingbird, es muy probable que hayas vivido este momento de frustración: configuras el módulo oficial de PayPal, todo parece correcto en el Back-Office, vas al carrito a probar una compra y… el botón de pago no carga.

Marcas la casilla de PayPal y debajo solo queda un espacio en blanco o un contenedor vacío. No hay botón amarillo, no hay opción de tarjeta y tampoco un mensaje claro de error.

A nosotros nos ocurrió exactamente lo mismo en un proyecto reciente.  Te contamos qué está pasando y cómo lo dejamos funcionando.

¿Por qué no funciona PayPal en Hummingbird?

El tema Classic de PrestaShop llevaba años usando la misma arquitectura basada en jQuery. Sin embargo, Hummingbird ha modernizado el theme pasando a JavaScript nativo (Vanilla ES6) y actualizando la estructura de componentes.

El módulo oficial de PayPal todavía arrastra comportamientos pensados para la versión antigua:

  1. El "apagón" de eventos en JavaScript: PayPal espera a que la página lance un aviso clásico (updatedPaymentStep) para "despertar" y dibujar sus botones. Al cambiar a Hummingbird, ese aviso a veces no se lanza o no llega a tiempo, por lo que el script del SDK de PayPal nunca llega a ejecutarse.
  2. La trampa del checkbox legal (Términos y Condiciones): Por motivos de RGPD y normativa europea, PayPal bloquea activamente sus botones inteligentes hasta comprobar que el cliente ha aceptado las condiciones. Si en tu plantilla modificaste el checkout o la maquetación y el input no tiene exactamente los nombres e identificadores nativos del core, PayPal asume que las condiciones no se han cumplido y no se muestra.
  3. Contenedores colapsados por CSS: En ocasiones el botón sí llega a crearse en segundo plano, pero las clases de visibilidad del nuevo checkout lo mantienen oculto con un display: none traicionero.

Cómo lo solucionamos

No hizo falta instalar módulos externos de pago ni hacer chapuzas temporales. La clave estuvo en sincronizar el theme con lo que espera el módulo:

  • Respetar al milímetro el marcado del core: Aseguramos que el checkbox de términos y condiciones en la plantilla del checkout mantuviese los identificadores originales que busca el script (name="conditions_to_approve[terms-and-conditions]").
  • Restaurar el flujo de eventos: Comprobamos que al seleccionar la opción de pago se disparara el evento de actualización para que el SDK de PayPal reciba la orden de renderizado.
  • Limpiar el contenedor visual: Forzamos que el bloque contenedor (#paypal-buttons-container) no estuviera restringido por transiciones de clase de Bootstrap que impidieran ver el iframe del botón.

¿Te está pasando lo mismo en tu tienda?

PrestaShop 9 y Hummingbird son un salto excelente en velocidad y código limpio, pero este tipo de asperezas entre módulos heredados y el nuevo estándar JS son habituales al principio.

Si estás atascado en este punto con tu checkout, déjanos un comentario abajo o escríbenos: te podemos echar una mano para revisar tu caso o ver si tu plantilla tiene algún conflicto similar.

No Se Encontraron Resultados

No se pudo encontrar la página que solicitaste. Prueba a ajustar tu búsqueda o usa la navegación superior para localizar la entrada.