latest stable versions: v150827 (changelog)

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

PayPal IPN Not Firing

Home Forums Community Forum PayPal IPN Not Firing

Tagged: ,

This topic contains 44 replies, has 3 voices. Last updated by  Cristián Lávaque 3 years, 9 months ago.

Page 2 Of Topic Replies

Viewing 19 replies - 26 through 44 (of 44 total)
Author Replies
Author Replies
Posted: Tuesday Mar 5th, 2013 at 1:58 pm #43798
Jim Jubak
Username: JubakAM

UPDATE: On a brand new install of WordPress, default theme (2012) and only S2 and S2 Pro modules, I’m still getting two IPN notifications back from PayPal (AMEX transaction). The first s2member_log value is as follows:

LOG ENTRY: Tue Mar 5th, 2013 @ precisely 6:50 pm UTC
PHP v5.2.13 :: WordPress® v3.5.1 :: s2Member® v130221 :: s2Member® Pro v130221
Memory 29.05 MB :: Real Memory 29.75 MB :: Peak Memory 29.30 MB :: Real Peak Memory 29.75 MB

  's2member_log' => 
  array (
    0 => 'IPN received on: Tue Mar 5, 2013 6:50:49 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: "Rob Maurizi" <rob@robmaurizi.com>.',
    6 => 'Storing `payment` for Subscription via ( `subscr-signup-as-subscr-payment` ).',
    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.',
  ),

The second one:

LOG ENTRY: Tue Mar 5th, 2013 @ precisely 6:50 pm UTC
PHP v5.2.13 :: WordPress® v3.5.1 :: s2Member® v130221 :: s2Member® Pro v130221
Memory 26.38 MB :: Real Memory 26.50 MB :: Peak Memory 26.51 MB :: Real Peak Memory 26.75 MB

  's2member_log' => 
  array (
    0 => 'IPN received on: Tue Mar 5, 2013 6:50:53 pm UTC',
    1 => 's2Member POST vars verified through a POST back to PayPal®.',
    2 => 'Unable to verify `$_SERVER["HTTP_HOST"]`. Please check the `custom` value in your Button Code. It MUST start with your domain name.',
  ),

I also didn’t receive ANY emails from here, so I’ll need to add an SMTP config plugin as well to see if that helps.

Posted: Tuesday Mar 5th, 2013 at 2:40 pm #43801
Jim Jubak
Username: JubakAM

UPDATE 2: Still on the clean install, I killed my first user & recurring billing profile, and now with the config SMTP plugin installed (and the correct email address in admin settings :-/), I was able to buy my sub w/ AMEX and I got a new user notification as well as a user & pass email, but still not the Signup Confirmation Email.

Also, testing a PayPal Express transaction, I still get

Error #36. Transaction failed: Fail to obtain approval for the online transaction.

on the front end, but in the logs, I see the following:

-------- Output string/vars: ( Tue Mar 5, 2013 7:33:29 pm UTC ) --------
RESULT=36&RPREF=RPC58AF62AEE&RESPMSG=Transaction failed: Fail to obtain approval for the online transaction&TRXRESULT=13&TRXPNREF=EUYPA628589E&TRXRESPMSG=Referral: 10422-The customer must return to PayPal to select new funding sources.&HOSTCODE=10422
array (
  'RESULT' => '36',
  'RPREF' => 'RPC58AF62AEE',
  'RESPMSG' => 'Transaction failed: Fail to obtain approval for the online transaction',
  'TRXRESULT' => '13',
  'TRXPNREF' => 'EUYPA628589E',
  'TRXRESPMSG' => 'Referral: 10422-The customer must return to PayPal to select new funding sources.',
  'HOSTCODE' => '10422',
  '__error' => 'Error #36. Transaction failed: Fail to obtain approval for the online transaction.',
)

