|
Hi Gray.
Right, you should have an IPN log too… Whatever is causing that to fail, may explain the lack of signup confirmation email too.
Could you do a plugin conflict test? http://www.s2member.com/kb/common-troubleshooting-tips/#plugins
I’ll also email Jason to ask for his thoughts on this.
You can send the login info using this form: s2Member® » Private Contact Form
|
|
ok. Before deactivating any of the other plug-ins or switching themes, I checked the log files again. Now it looks like those IPN logs have been created. paypal-ipn.log was created about 2 1/2 hours after the last membership sign-up transaction and paypal-ipn.log was created a full four hours afterwards.
I did try deactivating all of the other plug-ins, and the main modified theme we are using, Super Skeleton. To no avail.
I have checked and cURL is definitely enabled. Could this be up problem with my security certificate?
I sent to a secure private message as you requested with the required WordPress username and FTP info. Hopefully we can get something worked out their websites can start making money instead of losing it.
this is the text from paypal-ipn.log:
PHP v5.3.18 :: WordPress® v4748 :: s2Member® v121023 :: s2Member® Pro v121023
Memory 35.38 MB :: Real Memory 35.50 MB :: Peak Memory 35.44 MB :: Real Peak Memory 35.50 MB
beautifulobscene.com/?s2member_paypal_notify=1&s2member_paypal_proxy=ccbill&s2member_paypal_proxy_use=standard-emails,subscr-signup-as-subscr-payment&s2member_paypal_proxy_verification=33d0aeef0f4617c0458b0def536905ea
User-Agent: WordPress/3.4.2; http://beautifulobscene.com
array (
's2member_log' =>
array (
0 => 'Unable to verify $_POST vars. This is most likely related to an invalid configuration of s2Member, or a problem with server compatibility.',
1 => 'If you\'re absolutely SURE that your configuration is valid, you may want to run some tests on your server, just to be sure $_POST variables are populated, and that your server is able to connect/communicate with your Payment Gateway over an HTTPS connection.',
2 => 's2Member uses the `WP_Http` class for remote connections; which will try to use `cURL` first, and then fall back on the `FOPEN` method when `cURL` is not available. On a Windows® server, you may have to disable your `cURL` extension; and instead, set `allow_url_fopen = yes` in your php.ini file. The `cURL` extension (usually) does NOT support SSL connections on a Windows® server.',
3 => 'Please see this thread: `http://www.s2member.com/forums/topic/ideal-server-configuration-for-s2member/` for details regarding the ideal server configuration for s2Member.',
4 => 'array (
\'s2member_paypal_notify\' => \'1\',
\'s2member_paypal_proxy\' => \'ccbill\',
\'s2member_paypal_proxy_use\' => \'standard-emails,subscr-signup-as-subscr-payment\',
\'s2member_paypal_proxy_verification\' => \'33d0aeef0f4617c0458b0def536905ea\',
\'txn_type\' => \'subscr_signup\',
\'subscr_id\' => \'0112319302000000118\',
\'recurring\' => \'1\',
\'txn_id\' => \'0112319302000000118\',
\'custom\' => \'www.beautifulobscene.com\',
\'period1\' => \'1 M\',
\'period3\' => \'1 M\',
\'mc_amount1\' => \'19.95\',
\'mc_amount3\' => \'19.95\',
\'mc_gross\' => \'19.95\',
\'mc_currency\' => \'USD\',
\'tax\' => \'0.00\',
\'payer_email\' => \'gray@ilikegray.com\',
\'first_name\' => \'ThirdTimeUrlChange\',
\'last_name\' => \'Basic\',
\'option_name1\' => \'Originating Domain\',
\'option_selection1\' => \'www.beautifulobscene.com\',
\'option_name2\' => \'Customer IP Address\',
\'option_selection2\' => \'24.21.191.187\',
\'item_number\' => \'3\',
\'item_name\' => \'Monthly / description and pricing details here.\',
)',
),
's2member_paypal_proxy' => 'ccbill',
's2member_paypal_proxy_use' => 'standard-emails,subscr-signup-as-subscr-payment',
's2member_paypal_proxy_verification' => '33d0aeef0f4617c0458b0def536905ea',
)
and from ccbill-ipn.log :
PHP v5.3.18 :: WordPress® v3.4.2 :: s2Member® v121023 :: s2Member® Pro v121023
Memory 30.98 MB :: Real Memory 31.25 MB :: Peak Memory 31.05 MB :: Real Peak Memory 31.25 MB
www.beautifulobscene.com/?s2member_pro_ccbill_notify=1
User-Agent:
array (
'customer_fname' => 'ThirdTimeUrlChange',
'customer_lname' => 'Basic',
'email' => 'gray@ilikegray.com',
'username' => '',
'password' => '',
'productDesc' => '',
'price' => '$19.95 for 30 days ** $19.95 recurring every 30 days **',
'subscription_id' => '0112319302000000118',
'denialId' => '',
'clientAccnum' => '945076',
'clientSubacc' => '0000',
'address1' => '555 SW Gimp',
'city' => 'pdx',
'state' => '',
'country' => 'US',
'phone_number' => '',
'zipcode' => '97206',
'start_date' => '2012-11-14 16:21:53',
'referer' => '',
'ccbill_referer' => '',
'affiliate' => '',
'reservationId' => '',
'referringUrl' => 'http://beautifulobscene.com/join/',
'reasonForDecline' => '',
'reasonForDeclineCode' => '',
'formName' => '146cc',
'cardType' => 'MASTERCARD',
'responseDigest' => '8273f380eaaf2f537d2737ca9910afa4',
's2_desc' => 'Monthly / description and pricing details here.',
's2_customer_ip' => '24.21.191.187',
's2_invoice' => '3',
's2_custom' => 'www.beautifulobscene.com',
's2_p1' => '1 M',
's2_p3' => '1 M',
'typeId' => '0',
'initialPrice' => '19.95',
'initialPeriod' => '30',
'recurringPrice' => '19.95',
'recurringPeriod' => '30',
'rebills' => '99',
'initialFormattedPrice' => '$19.95',
'recurringFormattedPrice' => '$19.95',
'ip_address' => '24.21.191.187',
's2member_log' =>
array (
0 => 'IPN received on: Wed Nov 14, 2012 11:22:00 pm UTC',
1 => 's2Member POST vars verified with ccBill®.',
2 => 'ccBill® transaction identified as ( `RECURRING/SUBSCRIPTION` ).',
3 => 'IPN reformulated. Piping through s2Member\'s core/standard PayPal® processor as `txn_type` ( `subscr_signup` ).',
4 => 'Please check PayPal® IPN logs for further processing details.',
),
)
|
|
also could you direct me to some instructions on how I might
….run some tests on your server, just to be sure $_POST variables are populated, and that your server is able to connect/communicate with your Payment Gateway over an HTTPS connection.’,
|
|
Gray, mine is also an adult site, using CCBill, and what we did was simply require the user to be registered and logged in before they can make a membership purchase. Using some creative PHP code on the registration pages, we only show them buttons that apply based on their current state (not logged, logged in, or already a paying member). This might be something you want to look at doing.
|
|
Gray, I got your email. Tried logging in to the WP admin area, but I get the an error about the password being wrong. I’m replying to your email so you can reply back with the right password. Thanks!
By the way, from the log entries you posted above, I noticed that your domain name sometimes has the www and other not. You should fix that. Knowledge Base » Don't mix www and without
|
|
I’ve sent the corrected password information. In the meantime, how does one go about testing that my “server is able to connect/communicate with your Payment Gateway over an HTTPS connection.” since this seems to be one of the error messages I’m getting from the logs.
I’m trying to address the www or not situation but it takes some cooperation from ccbill and godaddy (who issued the security certificate).
|
|
Hi Gary,
Please download this Server Check Tool, upload the PHP file to your WordPress directory, and then load the URL to the file in your browser. It will run a bunch of tests to determine if there’s anything amiss on the server-side.
|
|
Raam,
You got two things wrong here.
1. my name is Gray. Like the color. Not Gary. No hard feelings. It’s pretty common.
2. If you read the first paragraph of my post that started this thread:
” I ran your server check scripts, and revealed a few missing modules, but those have subsequently been installed. You can see for yourself at http://beautifulobscene.com/s2member-server-check-120703.php”
So everything was fine with that as of last wednesday.
any other suggestions?
|
|
Thanks, got your new email and could login this time.
What I could find was that your shortcodes for the buttons in the Join page, all had the [hilite mono]custom[/hilite] attribute wrong, because the domain name has the [hilite mono]www[/hilite], but your site doesn’t use it. This will cause problems with the checkout and registration. Knowledge Base » Don't mix www and without
Please fix those, do a test purchase and see if it solved the problem, please. :)
By the way, the Members link in the navigation also has [hilite mono]www[/hilite].
|
|
nope. that didn’t work either. I even created a new button at http://beautifulobscene.com/new-join/ to test that.
Perhaps i can create a test user for ccbill for you to test out the entire process, as this back and forth isn’t helping anyone I feel.
Do you have any answers for me as to the log file errors?
|
|
Thanks for the heads up on this thread.
@ Gary Ayer
In this log entry…
PHP v5.3.18 :: WordPress® v4748 :: s2Member® v121023 :: s2Member® Pro v121023
Memory 35.38 MB :: Real Memory 35.50 MB :: Peak Memory 35.44 MB :: Real Peak Memory 35.50 MB
beautifulobscene.com/?s2member_paypal_notify=1&s2member_paypal_proxy=ccbill&s2member_paypal_proxy_use=standard-emails,subscr-signup-as-subscr-payment&s2member_paypal_proxy_verification=33d0aeef0f4617c0458b0def536905ea
User-Agent: WordPress/3.4.2; http://beautifulobscene.com
array (
's2member_log' =>
array (
0 => 'Unable to verify $_POST vars. This is most likely related to an invalid configuration of s2Member, or a problem with server compatibility.',
1 => 'If you\'re absolutely SURE that your configuration is valid, you may want to run some tests on your server, just to be sure $_POST variables are populated, and that your server is able to connect/communicate with your Payment Gateway over an HTTPS connection.',
2 => 's2Member uses the `WP_Http` class for remote connections; which will try to use `cURL` first, and then fall back on the `FOPEN` method when `cURL` is not available. On a Windows® server, you may have to disable your `cURL` extension; and instead, set `allow_url_fopen = yes` in your php.ini file. The `cURL` extension (usually) does NOT support SSL connections on a Windows® server.',
3 => 'Please see this thread: `http://www.s2member.com/forums/topic/ideal-server-configuration-for-s2member/` for details regarding the ideal server configuration for s2Member.',
4 => 'array (
\'s2member_paypal_notify\' => \'1\',
\'s2member_paypal_proxy\' => \'ccbill\',
\'s2member_paypal_proxy_use\' => \'standard-emails,subscr-signup-as-subscr-payment\',
\'s2member_paypal_proxy_verification\' => \'33d0aeef0f4617c0458b0def536905ea\',
\'txn_type\' => \'subscr_signup\',
\'subscr_id\' => \'0112319302000000118\',
\'recurring\' => \'1\',
\'txn_id\' => \'0112319302000000118\',
\'custom\' => \'www.beautifulobscene.com\',
The URL that s2Member is posting to is on the domain: beautifulobscene.com
However, the custom="" attribute in your s2Member Shortcode, reflected by the log entries you posted, is set to:
www.beautifulobscene.com
(with the www prefix)
I suspect that your WordPress installation might be using both versions of your domain name. One with the www prefix and one without the www prefix. This would result in the error that you’re seeing in the logs. I would start by checking your current WordPress configuration under Settings -> General, to be sure that both of your URLs configured there, contain the www prefix?
See Also: Don’t Mix WWW and Without
Please let us know if problems persist. We’ll be happy to take a closer look for you.
|
|
nope. that didn’t work either. I even created a new button at http://beautifulobscene.com/new-join/ to test that.
I see you removed all the www’s from the shortcodes. From what you say, you seem to have made a test purchase after fixing that. Could you please show us the log entries corresponding to that test purchase?
I logged into your FTP and looked for the logs in /public_html/wp-content/plugins/s2member-logs but there’s nothing there, although you have logging enabled, so I’m guessing you deleted the logs after downloading them, maybe. If you don’t have them anymore, could you do a new test transaction to generate new logs then?
Thanks!
|
|
Hi Christian,
Yup, I fixed those shortcodes, deleted the logs so they could be more clear when i just ran a new test transaction. I don’t see any errors in those logs.
Here they are:
ccbill-ipn.log
PHP v5.3.18 :: WordPress® v3.4.2 :: s2Member® v121023 :: s2Member® Pro v121023
Memory 30.41 MB :: Real Memory 30.50 MB :: Peak Memory 30.47 MB :: Real Peak Memory 30.50 MB
beautifulobscene.com/?s2member_pro_ccbill_notify=1
User-Agent:
array (
'customer_fname' => 'NewJoinButton',
'customer_lname' => 'FakeGray',
'email' => 'fakegray@gmail.com',
'username' => '',
'password' => '',
'productDesc' => '',
'price' => '$2.95 for 365 days',
'subscription_id' => '0212325202000000051',
'denialId' => '',
'clientAccnum' => '945076',
'clientSubacc' => '0000',
'address1' => '6203 se boise',
'city' => 'portland',
'state' => '',
'country' => 'US',
'phone_number' => '',
'zipcode' => '97206',
'start_date' => '2012-11-20 07:17:05',
'referer' => '',
'ccbill_referer' => '',
'affiliate' => '',
'reservationId' => '',
'referringUrl' => 'http://beautifulobscene.com/new-join/',
'reasonForDecline' => '',
'reasonForDeclineCode' => '',
'formName' => '146cc',
'cardType' => 'MASTERCARD',
'responseDigest' => '0bdd453349a623f147253c3d883daec2',
's2_desc' => 'Annual / description and pricing details here.',
's2_customer_ip' => '174.100.140.186',
's2_invoice' => '1::1 Y',
's2_custom' => 'beautifulobscene.com',
's2_p1' => '0 D',
's2_p3' => '1 Y',
'typeId' => '0',
'initialPrice' => '2.95',
'initialPeriod' => '365',
'recurringPrice' => '0',
'recurringPeriod' => '0',
'rebills' => '0',
'initialFormattedPrice' => '$2.95',
'recurringFormattedPrice' => '$0.00',
'ip_address' => '174.100.140.186',
's2member_log' =>
array (
0 => 'IPN received on: Tue Nov 20, 2012 2:17:14 pm UTC',
1 => 's2Member POST vars verified with ccBill®.',
2 => 'ccBill® transaction identified as ( `NON-RECURRING/BUY-NOW` ).',
3 => 'IPN reformulated. Piping through s2Member\'s core/standard PayPal® processor as `txn_type` ( `web_accept` ).',
4 => 'Please check PayPal® IPN logs for further processing details.',
),
)
and the paypal-ipn.log
PHP v5.3.18 :: WordPress® v3.4.2 :: s2Member® v121023 :: s2Member® Pro v121023
Memory 37.08 MB :: Real Memory 38.00 MB :: Peak Memory 37.22 MB :: Real Peak Memory 38.00 MB
beautifulobscene.com/?s2member_paypal_notify=1&s2member_paypal_proxy=ccbill&s2member_paypal_proxy_use=standard-emails&s2member_paypal_proxy_verification=ac85b703bce62062497df87dc091e1e5
User-Agent: WordPress/3.4.2; http://beautifulobscene.com
array (
'txn_type' => 'web_accept',
'txn_id' => '0212325202000000051',
'custom' => 'beautifulobscene.com',
'mc_gross' => '2.95',
'mc_currency' => 'USD',
'tax' => '0.00',
'payer_email' => 'fakegray@gmail.com',
'first_name' => 'NewJoinButton',
'last_name' => 'FakeGray',
'option_name1' => 'Originating Domain',
'option_selection1' => 'beautifulobscene.com',
'option_name2' => 'Customer IP Address',
'option_selection2' => '174.100.140.186',
'item_number' => '1::1 Y',
'item_name' => 'Annual / description and pricing details here.',
'proxy_verified' => 'ccbill',
's2member_log' =>
array (
0 => 'IPN received on: Tue Nov 20, 2012 2:17:15 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: "NewJoinButton FakeGray" <fakegray@gmail.com>.',
6 => 'Storing `payment` for Subscription via ( `web_accept` ).',
7 => 'Creating an IPN response for `subscr_payment`. This will go into a Transient Queue; and be processed during registration.',
8 => 'Storing IPN signup vars into a Transient Queue. These will be processed on registration.',
),
'subscr_gateway' => 'ccbill',
'subscr_id' => '0212325202000000051',
'eotper' => '1 Y',
'ccaps' => '',
'level' => '1',
'ip' => '174.100.140.186',
'period1' => '0 D',
'mc_amount1' => '0.00',
'period3' => '1 Y',
'mc_amount3' => '2.95',
'initial_term' => '0 D',
'initial' => '2.95',
'regular' => '2.95',
'regular_term' => '1 Y',
'recurring' => '0',
's2member_paypal_proxy' => 'ccbill',
's2member_paypal_proxy_use' => 'standard-emails',
's2member_paypal_proxy_verification' => 'ac85b703bce62062497df87dc091e1e5',
)
|
|
a ha! Finally it came through. Since the logs insisted that
5 => 'Signup Confirmation Email sent to: "NewJoinButton FakeGray" <fakegray@gmail.com>.',
I just checked my spam box and it was in there. Any suggestions on how to get gmail to avoid spamming this?
|
|
Through reading the error message within paypal-ipn.log
5 => 'Unable to modify Subscription. The existing User ID is associated with an Administrator. Stopping here. Otherwise, an Administrator could lose access.',
I also realized that one cannot do a test purchase transaction while signed in, or if the purchaser’s email address is already affiliated with another account. Just fyi as a suggestion to future clients.
|
|
I just checked my spam box and it was in there. Any suggestions on how to get gmail to avoid spamming this?
There are a variety of possible reasons why such an email would go to spam. Google’s spam filters look for things in emails that indicate it might be spam, including words in the subject line, body of the message, TO email (“FakeGray” might be considered a spammy name to Google), and even things far more “background” like which server on the Internet that email was sent from (if you’re on a shared hosting server and another website on the same server was spammy, the IP address for that server might have been added to a spam list that Google looks at).
So my recommendation is to try different TO and FROM email addresses and see if they still go to spam. You can also try configuring WordPress to send all your emails through Google’s SMTP server, so that the emails get authenticated that way instead of being sent directly from your web server. This usually solves most problems. (See Troubleshooting Email Delivery Problems.)
|
|
Glad that solved your problem, Gray! :)
For email deliverability, there are the things Raam mentioned, but you should also edit the email so it’s not the default that most s2Member users have. Make it unique to your site and check that it doesn’t trigger spam flags in the filteres. Some email autoresponder services give your emails a spam score when you create them for the email sequences, you can use that and then copy that to your s2Member signup confirmation email panel.
|
|
Awesome. thanks guys. I’ll give those a try and let you know of my results.
|