WWooshPayment docs
Integrazione store

Integrazione WooCommerce

Connetti uno store WooCommerce a WooshPayment via REST API. Funziona con WordPress 6.0+ e WooCommerce 8.0+.

4 min di lettura

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 con form Aggiungi chiave per WooshPayment, permessi Lettura/Scrittura

  1. WordPress Admin → WooCommerce → Impostazioni → Avanzate → REST API
  2. "Aggiungi chiave"
  3. Descrizione: WooshPayment
  4. Permessi: Lettura/Scrittura
  5. 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

Screenshot reale della pagina Integrazioni della Dashboard WooshPayment: card WooCommerce in stato "Non connesso" con i campi URL del tuo store WordPress, Consumer Key, Consumer Secret, e il bottone "Collega". In alto sulla pagina anche la card Whop e in basso i pixel marketing

  1. Dashboard → Impostazioni → Piattaforma e-commerce → scegli WooCommerce
  2. Sezione "Connessione WooCommerce" → compila:
    • URL store: es. https://mio-store.it (senza slash finale)
    • Consumer Key: incolla
    • Consumer Secret: incolla
  3. Salva → WooshPayment fa un ping su /wp-json/wc/v3/products?per_page=1 per validare le chiavi

Le credenziali sono cifrate at rest (AES-256-GCM).

3. Redirect del bottone checkout

Flusso redirect: carrello WooCommerce con bottone Procedi al pagamento che reindirizza al checkout brandizzato su demo-store.wooshpayment.com

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

Verifica: ordine #1042 visibile in parallelo nel Dashboard WooshPayment con stato Completed e in WooCommerce → Ordini con stato Elaborazione

  1. Apri lo store in incognito
  2. Aggiungi prodotto → vai al carrello
  3. Clicca "Procedi al checkout"
  4. Devi atterrare su {tuo-slug}.wooshpayment.com/checkout/...
  5. Completa pagamento di test
  6. 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 (oppure cod se contrassegno)
  • Email cliente: la manda WooCommerce con i suoi template

Compatibilità

PluginCompatibile
WooCommerce SubscriptionsSolo prodotti one-time. Subscription in roadmap.
WooCommerce BookingsNon supportato
Polylang / WPML
WooCommerce PDF Invoices
WooCommerce StripeDisabilita: 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.

Prossimi step