Jason Caldwell wrote:
I know this seems incorrect, but it actually is the intended behavior. The initial cancellation IPN is not grounds for an EOT or list removal. They'll get removed from the list once the EOT Time comes around ( i.e. Sat Oct 29, 2011 2:37 am UTC ).
Statistics: Posted by Raam Dev — October 28th, 2011, 12:46 pm
*Understanding Cancellations* It's important to realize that a Cancellation is not an EOT ( End Of Term ). All that happens during a Cancellation event, is that billing is stopped, and it's understood that the Customer is going to lose access, at some point in the future. This does NOT mean, that access will be revoked immediately. A separate EOT event will automatically handle a (demotion or deletion) later, at the appropriate time; which could be several days, or even a year after the Cancellation took place.
*Some Hairy Details* There might be times whenever you notice that a Member's Subscription has been cancelled through your Payment Gateway... but, s2Member continues allowing the User access to your site as a paid Member. Please don't be confused by this... in 99.9% of these cases, the reason for this is legitimate. s2Member will only remove the User's Membership privileges when an EOT ( End Of Term ) is processed, a refund occurs, a chargeback occurs, or when a cancellation occurs - which would later result in a delayed Auto-EOT by s2Member.
s2Member will not process an EOT ( End Of Term ) until the User has completely used up the time they paid for. In other words, if a User signs up for a monthly Subscription on Jan 1st, and then cancels their Subscription on Jan 15th; technically, they should still be allowed to access the site for another 15 days, and then on Feb 1st, the time they paid for has completely elapsed. At that time, s2Member will remove their Membership privileges; by either demoting them to a Free Subscriber, or deleting their account from the system ( based on your configuration ). s2Member also calculates one extra day ( 24 hours ) into its equation, just to make sure access is not removed sooner than a Customer might expect.
Statistics: Posted by Jason Caldwell — October 27th, 2011, 11:12 pm
Statistics: Posted by Cristián Lávaque — October 27th, 2011, 5:05 pm
PHP v5.3.6 :: WordPress® v3.2.1 :: s2Member® v111017
Memory 22.60 MB :: Real Memory 23.25 MB :: Peak Memory 22.96 MB :: Real Peak Memory 23.25 MB
raamdev.com/wordpress/?s2member_paypal_notify=1
User-Agent:
array (
'txn_type' => 'subscr_cancel',
'subscr_id' => 'S-7GE77849NJ343054D',
'last_name' => 'Dev',
'option_selection1' => 'raamdev.com',
'option_selection2' => '24.91.xxx.xx',
'residence_country' => 'US',
'mc_currency' => 'USD',
'item_name' => 'Reflections (daily subscription test)',
'business' => 'xxx@raamdev.com',
'amount3' => '0.01',
'recurring' => '1',
'verify_sign' => 'ABg.3WFg-Pv-AO4sS8fQYchrMDshAUY2XQTJFR8oXRy.5J61FIl1.4NC',
'payer_status' => 'verified',
'payer_email' => 'xxx@actualwebspace.com',
'first_name' => 'Raam',
'receiver_email' => 'xxx@raamdev.com',
'option_name1' => 'Originating Domain',
'payer_id' => 'QEMJGN7E35YH6',
'invoice' => '4ea8c0099faf3~24.91.108.39',
'option_name2' => 'Customer IP Address',
'reattempt' => '1',
'item_number' => '1',
'payer_business_name' => 'ActualWebSpace',
'subscr_date' => '19:41:00 Oct 26, 2011 PDT',
'custom' => 'raamdev.com',
'charset' => 'windows-1252',
'notify_version' => '3.4',
'period3' => '1 D',
'mc_amount3' => '0.01',
'ipn_track_id' => 'ViLxl5nn16nXLM9XRJ9Dlw',
's2member_log' =>
array (
0 => 'IPN received on: Thu Oct 27, 2011 2:41:28 am UTC',
1 => 's2Member POST vars verified through a POST back to PayPal®.',
2 => 's2Member originating domain ( `$_SERVER["HTTP_HOST"]` ) validated.',
3 => 's2Member `txn_type` identified as ( `subscr_cancel|recurring_payment_profile_cancel` ).',
4 => 'Auto-EOT Time for this account: Sat Oct 29, 2011 2:37 am UTC',
),
'subscr_gateway' => 'paypal',
'period1' => '0 D',
'ccaps' => NULL,
'level' => '1',
'ip' => '24.91.xx.xx',
)
Statistics: Posted by Raam Dev — October 26th, 2011, 10:02 pm