After googling the response code, I came across a couple of threads here on the board and saw that the issue may be that I’m trying to use a checking account to pay for the sub. I deleted my checking account from the PayPal account I’m trying to pay with so the only source of funding is the same AMEX I successfully registered with. Alas, I get the same error.

Posted: Tuesday Mar 5th, 2013 at 3:08 pm #43804
Jim Jubak
Username: JubakAM

UPDATE 3: As someone else with the issue pointed out, if I set a trial on the subscription, the Express transaction works. This MAY be okay, as we’ll be offering 7 days for free, but it still seems like a bug someplace.

Still no receipts from PayPal or S2 though.

Posted: Thursday Mar 7th, 2013 at 9:48 am #43953
Jim Jubak
Username: JubakAM

tap tap… this thing on?

Posted: Friday Mar 8th, 2013 at 5:41 am #44046

Hi Jim.

Sorry for the delay. Thanks for your patience. It’s been a busy week for us here. :P

2 => ‘Unable to verify `$_SERVER[“HTTP_HOST”]`. Please check the `custom` value in your Button Code. It MUST start with your domain name.’,

About that error, I’d try the server check tool to see if it finds any problems, and I’d also verify that the PDT setting is correct.
Knowledge Base » Common Troubleshooting Tips » Server
[hilite path]Dashboard -› s2Member® -› PayPal® Options -› PayPal® PDT Integration[/hilite]

I deleted my checking account from the PayPal account I’m trying to pay with so the only source of funding is the same AMEX I successfully registered with. Alas, I get the same error.

Please make sure that the card you use to fund the PayPal account with which you’re paying the subscription, is not tied to the account you’re getting the payment with. You’re not using the same PayPal account to receive and make the payment, right?

As someone else with the issue pointed out, if I set a trial on the subscription, the Express transaction works.

Well, the trial will start, but it doesn’t mean the payment will be successful after that. I think it’s best to test the payments with 1 cent transactions without a trial until you make it work, then test with a trial if you want to give one.


I hope that helps. :)

Posted: Friday Mar 8th, 2013 at 9:44 am #44083
Jim Jubak
Username: JubakAM

I added the server tool and here are the issues it raised:

[WARNING] Plugin Directory Checksum (s2member)
[WARNING] Plugin Directory Checksum (s2member-pro)
[NOTICE] WordPress® Memory Limit
– suggesting 64MB, but server is set to 40MB

Not sure why the checksums are out of whack.. I pulled down the current stable versions off your site the other day when I set this environment up.

The PDT setting was still using the production server and not this clean test environment. I’ve updated that and run another AMEX transaction, and here’s the IPN log for that… Still no email receipt though…

