UPDATE:
The only time the ERROR: Unable to Verify POST vars message pops up, is when a non-paypal customer is paying through the button that is generated through s2member. What is going on? Below is a log:
paypal-ipn.logexample.com/?s2member_paypal_notify=1
array (
'mc_gross' => '0.01',
'protection_eligibility' => 'Ineligible',
'payer_id' => 'UE688G4ZP78XU',
'tax' => '0.00',
'payment_date' => '15:14:46 Feb 16, 2011 PST',
'payment_status' => 'Completed',
'charset' => 'windows-1252',
'first_name' => 'first name',
'mc_fee' => '0.01',
'notify_version' => '3.0',
'custom' => 'example.com',
'payer_status' => 'unverified',
'business' =>
'info@example.com',
'quantity' => '1',
'verify_sign' => 'AB8uKJ-cgis5XVZJfu8yXdO6dhrpAY3qbMvC100CLUybMQw2-z0Kz5nO',
'payer_email' =>
'name@payeremail.com',
'txn_id' => '5XE84845UX8066423',
'payment_type' => 'instant',
'last_name' => 'last Name',
'receiver_email' =>
'info@example.com',
'payment_fee' => '0.01',
'receiver_id' => 'GUB6H9K9FSDBY',
'txn_type' => 'web_accept',
'item_name' => 'Content',
'mc_currency' => 'USD',
'item_number' => '1::1 Y',
'residence_country' => 'US',
'receipt_id' => '5218-4060-3238-7348',
'handling_amount' => '0.00',
'transaction_subject' => 'example.com',
'payment_gross' => '0.01',
'shipping' => '0.00',
's2member_log' =>
array (
0 => 'IPN received on: Wed Feb 16, 2011 11:15:16 pm 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 (web_accept|subscr_signup).',
4 => 's2Member txn_type identified as (web_accept|subscr_signup) w/o update vars.',
5 => 'Signup Confirmation Email sent to: "Payer Name" <name@payeremail.com>.',
6 => 'Creating an IPN response for `subscr_payment`. This will go into a Transient Queue for s2Member; and be processed during registration.',
),
'subscr_id' => '5XE84845UX8066423',
'eotper' => '1 Y',
'ccaps' => '',
'level' => '1',
'period3' => '1 Y',
'mc_amount3' => '0.01',
'initial_term' => '0 D',
'initial' => '0.01',
'regular' => '0.01',
'regular_term' => '1 Y',
'recurring' => '0',
)
paypal-rtn.logexample.com/?s2member_paypal_return=1
array (
's2member_log' =>
array (
0 => 'Unable to verify POST vars. This is most likely related to an invalid PayPal® configuration. Please check: s2Member -> PayPal® Options.',
1 => 'If you\'re absolutely SURE that your PayPal® 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 to PayPal® 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. 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 => 'array (
\'s2member_paypal_return\' => \'1\',
\'CONTEXT\' => \'X3-7SZn2ExXucINxlliZ_05NdFsrIIpaV9TcRYNLL_GiOwm9XgEZzWKQeV0\',
\'myAllTextSubmitID\' => \'\',
\'cmd\' => \'_flow\',
\'merchant_return_link\' => \'click here\',
\'form_charset\' => \'UTF-8\',
)',
4 => 'Redirecting Customer to the Login Page, due to an error that occurred.',
),
)