Connettore WooCommerce (wordpress)

Prima di impostare il connettore specifico per WooCommerce è necessario creare una API REST specifica per Bman nel tuo sito WooCommerce. Per farlo accedi come amministratore sul sito ed dal menu WooCommerce è necessario entrare in “impostazioni – avanzate – API REST” e creare una nuova chiave:

 

Impostazioni Api Rest WooCommrce

Crea un nuova chiave e assegnale il permesso di lettura/scrittura

 

Creare nuova chiave API

Una volta generata la chiave, otterremo la key (o “chiave utente” se utilizzate WooCommerce in italiano) ed il secret (o “utente nascosto” se utilizzate WooCommerce in italiano) da inserire su Bman, non chiudete questa scheda fino a quando non avete impostato key e secret su Bman altrimenti sareste costretti a generare una nuova chiave.

Recupera Key e Secret

Adesso è necessario creare un connettore Bman, entrando in “Utilità – impostazioni ” nella sezione E-commerce cliccare su “E-commerce sterni”

 

Connettore WordPress Bman

Url – Impostare la url del vostro sito seguita /wp-json/wc/v3/
quindi se per esempio il vostro shop si trova alla url https://www.mioshop.it
nel campo url dovrete inserire https://www.mioshop.it/wp-json/wc/v3/

Key – Impostare la key generata automaticamente nelle api di
woocommerce

Secret – Impostare il secret generato automaticamente nelle api di WooCommerce

Torniamo su woocommerce, possiamo chiudere le impostazioni della nostra api rest e dedicarci alle impostazioni dell’ecommerce.

Per poter far funzionare correttamente Bman è necessario “settare” alcune impostazioni del sito come di seguito:

  • Impostazioni – generali – abilitare l’opzione
    “Abilita le aliquote e i calcoli delle imposte”
  • Impostazioni – generali – valuta – Euro
  • Impostazioni – prodotti – unità di peso / unità
    di misura – impostare identico a quello che avete impostato su Bman in utilità
    – impostazioni – opzioni articolo – Suffisso unità di misura
  • Impostazioni – imposta – Prezzi imposte Incluse
    – selezionare l’opzione “si, voglio inserire i prezzi comprensivi di imposte”

Una volta terminata questa prima configurazione, sarà possibile procedere con la configurazione degli altri parametri vedi Impostazioni ecommerce esterni

La sincronizzazione automatica di Bman funziona nel seguente modo:

 

1.Sincronizzazione degli articoli: Bman ogni X minuti invia all’ecommerce gli articoli che dalla sincronizzazione precedente hanno subito una qualunque modifica carico/scarico/modifica anagrafica/…

2.Sincronizzazione degli ordini: Bman ogni X minuti controlla l’eventuale presenza di nuovi ordini sull’ecommerce e qualora ne trovi di nuovi li scarica e tali ordini sono disponibili in ordini->cerca->da cliente(nb vengono scaricati gli ordini, gli ordini già esistenti in Bman anche se modificati nell’ecommerce non vengono modificati in Bman).

3.Sincronizzazione stato ordini: Durante la gestione di un ordine (in Bman) proveniente dall’ecommerce, quando lo stato dell’ordine cambi e diventa uno dei seguenti stati:

Stato Bman Stato WooCommerce
evaso completed
in evasione / in gestione / spedito processing
archiviato cancelled

Bman modifica lo stato dell’ordine sull’ecommerce immediatamente.

Quindi Bman sincronizza lo stato dell’ordine con l’ecommerce e non viceversa.

Le opzione attuabili sono 2:

  •  Gestione degli stati da Bman: questa gestione permette di diminuire le interazioni con i software e di conseguenza di diminuire i possibili errori umani. Una volta ricevuto l’ordine dall’ecommerce si potrà lavorare esclusivamente su Bman e l’ordine su WooCommerce avanzerà di stato conseguentemente alla gestione dell’ordine con Bman. Con questa gestione però si perderà la possibilità di inviare al cliente le richieste di pagamento ed il tracking delle spedizioni.
  • Gestione degli stati da WooCommerce: in questo caso dovrete disabilitare l’opzione “Sincronizza stato ordine” e modificare manualmente lo stato dell’ordine su WooCommerce durante la lavorazione. In questo caso la lavorazione manuale sarà maggiore ma sarà possibile  inviare al cliente le richieste di pagamento ed il tracking delle spedizioni attraverso le mail di WooCommerce.

Risoluzione dei problemi

Se una sicronizzazione non va a buon fine, è possibile ispezionare il motivo di tale fallimento cliccando sul pulsante LOG a fianco dell’operazione in questione.

Ispezionando il LOG è possibile che si verifichi un errore come il seguente:

!!! ERRORE !!! sincronizzazione non riuscita {"code":"woocommerce_rest_cannot_view","message":"Non puoi creare una lista delle risorse.","data":{"status":401}}  

Questo vuol dire che il sistema non riesce ad accedere correttamente alle API di WooCommerce.

Per prima cosa occorre verificare la correttezza di entrambi i valori di KEY e SECRET inseriti nelle impostazioni del connettore di Bman. 

Se i valori sono correttamente inseriti, il modo più semplice per correggere questo errore (soprattutto se l’unico accesso a disposizione sull’hosting è attraverso il protocollo FTP) è quello di modificare il file .htaccess presente nella root del sito web nel seguente modo:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]

# BEGIN WordPress
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress

Con molta probabilità basterà solo aggiungere la riga RewriteRule ^index\.php$ – [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L] al file HTACCESS

Una volta salvato il file, riprovare con una nuova sincronizzazione e tutto dovrebbe funzionare correttamente.

Attenzione agli aggiornamenti: è probabile che aggiornando il plugin WooCoomerce questa modifica dovrà essere ripetuta.