LOG ENTRY: Fri Mar 8th, 2013 @ precisely 2:17 pm UTC
PHP v5.2.13 :: WordPress® v3.5.1 :: s2Member® v130221 :: s2Member® Pro v130221
Memory 27.83 MB :: Real Memory 28.00 MB :: Peak Memory 27.93 MB :: Real Peak Memory 28.00 MB
clean.jubakam.com/wordpress/wp-cron.php?doing_wp_cron=1362752273.7143139839172363281250
User-Agent: WordPress/3.5.1; http://clean.jubakam.com/wordpress
array (
  'RESULT' => '0',
  'RPREF' => 'RUY5A6495B66',
  'PROFILEID' => 'RP0000000012',
  'STATUS' => 'ACTIVE',
  'PROFILENAME' => '1362826378:1 D:1 W~clean.jubakam.com~1',
  'START' => '03092013',
  'TERM' => '0',
  'NEXTPAYMENT' => '03092013',
  'PAYPERIOD' => 'WEEK',
  'FREQUENCY' => '1',
  'TENDER' => 'P',
  'AMT' => '1.00',
  'ACCT' => '',
  'ABA' => '',
  'ACCTTYPE' => '',
  'AGGREGATEAMT' => '0.00',
  'AGGREGATEOPTIONALAMT' => '0.00',
  'MAXFAILPAYMENTS' => '2',
  'NUMFAILPAYMENTS' => '0',
  'RETRYNUMDAYS' => '2',
  'EMAIL' => 'contact@rhminteractive.com',
  'NAME' => 'Rob',
  'LASTNAME' => 'Maurizi',
  'CURRENCY' => 'USD',
  'ipn_signup_vars' => 
  array (
    'txn_type' => 'subscr_signup',
    'subscr_id' => 'RP0000000012',
    'custom' => 'clean.jubakam.com',
    'txn_id' => 'RP0000000012',
    'period1' => '1 D',
    'period3' => '1 W',
    'mc_amount1' => '0.00',
    'mc_amount3' => '1.00',
    'mc_gross' => '0.00',
    'mc_currency' => 'USD',
    'tax' => '0.00',
    'recurring' => '1.00',
    'payer_email' => 'contact@rhminteractive.com',
    'first_name' => 'Rob',
    'last_name' => 'Maurizi',
    'option_name1' => 'Originating Domain',
    'option_selection1' => 'clean.jubakam.com',
    'option_name2' => 'Customer IP Address',
    'option_selection2' => '71.251.200.211',
    'item_name' => '1 Day free / then $1 USD / Weekly (recurring charge, for ongoing access)',
    'item_number' => '1',
    'proxy_verified' => 'paypal',
    'subscr_gateway' => 'paypal',
    'eotper' => NULL,
    'ccaps' => NULL,
    'level' => '1',
    'ip' => '71.251.200.211',
    'initial_term' => '1 D',
    'initial' => '0.00',
    'regular' => '1.00',
    'regular_term' => '1 W',
  ),
  's2member_log' => 
  array (
    0 => 'Ignoring this status ( `ACTIVE` ). It does NOT require any action on the part of s2Member.',
  ),
)

Regarding the Express payment, it’s got a recurring billing profile and is set to try to auto-bill tomorrow. I’ll check on it then and see what happens. I’ve been trying it without a trial and it doesn’t work (as others on this board have said). I’ve got a ticket open with PayPal to try to figure out WHY it’s not working, but it seems like something’s not going through properly between S2 and them.

And yes, I’m using a different PayPal account than the one we’re trying to collect payments with.

Posted: Sunday Mar 10th, 2013 at 9:02 am #44206

Thanks for the update.

Not sure why the checksums are out of whack.. I pulled down the current stable versions off your site the other day when I set this environment up.

Something may have gone wrong with one or more of the files when you uploaded them.

Could you try reuploading them until the server check doesn’t throw that warning? Try via FTP with FileZilla.
s2Member® » Framework » Install/Upgrade Instructions
s2Member® » Pro » Install/Upgrade Instructions

The PDT setting was still using the production server and not this clean test environment. I’ve updated that and run another AMEX transaction, and here’s the IPN log for that… Still no email receipt though…

Thanks for fixing the PDT. The email not sent may be because the transaction still hasn’t worked…

I’d like to look at all the log entries. Could you please submit the login info for the clean installation? s2Member® » Private Contact Form

Thanks. :)

Posted: Monday Mar 11th, 2013 at 12:26 pm #44265
Jim Jubak
Username: JubakAM

I’ve updated the plugins and gotten the S2 framework checksum error to go away, but the S2 pro checksum error is still there… downloaded & uploaded it 3 times and still no change.

I’ve added the same user you have for the production site to this one.
URL is http://clean.jubakam.com/wordpress/

FTP creds are the same as well, but you should be able to see all of the logs via the plugin anyway.

Posted: Wednesday Mar 13th, 2013 at 9:09 am #44483

Thanks. I’ll give this a look now.

Posted: Wednesday Mar 13th, 2013 at 9:47 am #44487

I added the Email Log plugin, created a new pro-form for a single 1 cent payment, logged out and purchased. The process went fine, the email log says that the New User email was sent to me (and I got it) and a New Registration notification was sent to you. I also go a couple of opt-in confirmation emails from your autorresponder. But I didn’t see the s2Member Signup Confirmation in the Email Log, my inbox or spam box.

