Con gli account GestPay Starter e GestPay Professional la comunicazione dell’esito della transazione viene effettuata da GestPay al momento del ritorno dell’utente al sito.
I passi sono questi:
- 1) l’utente effettua il pagamento cliccando sul bottone dello shop
- 2) arriva sulla pagina di GestPay e inserisce i dati della carta di credito
- 3) al termine del pagamento deve cliccare su un bottone presente nella pagina di GestPay che lo riporta al sito
- 4) tornato al sito le informazioni presenti nella URL consentono di modificare lo stato dell’ordine
Il punto 3) è quello fondamentale per la conclusione della transazione lato WooCommerce: verranno utilizzati i campi “URL risposta positiva” e “URL risposta negativa” (che vanno impostati nel backoffice di GestPay) per redirigere l’utente nel sito corretto e in base ai dati ricevuti lo stato dell’ordine verrà modificato di conseguenza (“completato” o “in lavorazione” per l’esito positivo, oppure “fallito” per l’esito negativo).
Quindi se nel campo “URL risposta positiva” avete inserito “http://www.miosito1.it/?wc-api=WC_Gateway_Gestpay_Starter” (oppure WC_Gateway_Gestpay_Pro se avete il plugin Pro) ma usate lo stesso account anche sul sito www.unaltromiosito.it allora succederà che chi conclude l’ordine su www.unaltromiosito.it verrà riportato su www.miosito1.it e quindi l’ordine non verrà completato (perché ci sarà una discordanza tra gli ordini).
Con l’account Starter non c’è nulla da fare: è possibile utilizzarlo su un solo sito perché non c’è alcun modo di distinguere il sito di partenza e questo si traduce in avere un account Starter per ogni sito che si vuole aprire.
Con l’account Professional invece è possibile distinguere il sito di partenza attraverso una procedura non proprio semplice che cerco di riassumere nei seguenti punti:
- a) Nel backoffice di GestPay Professional bisogna abilitare un parametro custom chiamato, ad esempio, “SITO”.
- b) Nel plugin Pro del primo sito (es. www.miosito1.it) va specificato il campo custom “SITO=sito1”
- c) Nel plugin Pro del secondo sito (es. www.unaltromiosito.it) va specificato il campo custom “SITO=sito2”
- d) Nel plugin Pro dell’ennesimo sito (es. www.miositoennesimo.it) va specificato il campo custom “SITO=sitoN”
- e) Nel backoffice di GestPay va specificata la URL di ritorno positiva e negativa verso una pagina PHP che si occuperà di smistare le richieste e che può stare sul sito1, oppure sul sito2 oppure su un sito diverso
- f) Nella pagina PHP bisogna estrarre i parametri “a” e “b” restituiti da GestPay
- g) Grazie a questi parametri possiamo estrarre le informazioni del risultato e in particolare del campo custom “SITO”
- h) Analizzando il valore di questo campo (che nel nostro esempio varrà “sito1” oppure “sito2” oppure “sitoN”) sappiamo da quale sito arriva la chiamata e quindi possiamo redirigere l’utente al sito corretto (riaggiungendo i parametri “a” e “b”)
- i) L’utente arriva al sito corretto e lo stato dell’ordine cambia in base ai parametri “a” e “b”
Nel plugin GestPay Pro è presente un file “example_redirect-using-custominfo.php” che può servire come esempio per gestire i punti f), g) e h).
Purtroppo questo è l’unico modo per poterlo utilizzare su più siti.
L’alternativa è aggiungere all’account Professional anche il servizio Tokenization (per i costi del servizio riferirsi alla pagina dell’account Professional sul sito di GestPay) e usare il mio plugin GestPay Pro Tokenization (in questa pagina troverete ulteriori informazioni sui benefici del servizio Tokenization).
Infatti, con il servizio Tokenization la comunicazione avviene Server-To-Server e non è necessario effettuare tutte le operazioni precedenti.