L’errore che le persone cercano
Messaggio tipico
The iframe has not configured - see warning in consoleIl testo varia in base al browser e al sistema del cliente: un frame vuoto, una pagina con “connessione rifiutata” o una sessione che perde l’accesso o il carrello dopo il primo clic. La causa è quasi sempre una delle quattro seguenti.
Perché il frame viene bloccato
X-Frame-Options
DENY o SAMEORIGIN impediscono a qualsiasi altro sito di mostrare il tuo e-commerce in un frame.
CSP frame-ancestors
Una Content-Security-Policy senza il dominio del cliente blocca il frame.
Cookie SameSite
Senza SameSite=None; Secure il cookie di sessione viene scartato nel frame: accesso e carrello vanno persi.
Blocco dei cookie di terze parti
Safari e alcune impostazioni dei browser bloccano i cookie nei frame indipendentemente dagli attributi.
Correzione sul tuo server
Leggi la console del browser
Apri gli strumenti per sviluppatori durante una sessione di test e annota l’header o il cookie bloccato.
Autorizza il dominio del cliente in frame-ancestors
Aggiungi alla tua Content-Security-Policy solo i domini del cliente, mai *.
Rimuovi X-Frame-Options DENY o SAMEORIGIN
Non può elencare più domini; frame-ancestors lo sostituisce.
Imposta i cookie di sessione su SameSite=None; Secure
Altrimenti il browser li scarta nel frame e accesso e carrello vanno persi.
Verifica una nuova sessione PunchOut
Avvia una nuova sessione dal sistema di test del cliente e verifica accesso e ritorno del carrello.
Esempi di header
Content-Security-Policy: frame-ancestors 'self' https://*.ariba.com
Set-Cookie: session=…; Path=/; Secure; HttpOnly; SameSite=NoneVerifica i domini esatti con il cliente: SAP Ariba, Coupa e altri sistemi usano host diversi per test e produzione. Applica la modifica solo a ciò che serve alla sessione PunchOut e mantieni gli altri header di sicurezza.
Quando il browser blocca ancora i cookie
Anche con gli attributi corretti, i browser che bloccano per impostazione predefinita i cookie di terze parti possono scartare la sessione nel frame. Le soluzioni più solide sono aprire l’e-commerce in una nuova finestra, quando il sistema del cliente lo consente, oppure servirlo tramite un proxy su un dominio che il browser considera di prima parte per la sessione.
Oppure lascia che se ne occupi il gateway
PunchOut Rocket presenta il tuo e-commerce al cliente tramite il proprio gateway, un reverse proxy che imposta gli header dei frame e gli attributi dei cookie corretti per ogni sessione PunchOut. Non cambia nulla sul tuo server o tema e i clienti normali mantengono le impostazioni di sicurezza attuali.
PunchOut sull’e-commerce che hai già
PunchOut Rocket collega WooCommerce, Magento, PrestaShop e nopCommerce a SAP Ariba, Coupa e SAP tramite cXML o OCI. Da 163 €/mese per sito, prova gratuita di 30 giorni.