The odd thing is that the paypal-ipn log says that it was sent:

5 => ‘Signup Confirmation Email sent to: “Cristian Lavaque” .’,

Also odd is that it says that the user exists, but this was a new registration and the Singup Confirmation is not sent on upgrades of existing users…

6 => ‘User exists. Handling `payment` for Subscription via ( `web_accept` ).’,
7 => ‘Storing IPN signup vars now. These are associated with a User\’s account record; for future reference.’,

I’ll have to ask Jason about it…

Posted: Wednesday Mar 13th, 2013 at 4:47 pm #44534
Jim Jubak
Username: JubakAM

Great, that sounds hopeful…. I did get your new user notification. Out of curiosity, did you pay with PayPal or with a credit card?

Looking forward to hearing Jason’s take, as we really really really need to get things going again.

Posted: Friday Mar 15th, 2013 at 12:01 pm #44717
Staff Member

Thanks for the heads up on this thread :-)

6 => ‘User exists. Handling `payment` for Subscription via ( `web_accept` ).’,
7 => ‘Storing IPN signup vars now. These are associated with a User\’s account record; for future reference.’,

This is normal for a Pro Form integration. It’s expected; and it does not prevent the email from being sent out. If s2Member® says that it sent the email in the log entry, then it DID send the email. If it’s not coming through, I would suspect an issue with the underlying mail server.

Some mail servers don’t handle names so well. You can try this possible solution.

See: Dashboard -› s2Member® -› PayPal® Options -› Signup Confirmation Email (for Pro Forms)

Posted: Friday Mar 15th, 2013 at 4:29 pm #44744
Jim Jubak
Username: JubakAM

Just tried that, but no love… IPN log still says the email sent, but the email logging plugin Cristian installed doesn’t show that it went. Other emails go out, just not this confirmation email.

What’s the IPN log actually logging at that point? Is it just counting on a true return from wp_mail() or is it something more accurate?

Posted: Friday Mar 15th, 2013 at 5:19 pm #44753

I was talking with Jason about this a moment ago and he explained to me why the Email Log plugin is not logging s2Member’s Signup Confirmation email:

I just took a quick look at the source code for this plugin. I see this line.

add_action( 'init', 'EmailLog' );

That’s using the default hook priority of 10, which is far too late to pick up on IPN events. So nothing will be recorded by this plugin whenever s2 is handling post processing of a transaction.

add_action("init", "c_ws_plugin__s2member_paypal_notify::paypal_notify", 4);

We are at hook priority 4, which is before the email logger is attached. They should modify that plugin to this:

add_action( 'init', 'EmailLog', 1);

This one will do the trick:
http://wordpress.org/extend/plugins/wp-mail-log/

Could you remove the Email Log plugin and add the WP Mail Log instead, please, and try the test purchase again? Thanks!

Posted: Friday Mar 15th, 2013 at 5:27 pm #44754
Staff Member

What’s the IPN log actually logging at that point? Is it just counting on a true return from wp_mail() or is it something more accurate?

Yes, it is just recording that it made a call to wp_mail() — that’s it. That’s really all we can do. There is no way for s2Member® to actually verify the delivery of that email, which actually occurs through the server’s MTA (i.e. Sendmail, QMail, or whatever your server uses).

Posted: Wednesday Mar 20th, 2013 at 1:46 pm #45242
Jim Jubak
Username: JubakAM

Okay, that explains why the log plugin wasn’t catching the email, but it doesn’t explain why NO ONE has gotten an email receipt from the plugin…

The site can send emails and does send emails, but THESE emails don’t make it out… Could there be something someplace else that’s choking it? Would the new email log be helpful to look at? There’s a ton of stuff in there that may or may not indicate an issue, but I wouldn’t know what to look for in this case.

