Debug dello script tag Shopify
Lo script di redirect WooshPayment non intercetta il bottone Check out di Shopify? Ecco le cause più frequenti, i controlli da fare e quando serve supporto prima del traffico.
TLDR: se clicchi "Check out" su Shopify e atterri sul checkout Shopify default invece che sul tuo WooshPayment, il problema è quasi sempre uno di questi: 1) script non caricato, 2) tema live che non espone un pattern intercettabile, 3) cache CDN del tema, 4) CSP restrittivo. Lo ScriptTag è il percorso legacy Shopify: prima di mandare traffico va sempre validato con un test reale dal carrello sul tema pubblicato.
Diagnostica prima del traffico
Apri il tuo store, aggiungi un prodotto al carrello, poi DevTools (F12).
Check 1 — lo script è caricato?
DevTools → Network → filtra per wooshpayment. Ricarica la pagina carrello. Devi vedere:
checkout-interceptor.js 200 api.wooshpayment.com ~3 KB
Se NON lo vedi:
- Lo script viene installato in automatico via Shopify ScriptTag API al callback OAuth. Se manca, l'install è stata revocata o c'è un'OAuth scaduta.
- Riparazione da dashboard: WooshPayment → Impostazioni → bottone "Reinstalla script tag". L'app fa una nuova chiamata
POST /admin/api/2026-01/script_tags.jsoncon l'accessToken corrente. Dopo la reinstallazione, fai hard refresh del tema e ripeti un test checkout reale dal carrello prima del traffico. - Se la reinstall fallisce con "OAuth scaduta", rifai la connessione da Impostazioni → Connessione Shopify.
Il percorso standard è API-driven: scriviamo lo script_src nell'oggetto ScriptTag di Shopify. Se il tema live non carica ScriptTag o il canale è headless/app custom, non mandare traffico: serve una validazione supporto o un app embed dedicato prima del traffico.
Check 2 — lo script si esegue?
Console del browser sulla pagina carrello: cerca log [WooshPayment]. Se vedi [WooshPayment] Failed to create session: … significa che lo script è arrivato ma la chiamata POST /api/checkout/create ha fallito. Apri il dettaglio nella Network tab e leggi lo status + corpo della risposta:
400 Carrello non valido→ prezzi cambiati fra add-to-cart e checkout, il cliente refresha401→ token Shopify revocato lato store, reinstalla l'app403→ origine dello store non in allowlist CORS, scrivici
Check 3 — il tema usa un pattern noto?
Lo script intercetta:
- Form submit verso
/carto/checkoutquando il tema carica lo script e usa il carrello standard history.pushStateverso/checkout(SPA delle vetrine moderne)window.location.assign/replaceverso/checkout
Se il tuo tema usa un selettore esotico (es. handler proprio che chiama XMLHttpRequest senza passare da location), lo script non lo vede. Scrivici con URL store + nome tema e aggiungiamo il pattern.
Cause specifiche
Cache CDN del tema
Shopify Plus a volte ha Cloudflare/Fastly davanti che cachano theme.liquid per 30 min. Dopo aver installato lo script tag, forza un purge:
Shopify Admin → Online Store → Temi → "Azioni" → Pubblica (ri-pubblicare invalida il CDN).
CSP del tema
Se il tema imposta un Content-Security-Policy restrittivo, lo script viene bloccato. Console mostrerà:
Refused to load script 'https://api.wooshpayment.com/api/checkout-interceptor.js' because it violates CSP
Fix: aggiungi api.wooshpayment.com agli script-src del tema, oppure rimuovi il meta CSP custom (Shopify ne imposta uno default sicuro).
Tema headless (Hydrogen/Remix)
WooshPayment non supporta nativamente storefront Hydrogen. Devi invocare l'API REST direttamente:
const res = await fetch('https://api.wooshpayment.com/api/checkout/create', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ shop, cartToken, items, totalPrice, currency }),
})
const { checkoutUrl } = await res.json()
window.location.href = checkoutUrlVedi API reference per il payload completo.
Apps "Buy Now" o sticky checkout
App tipo ReConvert, OneClickUpsell, EasyAccess possono bypassare il tuo carrello e chiamare /checkout direttamente in modi che non passano dai pattern intercettati. Disattiva l'app, verifica, riattivala step by step.
Quando contattarci
Dopo i check sopra, se non funziona scrivi a hello@wooshpayment.com con:
- URL del tuo store
- Nome del tema (Online Store → Temi → nome accanto al thumb)
- Screenshot console + Network tab
- Eventuale log
[WooshPayment]visibile in console
Link utili
- Integrazione Shopify — install iniziale
- WooCommerce — equivalente Woo
- Pagamento fallisce — se lo script funziona ma il pagamento si pianta