In questo articolo allego un semplice script in php per ottenere un paypal IPN Listener. Il codice è liberamente utilizzabile, contiene commenti utili e anche il blocco di codice per integrarlo a unsito creato con joomla!
Sta a voi vedere di ampliarlo con codice per le vostre necessità, sarebbe opportuno comunque effettuare i controlli minimi come spiegato nel file (dopo la riga 71).
Non è motivo di questo articolo spiegare l’IPN (Istant Payment Notification) di Paypal (magari più avanti, se richiesta, potrò inserire una guida dettagliata) ma per una delucidazione spiegherò brevemente cos’è l’IPN!
L’IPN è un servizio offerto da Paypal che manda messaggi a un listener (una semplice pagina php, o altri linguaggi) per capire la situazione di una transazione e quindi fare le opportune scelte.L’IPN manda messaggi a ogni aggiornamento della transazione, quindi: PENDING, VERIFIED, COMPLETED e molti altri.
E’ stato creato per sopperire ai problemi del PDT (Payment Data Transfer) che non garantiva l’analisi, la sicurezza e la gestione della transazione in caso di crash utente prima di essere reindirizzato. In questo modo Paypal ci comunicherà sempre lo status di ogni nostra transazione, che potrà poi essere confermata e gestita dal PDT (o anche no, IPN può benissimo funzionare da solo…come PDT d’altronde).
NB: E’ importante notare che per utilizzare IPN (anche in sandbox) è necessario indicare l’url della nostra pagina php dal profilo paypal (utenti business) o dal form del bottone di pagamento!
File di esempio: paypal_ipn.php
Per qualsiasi problema, scrivete un commento e sarò lieto di aiutarvi!