Posted: Thursday Mar 21st, 2013 at 11:04 am #45351
Staff Member

Thanks for your reply :-)

Yes, the new email log should be helpful, and server logs can also be helpful. If your site uses Sendmail, you can check your log files to see if the server is rejecting the email for some reason, or if there is some other problem.

I can tell you this is not a widespread issue, so I will have to assume that it’s something server-specific, or installation-specific. If you are having trouble with the log files, please post those privately and we’ll review them for you. Try to give me something to go on also (i.e. a specific transaction ID, or a specific email address; where I can do a lookup on a specific email message that should have been sent but was not).

Please use: s2Member® » Private Contact Form

Thanks!

Posted: Thursday Mar 28th, 2013 at 10:17 am #45974
Jim Jubak
Username: JubakAM

Jason- Thanks…. Interesting development… I tried putting together a workaround for receipts using the Notifications API calls with mixed results:

1. Just hitting my receipt emailer script passing all of the params in the URL works great. I can send an email from the server (after loading WP so that the message goes through the SMTP login plugin) and everything is hunky dory..

2. Following your KB article on setting up a notification via a plugin (hooking into init), the email doesn’t go. However, for each transaction I get the following errors logged on the server:

[Tue Mar 26 08:40:19 2013] [error] [client 67.205.51.139] sendmail: fatal: open /etc/postfix/main.cf: No such file or directory

There’s actually 2 of them per transaction, and I’m wondering if this is the issue with a) the actual receipt that S2 is supposed to send and b) my workaround. Something about sending emails from within WP, perhaps at a certain point in the WP cycle… I need to do some more debugging to see if these logs are in fact stemming from those emails, but I’m guessing that this fatal error w/ sendmail config is choking those two emails.

:: UPDATE ::
The two error logs were for the receipt only… it was trying to send to two different users (the subscriber’s email address and mine). I changed it to only mine and now it just throws one error (attempting to send only one email now). Removing the init action hook on my notification workaround didn’t have any bearing on the errors.. Seems to only be the S2 generated receipt that’s generating errors. Also, I had S2 customize the user/pass email and the new user notification emails and those come in fine with no errors in the log.

:: UPDATE 2 ::
After dealing w/ Dreamhost support, they insist it’s a configuration issue in the software since other emails send properly, and didn’t offer any assistance to debug the sendmail error in the log.

:: UPDATE 3 ::
I tried turning on emails for API notifications, and that message never made it and also generated the same sendmail error in the logs.

A question for you… If I customize the user/pass and new user notifications, are they then sent by an S2 class, or are you still using WP Core to send those and you’re just customizing the copy via a filter? I am receiving customized emails, but if you’re not sending them, then in effect, I’m not receiving ANY emails that S2 sends.

Dammit, I really wish we could just talk through this. Can I PM you guys my phone # or something so we can figure this out?! I know you’re busy, and I’m busy too, and I’ve got a client breathing down my neck to get his damn site back up and running and this “support” channel really isn’t working out.

:: UPDATE 3.1 ::
After creating a main.cf file in the postfix directory, the plugin no longer throws an error, but the emails still don’t go.

Posted: Friday Mar 29th, 2013 at 7:44 am #46030

Jim, while waiting for Jason’s reply, why don’t you try creating a clean installation of WP to test this and see if it has the same problem? If it doesn in that same server, why not try a different one?

Like Jason said, and I agree, it’s specific to your installation, because this is not happening to other site owners. It could be the current installation you’re working with, or the server you’re using. It’d help to determine which.

Knowledge Base » Common Troubleshooting Tips

Viewing 19 replies - 26 through 44 (of 44 total)

This topic is closed to new replies. Topics with no replies for 2 weeks are closed automatically.

Old Forums (READ-ONLY): The community now lives at WP Sharks™. If you have an s2Member® Pro question, please use our new Support System.

Contacting s2Member: Please use our Support Center for bug reports, pre-sale questions & technical assistance.