Rilevazione della cancellazione dell'iscrizione a Paypal

Ho scritto un semplice sistema di abbonamento paypal, in cui un utente può inserire le proprie informazioni, fare clic sul button e avviare un abbonamento. Mi chiedo come posso scoprire quando l'utente annulla l'abbonamento? Ho visto $ txn_type subscr_cancel ma non ho idea di come usarlo, dal momento che paypal non chiama di nuovo il mio gestore.

Grazie!

Stai usando IPN se sì allora, quando un abbonamento è cancellato paypal restituisce $_POST['txn_type'] = subscr_cancel insieme a subscr_date = data di sottoscrizione, subscr_id = ID di sottoscrizione, ecc. Ora puoi elaborare la richiesta di annullamento per l'ID di sottoscrizione restituita. allo stesso modo ottieni $_POST['txn_type'] = subscr_eot quando termina la sottoscrizione. Una volta impostato l'URL IPN nelle impostazioni di PayPal, chiamerà sempre il tuo gestore ipn. usa l'interruttore per gestire richieste diverse in questo modo,

 switch ($_POST['txn_type']) { case 'cart': //for products without subscription break; case 'subscr_payment': //subscription payment recieved break; case 'subscr_signup': //subscription bought payment pending break; case 'subscr_eot': //subscription end of term break; case 'subscr_cancel': //subscription canceled break; } 

L'IPN con un tipo di "subscr_cancel" viene inviato quando l'utente annulla effettivamente la sottoscrizione. Questo non dovrebbe essere usato per cancellare l'abbonamento in quanto ciò può accadere in qualsiasi momento durante il periodo di abbonamento.

L'IPN con il tipo "subscr_eot" deve essere utilizzato per annullare la sottoscrizione. Questo viene inviato quando il periodo di abbonamento dell'utente è scaduto.