PriMoThemes — now s2Member® (official notice)
This is now a very OLD forum system. It's in READ-ONLY mode.
All community interaction now occurs at WP Sharks™. See: new forums @ WP Sharks™
array (
0 => 'IPN received on: Sun Jun 26, 2011 10:57:09 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_payment|recurring_payment.',
4 => 'Sleeping for 5 seconds. Waiting for a possible subscr_signup|subscr_modify|recurring_payment_profile_created.',
5 => 'Awake. It\'s Sun Jun 26, 2011 10:57:14 am UTC. s2Member txn_type identified as subscr_payment|recurring_payment.',
6 => 'Skipping this IPN response, for now. The Subscr. ID is not associated with a registered Member.',
7 => 'Re-generating. This IPN will go into a Transient Queue; and be re-processed during registration.',
),
WordPress® v3.1.4 :: s2Member® v110620
xxxxxxxxxxx.com/?s2member_paypal_return=1
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.18) Gecko/20110614 Firefox/3.6.18
array (
's2member_log' =>
array (
0 => 'No Return-Data from PayPal®. Customer must wait for Email Confirmation.',
1 => 'Redirecting Customer to the Home Page.',
),
)
By circumventing the s2member_paypal_return processing, am I losing important s2Member tracking/logging? Is there a way to specify the proper s2member_paypal_return path, but also redirect to my custom return page (if/when there is no PDT data)?
<?php
add_action ('ws_plugin__s2member_during_paypal_return_during_subscr_signup_wo_update_vars', 'my_clickbank_return');
function my_clickbank_return () {
if ($_REQUEST['s2member_paypal_proxy'] === 'clickbank') {
echo '<script type="text/javascript">', "\n",
"window.location = 'http://www.example.com/thank-you/';", "\n",
'</script>', "\n";
exit ();
// Note. Don't use wp_redirect() or header("Location: xxx") here.
// The cookies set by s2Member may not be read properly.
// Always use window.location as shown above.
}
}
?>
No. s2Member depends upon communication from PayPal's IPN system in order to handle the cancellation of an ongoing recurring payment profile. If this were a fixed term, s2Member WOULD know ahead of time when to expire the Member, but in cases where the charges are ongoing, s2Member must rely upon PayPal's IPN system. If IPN communication fails, the Member will remain as they were. In your test case, at Level #1 ( forever ).I've now tested the other side of the IPN failure coin: If the subscription cancellation IPN signal is lost, s2Member never notices and the user remains at Level 1 (forever?).
In this case, does s2Member auto-degrade the user upon expected EOT (when the next expected recurring payment never shows up)? Sorry, I haven't taken the time to allow this to lapse in my test yet.
If not, is there a way s2Member could do a periodic (monthly) sweep, confirming the status of each active member, just to make sure all is in sync?
Hmm. That's an interesting idea. I'll take a look to see if we can make this possible in a future release. However, as of s2Member v110620, I would NOT recommend this. s2Member should be fine if duplicate IPNs are regarding cancellations, expirations, refunds, etc. But you definitely do NOT want to send duplicate copies of IPNs pertaining to subscription signups. That would cause havoc with s2Member internally, yielding unexpected results. I'll see what we can do in a future release to improve that.If not, what is the impact on s2Member if I were to force PayPal to resend a bunch of IPNs now an then just to make sure all is synced up? (I know that's sloppy account management, but I just want to weigh my options.)
Users browsing this forum: Yahoo [Bot] and 1 guest