2009-06-30 34 views
51

añado suscripciones a un sitio a través de Paypal IPN que funciona muy bien, puedo crear con éxito una nueva suscripción y verificarlo. La suscripción tiene una prueba gratuita de dos semanas. La guía fue desafortunadamente un poco vaga en los estados de suscripción.suscripciones con PayPal IPN

Por el momento, la cuenta de usuario obtiene el estado de suscripción una vez que subscr_signup o subscr_payment se reciben y se eliminan cuando se recibe subscr_cancel o subscr_failed. Creo que esto es correcto, pero es mejor asegurarse.

también lo es subscr_eot? la guía de IPN lo describe como "fin de término de la suscripción". ¿Esto se activa después de que finaliza el período de prueba?

Respuesta

75

subscr_eot se envía al último intervalo de pago de un usuario ha expirado. subscr_cancel se envía tan pronto como el uso cancela la suscripción, por ejemplo:

El usuario se registra el día 1 para una suscripción que se factura una vez al mes. subscr_signup se envía inmediatamente, subscr_payment se envía tan pronto como se realiza el pago (generalmente también de inmediato).

El día 13, el usuario cancela. subscr_cancel se envía inmediatamente, aunque el usuario ha pagado técnicamente hasta el día 30. La cancelación en este punto depende de usted.

El día 30, se envía subscr_eot - el usuario ha cancelado, y este es el día en el que su último pago pagado hasta.

No hay muchos cambios con las suscripciones de prueba: si un usuario cancela antes de que se agote una suscripción de prueba, se envía subscr_cancel inmediatamente y se envía subscr_eot al final de la versión de prueba.

+0

No estoy seguro de que esto sea necesariamente cierto. Creo que depende del tipo de suscripción que tengan, comenzando con I/S, etc. – ajbeaven

+0

Escuché que subscr_ * es la vieja manera. ¿Es eso cierto? De todos modos, estoy tratando de obtener estos valores txn_type resueltos. http://stackoverflow.com/questions/13855287/parsing-paypal-subscription-ran-out – Volomike

+2

Solo para agregar a esto - afaik - si no estaba haciendo una prueba gratuita, entonces 'subscr_signup' se envía solo si el primero el pago fue exitoso también. Por lo tanto, puede escuchar solo subscr_signup y subscr_eot para activar/desactivar suscripciones. – Webcognoscere

34

Además, un detalle interesante es cómo subscr_eot obras con subscr_failed.

Parece que subscr_eot viene después de FINALsubscr_failed. Así que si en su cuenta lo establece para volver a intentar automáticamente los pagos fallidos 3 veces, entonces debería ir así:

primera fallado pago => subscr_failed segundo fallido pago => subscr_failed tercer pago fallido => subscr_failed y subscr_eot

así que básicamente en el código puede establecer subscr_failed para desencadenar un email como

usuario hola, por favor, tome momento para comprobar su información de pago, es posible que necesite actualización del crédito c ard expiration fecha, etc. Todavía tiene acceso, lo intentaremos de nuevo en unos días.

Y subscr_eot configuración para activar su suscripción en realidad fuera y desencadenar un correo electrónico como

Lo sentimos, todavía havent' conseguido pago y han tomado su perfil hacia abajo.Usted todavía puede reactivarlo iniciando sesión y actualizar su información de pago

Básicamente este es el camino "agradable" de hacerlo para que los clientes tienen un período de gracia, y su cuenta no se cierra de forma inesperada sólo por una tarjeta de crédito vencida o algo así.

+0

¿Los pagos fallidos y el envío de notificaciones subscr_eot todavía funcionan como lo hicieron en 2009? – ajbeaven

+0

@ajbeaven: Parece que desde que la publicación se actualizó en abril, la información aún está actualizada. – Brett

+0

@BrainArmstrong después de que subscr_eot finalice, ¿le pedimos al usuario que se registre para la suscripción nuevamente o modifique la suscripción existente? entonces sería subscr_modify o subscr_signup después del final del término. o para usuarios con cáscara? – Basit

4

Depende de la cuenta, si es nueva o no, si se envía subscr_eot, ¿qué hay detrás de mí?

Aún no he encontrado la forma correcta de gestionar las suscripciones. El cálculo de las fechas en el servidor podría fallar muy rápido si hay un retraso en el pago.

9

El hilo publicado por Chris se ha actualizado recientemente.

En algún momento de 2010, PayPal dejó de usar subscr_eot cuando un usuario canceló su cuenta. Después de una serie de quejas, restablecieron esto, pero tardaron 6 meses en hacerlo. Todo esto significa que una vez más puede manejar sus notificaciones de suscripción según lo descrito por Peter en la respuesta aceptada.

de un representante de PayPal:

subscr_cancel significa que el perfil es cancelada y no habrá futuras pagos. Sin embargo, si el comprador ya ha pagado por el ciclo de facturación actual , ya que se cargan por adelantado, , entonces puede usar el subscr_eot como finalizar el perfil.

Aún no está seguro de lo que sucede en el caso de múltiples intentos fallidos de pago, sin embargo. La documentación de PayPal en este momento es terrible.

+3

Claro. Hay muy poca documentación autorizada acerca de material relacionado con API/IPN, y lo que existe generalmente se contradice con * otra * documentación, o ese bastardo llamado realidad. – Ashe

+0

sí, como ese día que el _payment ipn ocurrió antes del _signup ipn: D – Sebas

Cuestiones relacionadas