El error que buscan los usuarios
Mensaje habitual
The iframe has not configured - see warning in consoleEl texto varía según el navegador y el sistema del cliente: un marco vacío, una página con «conexión rechazada» o una sesión que pierde el acceso o el carrito tras el primer clic. La causa casi siempre es una de las cuatro siguientes.
Por qué se bloquea el marco
X-Frame-Options
DENY o SAMEORIGIN impiden que cualquier otro sitio muestre su tienda en un marco.
CSP frame-ancestors
Una Content-Security-Policy sin el dominio del cliente bloquea el marco.
Cookies SameSite
Sin SameSite=None; Secure, la cookie de sesión se descarta dentro del marco: se pierden el acceso y el carrito.
Bloqueo de cookies de terceros
Safari y algunos ajustes de navegador bloquean las cookies en marcos independientemente de sus atributos.
Corríjalo en su servidor
Lea la consola del navegador
Abra las herramientas de desarrollo durante una sesión de prueba y anote la cabecera o cookie bloqueada.
Autorice el dominio del cliente en frame-ancestors
Añada a su Content-Security-Policy solo los dominios del cliente, nunca *.
Elimine X-Frame-Options DENY o SAMEORIGIN
No permite enumerar varios dominios; frame-ancestors lo sustituye.
Configure las cookies de sesión como SameSite=None; Secure
De lo contrario, el navegador las descarta dentro del marco y se pierden el acceso y el carrito.
Pruebe una sesión PunchOut nueva
Inicie una sesión nueva desde el sistema de pruebas del cliente y compruebe el acceso y la devolución del carrito.
Ejemplos de cabeceras
Content-Security-Policy: frame-ancestors 'self' https://*.ariba.com
Set-Cookie: session=…; Path=/; Secure; HttpOnly; SameSite=NoneConfirme los dominios exactos con su cliente: SAP Ariba, Coupa y otros sistemas utilizan hosts distintos para pruebas y producción. Aplique el cambio solo a lo que necesita la sesión PunchOut y mantenga las demás cabeceras de seguridad.
Cuando el navegador sigue bloqueando las cookies
Incluso con los atributos correctos, los navegadores que bloquean por defecto las cookies de terceros pueden descartar la sesión dentro de un marco. Las soluciones robustas son abrir la tienda en una ventana nueva cuando el sistema del cliente lo permita, o servirla mediante un proxy en un dominio que el navegador trate como propio de la sesión.
O deje que lo gestione el gateway
PunchOut Rocket muestra su tienda al cliente a través de su gateway, un reverse proxy que configura las cabeceras de marcos y los atributos de cookies adecuados para cada sesión PunchOut. No cambia nada en su servidor ni tema, y sus clientes habituales conservan sus ajustes de seguridad actuales.
PunchOut en la tienda que ya tiene
PunchOut Rocket conecta WooCommerce, Magento, PrestaShop y nopCommerce con SAP Ariba, Coupa y SAP mediante cXML u OCI. Desde 163 €/mes por sitio, prueba gratuita de 30 días.