• User

    Implementazione ipn paypal sul proprio sito

    Salve a tutti, non sono una cima con il php ma sono deciso a giocarci un po'.

    Ho creato un sito dove permetto di pagare con paypal ed ho implementato la funzione di ipn cioè il ritorno delle informazioni della transazione da paypal al db mysql che c'è integrato sul sito.
    Ora il problema è questo funziona tutto tranne SMTP perchè uso easyphp in locale e non ho capito molto come configurare e soprattutto se posso mandare una email da locale al web(in questo caso a paypal).
    Per chiarezza sto usando ala sandbox di paypal che permette di fare i test di pagamento.

    Grazie per l'attenzione e spero che qualche capoccia mi risponda.:bho:


  • User Attivo

    Ciao pizzet,
    per spedire le email con php devi configurare il file php.ini. Per aprirlo usa il mouse destro e di Easyphp vicino all'orologio di windows, e vai in configurazione/PHP: ti si apre il file php.ini nel notepad.
    A questo punto cerca le righe seguenti:

    
    [mail function]
    ; For Win32 only.
    SMTP = **localhost**
    
    

    e sostituisci localhost con il valore SMTP fornito dal tuo provider. Se hai dubbi su questo valore apri il programma di posta elettronica che utilizzi e vai a vedere nei settaggi di un account funzionante.

    Alla fine delle modifiche salva, chiudi il notepad, esci da Easyphp e riavvialo, quindi fai le prove che dovrebbe funzionare.

    Fammi sapere come è andata!
    😄


  • User

    sei stato molto chiaro.
    ora però ti chiedo se io sono dietro ad un router dove lo prendo stmp del mio provider?

    se ci sei e mi rispondi subito(oltre a farmi un grandissimo favore) ci provo e ti rispondo subito

    Grazie


  • User Attivo

    Se dal tuo pc riesci a far partire le email con un programma di posta elettronica, non dovresti avere problemi di router.
    Vai a vedere il valore SMTP settato sulla tua email: quello è ciò che ti occorre.
    Altrimenti devi conoscere l'operatore che ti fornisce la connessione di rete.


  • User

    lascia stare anzi potrebbe essere utile ai prossimi:
    se siete dietro ad un router (cioè in una lan) non è importante, l'unica cosa importante è sapere il vostro provider ad esempio se avete alice adsl il vostro smtp è **out.aliceposta.it **questo va messo come indicato da CECCUS.
    Per sapere in generale smtp riferito al vosto provider eccovi un buon link

    http://www.dominioweb.org/smtp.htm

    Grazie ceccus ora mi manda le email ma ho ancora dei problemi con l'ipn di paypal che mi da errore di configurazioni nella mia posta.
    Se sai qualche info in + su come implementare ipn di paypal in php sui siti
    i tuoi consigli saranno ben accetti


  • User Attivo

    5.0. NON sono graditi link attivi specialmente a siti propri (salvo nelle Aree Annunci), anche quando approfondiscono l'argomento in modo unico ed originale.
    In questi casi è consigliato riportare l'Url della risorsa **NON attivo.
    **
    Secondo quanto previsto dal regolamento i link non sono accettati ed ho dovuto quindi rimuovere quello presente sul tuo post precedente.

    Per quanto concerne la funzione ipn di paypal una volta l'ho utilizzata con successo. Sostanzialmente è una funzione che, a pagamento effettuato, contatta in automatico una tua pagina dando luogo ad una serie di eventi che tu stesso avrai impostato sulla tua pagina (tipo invio di email, aggiornamento db, ecc...).

    Che errore ti da?


  • User

    scusa per il link lo ignoravo.

    Per quanto riguarda l'ipn di paypal io ho creato la pagina ipn.php nel sito dove paypal reindirizza il cliente dopo che ha accettato di pagare.
    Il punto è che al cliente viene mostrato un pulsante che gli permette di tornare al suo pannello mentre io faccio i controlli ed è proprio lì che ho il problema perchè mi arriva l'email che l'ipn è verificato la transazione viene scritta sul mio db in mysql, viene visualizzato nell'email del cliente che sta pagando tot eruo al destinatario ma lo stato della transazione è "pendente".
    Ora dove sbaglio. Forse dovrei settare bene il venditore che accetta la transazione anche se ho seguito la guida passo passo però sto settando tutto come test sulla Sandbox.
    AIUTO


  • User Attivo

    Ciao,
    scusa se sembro pignolo, ma dobbiamo essere chiari per cercare di risolvere il problema.

    La funzione ipn di paypal è una funzione che contatta, a transazione avvenuta, un tuo codice (per esempio ipn.php) che fa scattare una serie di eventi tipo aggiornamento del db ed invio di email.

    Tale codice non c'entra nulla con la pagina in cui viene reindirizzato il cliente da paypal a pagamento avvenuto (per esempio grazie.php).

    La prima ti garantisce che il pagamento sia effettivamente andato a buon fine (perché è paypal che ti invia mediante POST data dei codici precisi con delle chiavi ad hoc,se ben ricordo) mentre la seconda pur potendo far scattare diversi eventi potrebbe in relatà essere chiamata da chiunque senza fornirti alcuna certezza di pagamento.

    Nel form di acquisto ci devono essere quindi due campi:

    <input type="hidden" name="return" value="http://www.miosito/grazie.php">
    <input type="hidden" name="notify_url" value="http://www.miosito/ipn.php">

    con ovvio significato di entrambi.

    Detto ciò, mi confermi che la notifica ***ipn verificato ***ti giunge dall'equivalente di ipn.php piuttosto che da grazie.php?
    :ciauz: