Integrazione WooCommerce
Connetti uno store WooCommerce a WooshPayment via REST API. Funziona con WordPress 6.0+ e WooCommerce 8.0+.
L'integrazione WooCommerce usa la REST API ufficiale. Funziona con WordPress 6.0+ e WooCommerce 8.0+. Lo store deve essere su HTTPS.
Modo più veloce — Plugin WordPress 1-click ⚡ — Abbiamo un plugin ufficiale che intercetta automaticamente il bottone "Procedi al pagamento" senza che tu debba toccare il theme o scrivere snippet. Va comunque generato il Consumer Key (questa guida, step 1-2) per ricevere gli ordini su WC, ma il redirect del checkout è gestito dal plugin in 2 minuti. → Vedi installazione plugin
Continua su questa pagina solo se non puoi installare plugin sul tuo WordPress (server bloccato, multisite restricted, ecc.).
Gli step lato WordPress / WooCommerce admin mostrano rendering illustrativi (servirebbero credenziali admin di un'installazione WordPress che non possiamo includere qui). Lo step 2 è uno screenshot reale della Dashboard WooshPayment.
1. Genera le API key in WooCommerce

- WordPress Admin → WooCommerce → Impostazioni → Avanzate → REST API
- "Aggiungi chiave"
- Descrizione:
WooshPayment - Permessi: Lettura/Scrittura
- Salva — copia Consumer Key e Consumer Secret (mostrati una sola volta)
Conserva le chiavi in un password manager. Se le perdi, devi rigenerarle e WooshPayment smetterà di creare ordini fino al re-input.
2. Connetti su WooshPayment

- Dashboard → Impostazioni → Piattaforma e-commerce → scegli WooCommerce
- Sezione "Connessione WooCommerce" → compila:
- URL store: es.
https://mio-store.it(senza slash finale) - Consumer Key: incolla
- Consumer Secret: incolla
- URL store: es.
- Salva → WooshPayment fa un ping su
/wp-json/wc/v3/products?per_page=1per validare le chiavi
Le credenziali sono cifrate at rest (AES-256-GCM).
3. Redirect del bottone checkout

A differenza di Shopify (dove installiamo lo ScriptTag in automatico), WooCommerce non espone un'API equivalente per iniettare JS sullo storefront. Hai due opzioni:
A) Plugin WordPress (consigliato) ⚡ — Il nostro plugin ufficiale sostituisce il bottone "Procedi al checkout" con un redirect a {slug}.wooshpayment.com. 2 minuti, zero codice. → Guida installazione plugin
B) Snippet manuale nel tema — Se non puoi installare plugin sul tuo WordPress, inserisci questo snippet nel functions.php del tuo tema child (o tramite un plugin Code Snippets):
add_action('wp_footer', function() {
$slug = 'TUO-SLUG'; // sostituisci con il tuo slug WooshPayment
if (!is_checkout() && !is_cart()) return;
echo "<script>
document.addEventListener('DOMContentLoaded', function() {
var btns = document.querySelectorAll('.checkout-button, .wc-proceed-to-checkout a, button[name=\"woocommerce_checkout_place_order\"]');
btns.forEach(function(b) {
b.addEventListener('click', function(e) {
e.preventDefault();
fetch('https://api.wooshpayment.com/api/checkout/create', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
shop: location.hostname,
cartToken: '',
items: window.wcCart || [],
totalPrice: 0,
currency: 'EUR'
})
}).then(r => r.json()).then(d => { if (d.checkoutUrl) location.href = d.checkoutUrl; });
});
});
});
</script>";
});Il payload items qui è semplificato; vedi API reference per la versione completa che mappa line items + varianti.
4. Verifica

- Apri lo store in incognito
- Aggiungi prodotto → vai al carrello
- Clicca "Procedi al checkout"
- Devi atterrare su
{tuo-slug}.wooshpayment.com/checkout/... - Completa pagamento di test
- Verifica ordine in WooCommerce → Ordini con stato
Elaborazione
Sync degli ordini
A pagamento confermato chiamiamo POST /wp-json/wc/v3/orders:
- Stato di default:
processing(configurabile) - Note ordine:
Pagato via WooshPayment (session: ch_xxx) payment_method:woopay(oppurecodse contrassegno)- Email cliente: la manda WooCommerce con i suoi template
Compatibilità
| Plugin | Compatibile |
|---|---|
| WooCommerce Subscriptions | Solo prodotti one-time. Subscription in roadmap. |
| WooCommerce Bookings | Non supportato |
| Polylang / WPML | Sì |
| WooCommerce PDF Invoices | Sì |
| WooCommerce Stripe | Disabilita: WooshPayment usa Whop, non Stripe |
Problemi frequenti
"401 Unauthorized" dopo connect
- Verifica che il sito sia HTTPS — non ci connettiamo a HTTP
- Riapri WooCommerce → REST API e controlla che la chiave non sia stata revocata
- Verifica che il permesso sia "Lettura/Scrittura" (non solo "Lettura")
Prezzi diversi tra WooCommerce e WooshPayment
Spesso è problema di IVA. WooshPayment rispetta display_prices_including_tax di WooCommerce. Verifica in WooCommerce → Impostazioni → Generale → Tasse.
"Carrello non valido" lato cliente
I prezzi sono cambiati fra add-to-cart e checkout. Il cliente refresha il carrello e riprova.