Hi, I’ve been using S2Member for about 18 months with 37,000 members. Generally running smoothly. Thanks for the brilliant product.
In the past few months, we have noticed the following behavior that (unfortunately) happens intermittently: a customer purchases one of two products we offer (1 year vs. lifetime) and the IPN seems to go through. However, their account never is updated to Level 2 (1 year) or Level 4 (Lifetime) and they are stuck at Subscriber.
The following is a case that happened recently. I’ve changed out the personal details of the customer, but have left in all the other info from the logs:
From paypal-api.log
PHP v5.3.14 :: WordPress® v3.5 :: s2Member® v121213 :: s2Member® Pro v121213
Memory 11.13 MB :: Real Memory 11.50 MB :: Peak Memory 11.24 MB :: Real Peak Memory 11.50 MB
members.learnvisualstudio.net/lifetime-sale/?s2-ssl=yes
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
-------- Input vars: ( Mon Jan 28, 2013 3:10:22 pm UTC ) --------
array (
'METHOD' => 'DoDirectPayment',
'PAYMENTACTION' => 'Sale',
'EMAIL' => 'xxxxxxx@xxxxx.com',
'FIRSTNAME' => 'xxxx',
'LASTNAME' => 'xxxx',
'IPADDRESS' => '71.157.132.9',
'DESC' => 'On Sale: $140.00 USD (for Lifetime access)',
'CUSTOM' => 'members.learnvisualstudio.net|lifetime-sale',
'CURRENCYCODE' => 'USD',
'ITEMAMT' => '140.00',
'TAXAMT' => '0.00',
'AMT' => '140.00',
'L_QTY0' => '1',
'L_NAME0' => 'On Sale: $140.00 USD (for Lifetime access)',
'L_NUMBER0' => '4',
'L_AMT0' => '140.00',
'CREDITCARDTYPE' => 'MasterCard',
'ACCT' => '************6032',
'EXPDATE' => '112015',
'CVV2' => '999',
'STREET' => 'xxxx xxxxx xxxx',
'CITY' => 'Cleveland',
'STATE' => 'OH',
'COUNTRYCODE' => 'US',
'ZIP' => '44102',
'VERSION' => '71.0',
'USER' => 'payment_api1.learnvisualstudio.net',
'PWD' => 'VVMYC6NTL8762ZLT',
'SIGNATURE' => 'A6DQIuFFe9inif0CRjv.7qptkEI2AxyVCp1oKQOtlFgRC4jDnpeBK-By',
)
-------- Output string/vars: ( Mon Jan 28, 2013 3:10:25 pm UTC ) --------
TIMESTAMP=2013%2d01%2d28T15%3a10%3a25Z&CORRELATIONID=d58d05ae9d1e&ACK=Success&VERSION=71%2e0&BUILD=4137385&AMT=140%2e00&CURRENCYCODE=USD&AVSCODE=Y&CVV2MATCH=M&TRANSACTIONID=8NP2532122274894M
array (
'TIMESTAMP' => '2013-01-28T15:10:25Z',
'CORRELATIONID' => 'd58d05ae9d1e',
'ACK' => 'Success',
'VERSION' => '71.0',
'BUILD' => '4137385',
'AMT' => '140.00',
'CURRENCYCODE' => 'USD',
'AVSCODE' => 'Y',
'CVV2MATCH' => 'M',
'TRANSACTIONID' => '8NP2532122274894M',
)
From paypal-ipn.log
PHP v5.3.14 :: WordPress® v3.5 :: s2Member® v121213 :: s2Member® Pro v121213
Memory 39.36 MB :: Real Memory 40.00 MB :: Peak Memory 39.53 MB :: Real Peak Memory 40.00 MB
members.learnvisualstudio.net/?s2member_paypal_notify=1&s2member_paypal_proxy=paypal&s2member_paypal_proxy_use=pro-emails&s2member_paypal_proxy_verification=27ed44e0944228c51d02d86e791e548e&s2member_paypal_proxy_return_url=http%3A%2F%2Fmembers.learnvisualstudio.net%2Flifetime-success%2F
User-Agent: WordPress/3.5; http://members.learnvisualstudio.net
array (
'txn_type' => 'web_accept',
'txn_id' => '8NP2532122274894M',
'custom' => 'members.learnvisualstudio.net|lifetime-sale',
'mc_gross' => '140.00',
'mc_currency' => 'USD',
'tax' => '0.00',
'payer_email' => 'xxxxxxx@xxxxx.com',
'first_name' => 'xxxx',
'last_name' => 'xxxx',
'option_name1' => 'Originating Domain',
'option_selection1' => 'members.learnvisualstudio.net',
'option_name2' => 'Customer IP Address',
'option_selection2' => '71.157.132.9',
'item_name' => 'On Sale: $140.00 USD (for Lifetime access)',
'item_number' => '4',
'proxy_verified' => 'paypal',
's2member_log' =>
array (
0 => 'IPN received on: Mon Jan 28, 2013 3:10:30 pm UTC',
1 => 's2Member POST vars verified with a Proxy Key',
2 => 's2Member originating domain ( `$_SERVER["HTTP_HOST"]` ) validated.',
3 => 's2Member `txn_type` identified as ( `web_accept|subscr_signup` ).',
4 => 's2Member `txn_type` identified as ( `web_accept|subscr_signup` ) w/o update vars.',
5 => 'Signup Confirmation Email sent to: "xxxx xxxx" <xxxxxxx@xxxxx.com>.',
6 => 'Storing Signup Tracking Codes into a Transient Queue. These will be processed on-site.',
7 => 'Subscr. Return ( `modification=0` ), a Proxy Return URL is ready.',
8 => 'Storing `payment` for Subscription via ( `web_accept` ).',
9 => 'Creating an IPN response for `subscr_payment`. This will go into a Transient Queue; and be processed during registration.',
10 => 'Storing IPN signup vars into a Transient Queue. These will be processed on registration.',
),
'subscr_gateway' => 'paypal',
'subscr_id' => '8NP2532122274894M',
'eotper' => NULL,
'ccaps' => NULL,
'level' => '4',
'ip' => '71.157.132.9',
'period1' => '0 D',
'mc_amount1' => '0.00',
'period3' => '1 L',
'mc_amount3' => '140.00',
'initial_term' => '0 D',
'initial' => '140.00',
'regular' => '140.00',
'regular_term' => '1 L',
'recurring' => '0',
's2member_paypal_proxy' => 'paypal',
's2member_paypal_proxy_use' => 'pro-emails',
's2member_paypal_proxy_verification' => '27ed44e0944228c51d02d86e791e548e',
)
NOTE: The customer did have a CVV of 999, which I thought was odd, however according to PayPal it is not flagged as fraud or anything.
I have screenshots of the customer’s edit screen in S2Member if it will help. However, it doesn’t have much information in it … of the S2Member properties, only the IP Address is populated.
Any ideas?