Come già anticipato il listener è il codice deputato a comunicare con PayPal per ricevere le IPN, prima però di entrare nello specifico è opportuno elencare i passaggi che compongono la stuttura di questa comunicazione.
Il flusso di comunicazione
- Quando avviene un pagamento PayPal invia (se è stato attivato in tal senso) una prima chiamata all’url ove risiede il nosto listener.
- Il listener risponde, in modo che PayPal sappia che la risorsa esiste ed è accessibile (ovvero il suo accesso non è bloccato o limitato in qualche modo dal nostro server).
- A questo punto PayPal invia i dati relativi alla transazione sempre al medesimo url.
- Il listener deve quindi re-inviare gli stessi dati a PayPal, in questa maniera PayPal ‘sa’ che li abbiamo ricevuti tutti e correttamente.
- PayPal invia infine un responso al listener per informarlo che la comunicazione è avvenuta correttamente (o non correttamente, se qualcosa è andato storto)
- Il listener provvede a chiudere la connessione con PayPal.
Anche se può sembrare un poco rindondante come flusso di comunicazione non dobbiamo dimenticare l’importanza che i valori passati hanno. Essere certi dell’orario di pagamento, dell’importo o dell’ID della transazione è un esigenza imprenscindibile perchè un sistema del genere sia di una qualche utilità.