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.

Topic Author Topic
Posted: Friday Jan 18th, 2013 at 2:48 pm #38145
Jim Jubak
Username: JubakAM

Hey folks… New to s2m and I’m having an issue with setting up PayPal:

We’re using ProForms and I’ve got my form set up to register people… We’re switching from Authorize.net to PayPal and from a different membership software, but we’d never used PayPal or any kind of ARB solution before.. everything was manual..

Either way, when testing a paid transaction, I get to PayPal, log in w/ my PayPal credentials, and then get returned back to the form. Shouldn’t I be taken back to the return URL? I don’t get any emails, or anything (from PayPal or WP), and my user is never created in WP.

If I check in PayPal, I don’t see any IPN transactions.
I don’t have a paypal-ipn log file to check (only paypal-api and paypal-rtn)…

Let me know what info you want to see from logs, or whatever and I can dig it out and post it.

Thanks!
-Rob

ps. This is a repost of my post in the community forum

List Of Topic Replies

Viewing 25 replies - 1 through 25 (of 44 total)
Author Replies
Author Replies
Posted: Sunday Jan 20th, 2013 at 3:26 pm #38460
Staff Member

Thanks for your inquiry. ~ We appreciate your patience :-)

Let’s start by taking a look at the shortcode that you’ve generated with s2Member® to facilitate either a Payment Button or a Pro Form. Please paste your shortcode into a reply and I will assist you.

It also sounds like you might be missing a piece of the PayPal integration. Please review all of your options here (see: Dashboard -› s2Member® -› PayPal® Options ) and let us know if you had trouble with any of them. Feel free to post screenshots to help us understand. Thanks!

Posted: Tuesday Jan 22nd, 2013 at 11:06 am #38957
Jim Jubak
Username: JubakAM

Here’s the shortcode:

[s2Member-Pro-PayPal-Form level="1" ccaps="" desc="$1 USD / Monthly ( recurring charge, for ongoing access )" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="jubakam.com" ta="0" tp="0" tt="D" ra="1" rp="1" rt="M" rr="1" rrt="" rra="2" accept="paypal,visa,mastercard,amex,discover,maestro,solo" accept_via_paypal="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0" /]

Everything in PayPal Options is configured with the exception of PayFlow. I’m not sure we have PayFlow set up on PayPal, as I don’t see anything mentioning it in our profile/settings areas.

Posted: Wednesday Jan 23rd, 2013 at 10:49 am #39167
Jim Jubak
Username: JubakAM

Any more help here? We can’t get our system up & running again without being able to take payments, and this is where we’re stuck.

I tried running the environment test plugin and I get checksum errors for both the standard s2 and the s2pro files.

Thanks!

Posted: Thursday Jan 24th, 2013 at 6:04 am #39359
Staff Member

Thanks for the follow-up. I appreciate your patience :-)

Your shortcode looks good. The next step is to verify that you DO have Recurring Billing service setup for your PayPal Pro account? Are you paying extra money each month for the PayPal Recurring Billing service?

If problems persist, please send us a Dashboard login so we can review your log files and provide more accurate information. See: s2Member® » Private Contact Form

Posted: Friday Jan 25th, 2013 at 10:27 am #39510
Jim Jubak
Username: JubakAM

Jason- Thanks… Sending info over via the contact form. We’ve signed up for everything with the name “PayFlow” on it, and now have an arsenal of logins and passwords and vendor IDs, etc., but nothing seems to be working, as now I keep getting “Error #1. User authentication failed.”

Let me know what you can come up with…

PS, I also included the developer’s email address in the contact form.. Please include him in any communications

Posted: Friday Jan 25th, 2013 at 6:57 pm #39560
Staff Member

Details received. Thank you!

The Dashboard login that we have is working properly, but the FTP access is not working on our end. Please check those credentials for us, and submit a functional FTP login via this private contact form: s2Member® » Private Contact Form, or let us know if there something more we need to gain access. Thanks!

Jason- Thanks… Sending info over via the contact form. We’ve signed up for everything with the name “PayFlow” on it, and now have an arsenal of logins and passwords and vendor IDs, etc., but nothing seems to be working, as now I keep getting “Error #1. User authentication failed.”

This could indicate that you have the wrong type of PayPal account, or that the details entered in this section of your Dashboard do not match what the PayPal API is expecting from calls originating from your server.

See also: Dashboard -› s2Member® -› PayPal® Options -› Payflow Account Details

Please see this article for clarification about which type of PayPal account you will need.
Knowledge Base » PayPal® Compatibility (Account Types)

Once we have FTP access, we can also review your s2Member log files.

Posted: Friday Feb 8th, 2013 at 1:55 pm #41215
Jim Jubak
Username: JubakAM

Okay, I’ve re-sent the contact form with corrected FTP info. I forgot the WP password I gave you, so don’t use the one in this contact form, but use the original one I sent.

I believe we’re set up as a Business / PayFlow account now, since it took them forever to verify the account.

When I log into PayPal and go to the API pages, I still see the same old info, nothing referring to PayFlow. I can log into PayPal Manager for their PayFlow gateway product, but not sure if that’s the right info.

Please help!!!

Thanks!

Posted: Monday Feb 11th, 2013 at 7:36 pm #41468
Staff Member

Thanks for the follow-up :-)

I investigated your installation and reviewed your s2Member® log files. As you mentioned, I find repeated log entries like this during s2Member’s attempts to communicate with the PayFlow API. Found inside: /plugins/s2member-logs/paypal-payflow-api.log

-------- Output string/vars: ( Fri Feb 8, 2013 7:08:50 pm UTC ) --------
RESULT=1&RESPMSG=User authentication failed
array (
  'RESULT' => '1',
  'RESPMSG' => 'User authentication failed',
  '__error' => 'Error #1. User authentication failed.',
)

This indicates one of three possible issues…

1. You do not have a PayPal Payments Pro account, you have a PayFlow-only account. s2Member® supports PayPal Payments Pro (PayFlow Edition) and PayPal Payments Pro (without PayFlow). However, s2Member® does NOT support PayFlow-only accounts. See: Knowledge Base » PayPal® Compatibility (Account Types)

2. You have a PayPal Payments Pro (PayFlow Edition) account, but you have entered details for s2Member® that PayFlow is rejecting. Please review your configuration here (Dashboard -› s2Member® -› PayPal® Options -› PayFlow™ Account Details), and also speak with PayPal Merchant Support to verify that you have the correct PayPal Pro (and PayFlow) API Credentials. I suspect this is the underlying issue on your installation.

3. You have a PayPal Payments Pro account (without PayFlow). From what you’ve said, I doubt this is case. However, if this IS the case, please remove your configuration from this section of the Dashboard, so that s2Member® is not attempting to communicate with the PayFlow APIs. See: Dashboard -› s2Member® -› PayPal® Options -› PayFlow™ Account Details

Please let us know if problems persist :-)

Posted: Tuesday Feb 12th, 2013 at 3:53 pm #41584
Jim Jubak
Username: JubakAM

No, we’ve confirmed w/ PayPal that we have a PayPal Pro PayFlow edition account, so we should be good to go there.

I don’t get authentication issues when using a manager.paypal.com user (full API privileges), but upon trying to pay with PayPal, I get sent back to the form with the following added to the URL:

?s2member_paypal_xco=s2member_pro_paypal_checkout_return&token=EC-42P75351YS342483E

After this transaction, I have the following in my paypal-payflow-api.log (note, I’ve ******’d out emails & API credentials):

-------- Input vars: ( Tue Feb 12, 2013 8:40:34 pm UTC ) --------
TRXTYPE[1]=A&ACTION[1]=S&TENDER[1]=P&RETURNURL[95]=http://jubakam.local/membership-signup/?s2member_paypal_xco=s2member_pro_paypal_checkout_return&CANCELURL[95]=http://jubakam.local/membership-signup/?s2member_paypal_xco=s2member_pro_paypal_checkout_cancel&PAGESTYLE[6]=paypal&LOCALECODE[0]=&NOSHIPPING[1]=1&ALLOWNOTE[1]=0&AMT[4]=0.00&CURRENCY[3]=USD&L_BILLINGTYPE0[17]=RecurringPayments&L_BILLINGAGREEMENTDESCRIPTION0[56]=$1 USD / Weekly ( recurring charge, for ongoing access )&ADDROVERRIDE[1]=1&SHIPTONAME[11]=Rob Maurizi&SHIPTOSTREET[0]=&SHIPTOCITY[0]=&SHIPTOSTATE[0]=&SHIPTOCOUNTRY[2]=US&SHIPTOZIP[0]=&EMAIL[20]=******@******.com&VERBOSITY[6]=MEDIUM&USER[6]=******&PARTNER[6]=PayPal&VENDOR[12]=******&PWD[24]=******
array (
  'TRXTYPE' => 'A',
  'ACTION' => 'S',
  'TENDER' => 'P',
  'RETURNURL' => 'http://jubakam.local/membership-signup/?s2member_paypal_xco=s2member_pro_paypal_checkout_return',
  'CANCELURL' => 'http://jubakam.local/membership-signup/?s2member_paypal_xco=s2member_pro_paypal_checkout_cancel',
  'PAGESTYLE' => 'paypal',
  'LOCALECODE' => '',
  'NOSHIPPING' => '1',
  'ALLOWNOTE' => '0',
  'AMT' => '0.00',
  'CURRENCY' => 'USD',
  'L_BILLINGTYPE0' => 'RecurringPayments',
  'L_BILLINGAGREEMENTDESCRIPTION0' => '$1 USD / Weekly ( recurring charge, for ongoing access )',
  'ADDROVERRIDE' => '1',
  'SHIPTONAME' => 'Rob Maurizi',
  'SHIPTOSTREET' => '',
  'SHIPTOCITY' => '',
  'SHIPTOSTATE' => '',
  'SHIPTOCOUNTRY' => 'US',
  'SHIPTOZIP' => '',
  'EMAIL' => '******@******',
  'VERBOSITY' => 'MEDIUM',
  'USER' => '******',
  'PARTNER' => 'PayPal',
  'VENDOR' => '******',
  'PWD' => '******',
)
-------- Output string/vars: ( Tue Feb 12, 2013 8:40:35 pm UTC ) --------
RESULT=0&RESPMSG=Verified&TOKEN=EC-42P75351YS342483E&CORRELATIONID=d1123405c2301
array (
  'RESULT' => '0',
  'RESPMSG' => 'Verified',
  'TOKEN' => 'EC-42P75351YS342483E',
  'CORRELATIONID' => 'd1123405c2301',
)

This is a local environment, hence the .local TLD, but I’ll test it out on production shortly. I’m curious about the return URLs.. Where is that configured, and why isn’t it using the IPN URL?

Posted: Wednesday Feb 13th, 2013 at 12:34 pm #41613
Jim Jubak
Username: JubakAM

Tested it all out on production, and I’m seeing the same results. Transaction returns to the form with the same vars appended to the URL, and the log output has the same result:

Result: 0
RspMsg: Verified
along with a token and correlation ID

We need to get this resolved quickly, as we’re dead in the water without being able to take anyone’s money.

Posted: Friday Feb 15th, 2013 at 3:14 am #41792
Staff Member

Thanks for your reply :-)

I’m taking another look at your log files for recent activity. It appears that your Payflow API credentials are now passing through correctly (i.e. PayPal is authenticating your API calls now through the Payflow API).

I’m seeing several API calls to setup Express Checkout where a customer is redirected to PayPal to complete checkout. However, there is no recent activity to suggest that a customer ever returns from PayPal checkout; because there would be additional log entries that actually process the transaction using the TOKEN value that PayPal returns to s2Member®.

This is a local environment, hence the .local TLD, but I’ll test it out on production shortly. I’m curious about the return URLs.. Where is that configured, and why isn’t it using the IPN URL?

Express Checkout needs URLs to bring the customer back to after agreeing to your terms at PayPal checkout. This log entry does not indicate any transaction went through, it’s simply an API call that sets up an Express Checkout session. Did you actually complete checkout and return to your site?

Posted: Friday Feb 15th, 2013 at 9:50 am #41880
Jim Jubak
Username: JubakAM

Okay, that makes a little sense. What’s happening is that I get to PayPal, authorize the payment and then I get returned to the site with the following query params appended to the URL:

?s2member_paypal_xco=s2member_pro_paypal_checkout_return&token=EC-42P75351YS342483E

Note, that this is when trying to use PayPal as a payment method.

Trying to use an AMEX as the payment method, I get the following error:

Error #1. User authentication failed: Recurring Billing.

Again, what we’re trying to do is sell a recurring billing subscription whereby the user can pay with either a major US credit card, or with PayPal (and PayPal isn’t even a requirement).

Is there a better way to get support other than the several-day turnaround on the forum? Can we knock this out over the phone in real time?

Posted: Monday Feb 18th, 2013 at 3:15 pm #42317
Staff Member

Thanks for the follow-up :-)

I just took another look at your installation and log files. I see what you’re talking about. Definitely an issue. Unfortunately this error comes directly from the Payflow API during s2Member’s attempt to process the transaction for you. Payflow is not accepting the API Credentials you’ve supplied s2Member with.

I suggest that you take one of those log entries and show it to the PayPal support team. You will need to ask them why the credentials that you’ve supplied are not passing authentication with the Payflow API. I can confirm this does NOT occur on other s2Member installations; so the issue in this log entry is installation-specific (or PayPal account-specific).

array (
  'RESULT' => '1',
  'RPREF' => 'RLF58C14EC31',
  'RESPMSG' => 'User authentication failed: Recurring Billing',
  '__error' => 'Error #1. User authentication failed: Recurring Billing.',
)

In this log entry, the term “User” is referring to the merchant (e.g. your API credentials). This error message comes directly from the Payflow API. We need PayPal to help explain this please.

When you submit this to PayPal, be sure to include the ENTIRE log entry, which also includes the API Credentials that you supplied s2Member with. They will need to see the entire log entry to help you with this. See: https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_testing_SBSupport

If problems persist, I would also suggest that you test your Payment Gateway on a clean/test installation of WordPress® where there are no other plugins installed but s2Member (running a default WP theme). This eliminiates the possiblity of a plugin or theme conflict somewhere, which may add to confusion during this type of testing. See: Knowledge Base » Common Troubleshooting Tips

Please let us know what PayPal tech support has to say. Thanks!

Posted: Monday Feb 18th, 2013 at 3:17 pm #42318
Staff Member

Is there a better way to get support other than the several-day turnaround on the forum? Can we knock this out over the phone in real time?

No, I’m sorry but our support service is limited to support provided here in the Customer Support Forums. We do not offer phone support at this time.

See: s2Member® » Support Policy

Posted: Tuesday Feb 19th, 2013 at 10:31 am #42484
Jim Jubak
Username: JubakAM

Thanks… I’ve reached out to PayPal with the logs, so we’ll see what they say. Yes, I knew you didn’t do phone support, but this thread has been going on for quite a while now (a month!), and your “priority” customer support seems a little sluggish, especially when it comes to taking a business back online :-/

Now, another question. Do we need to be using PayFlow’s hosted checkout pages? I’m guessing we don’t since all of that information is being requested and then posted via the shortcode registration form, but I figured I’d ask since it seems like something’s just not right here.

I’ll set up a clean environment and test out the plugin shortly to see if we still have issues or not.

Thanks!

Posted: Thursday Feb 21st, 2013 at 2:25 am #42659
Staff Member

Thanks for the follow-up :-)

Thanks… I’ve reached out to PayPal with the logs, so we’ll see what they say. Yes, I knew you didn’t do phone support, but this thread has been going on for quite a while now (a month!), and your “priority” customer support seems a little sluggish, especially when it comes to taking a business back online :-/

Our average response time is 24-48 hours; tickets are answered in the order they were received. Please let us know what PayPal® reports back with. If s2Member® is not granted permission to make API calls, there’s not much we can do (for now). Once s2Member has permission, you should have something to report back with.

Now, another question. Do we need to be using PayFlow’s hosted checkout pages? I’m guessing we don’t since all of that information is being requested and then posted via the shortcode registration form, but I figured I’d ask since it seems like something’s just not right here.

No, you won’t need to use hosted checkout pages with Pro Forms. Pro Forms keep things on-site; so that everything is processed through payment gateway APIs.

The only exception to this, is with PayPal Express Checkout, where a customer chooses to pay you with PayPal; and they intentionally leave your site to complete checkout via PayPal.com.

Posted: Friday Feb 22nd, 2013 at 5:18 pm #42861
Jim Jubak
Username: JubakAM

Okay, we didn’t have recurring billing set up at PayPal’s end, but now it is.

I’ve mostly successfully purchased a sub with an AMEX, but paying with PayPal still fails in the same way it has been. I was hoping it was a silent error on PayPal’s part since recurring billing wasn’t set up, but alas, that’s not the case.

Is there a way to suppress the PayPal radio button in the payment section of the pro form? So that we’d just use PayPal as the gateway, but not offer paypal as a payment option? That would work around the issue for now.

Also, regarding my mostly successful transaction, I never received any emails, either from the site, or from PayPal. The payment is there in PayPal, and the account was created in WordPress, but nothing was sent from either place and that’s going to be trouble.

WordPress used to send emails without a problem using our old system, so I don’t think it has anything to do with SMTP servers, etc. I’ve reached out to the owner of the site’s email address to see if she’s received anything by way of admin notifications, but would you have any pointers as places to check either in S2 or at PayPal?

Thanks!
-Rob

Posted: Tuesday Feb 26th, 2013 at 5:43 am #43208

Hi Rob.

I’ve mostly successfully purchased a sub with an AMEX, but paying with PayPal still fails in the same way it has been. I was hoping it was a silent error on PayPal’s part since recurring billing wasn’t set up, but alas, that’s not the case.

Have you confirmed that you entered all the PayFlow API credentials properly? This video may help: http://www.youtube.com/watch?v=A0jOq2MRTVQ

Is there a way to suppress the PayPal radio button in the payment section of the pro form? So that we’d just use PayPal as the gateway, but not offer paypal as a payment option? That would work around the issue for now.

I’m afraid not. PayPal requires to have PayPal as one of the payment options.

Also, regarding my mostly successful transaction, I never received any emails, either from the site, or from PayPal. The payment is there in PayPal, and the account was created in WordPress, but nothing was sent from either place and that’s going to be trouble.

Whe you say “either place”, do you mean your website and PayPal? If so, maybe there’s a problem with the email account receiving the emails? If the payment is there in PayPal, it’d be very odd that PayPal didn’t send an email.

Have you checked the spam folder? If the s2Member email is not there, you can try the tips in this article: Knowledge Base » Troubleshooting Email Delivery Problems

If you try the email log plugin, does it show emails being sent by the site about the transaction? Like the signup confirmation email. [hilite path]Dashboard -› s2Member® -› PayPal® Options -› Signup Confirmation Email[/hilite]

What do s2Member’s logs say about it? Do they mention the confirmation email being sent to the customer? [hilite path]Dashboard -› s2Member® -› Log Files (Debug) -› s2Member® Log Viewer[/hilite]


I hope that helps!

Posted: Wednesday Feb 27th, 2013 at 6:18 pm #43351
Jim Jubak
Username: JubakAM

Okay, we’re getting closer… Got the first email issue sorted out, in that none of the site-generated emails were getting sent out properly due to SMTP issues.

Now that we’re getting New User notifications from WP, I’m hitting this again. I registered again using an AMEX with PayPal Pro as the gateway via a pro form.

I got my default New User email from WordPress, and the admin email account got a new user notification from WordPress. However, I didn’t receive my Signup Confirmation Email from S2 which I believe I should have, no? Nor did I receive a receipt email from PayPal (I turned that on under ARB settings in PayPal Manager). I’ll troubleshoot that with them, but I still need to figure out what happened to the Signup Confirmation Email. The email log plugin doesn’t indicate that it attempted to send this email either, so something’s broken down somewhere. (FWIW, the log plugin DOES show the 2 emails that we did receive).

And we still can’t accept standard paypal (express?) payments, but I’ll follow up with them for more information before coming back here.

Posted: Thursday Feb 28th, 2013 at 6:50 am #43393

I’m taking a look at your installation and noticed in the PayFlow integration that you entered different values for the Payflow® API Username and Vendor. From what I know, they’d usually be the same, so I wanted to make sure that it’s correct to have them different in your case. http://www.youtube.com/watch?v=A0jOq2MRTVQ

In the IPN log I see repeatedly either a problem with the custom attribute or a duplicate IPN message. For example, with the custom attribute:

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

And the custom attribute is empty:

‘custom’ => ”,

Could you show me the shortcode you’re using? I’m interested to see the custom attribute. [hilite path]Dashboard -› s2Member® -› PayPal® Pro Forms -› Shortcode Attributes -> custom[/hilite]

With those errors, it looks like nothing gets to the point where s2Member would email the Singup Confirmation email, that’s why it’s not happening. Not sure why PayPal isn’t, though.

Posted: Thursday Feb 28th, 2013 at 10:36 am #43413
Jim Jubak
Username: JubakAM

Here’s the short code:

[s2Member-Pro-PayPal-Form level="1" ccaps="" desc="$1 USD / Weekly (recurring charge, for ongoing access)" ps="paypal" lc="" cc="USD" dg="0" ns="1" custom="jubakam.com" ta="0" tp="0" tt="D" ra="1" rp="1" rt="W" rr="1" rrt="" rra="2" accept="paypal,visa,mastercard,amex,discover,maestro,solo" accept_via_paypal="paypal" coupon="" accept_coupons="0" default_country_code="" captcha="0" /]

Custom is clearly there and correct. That’s odd about the duplicate IPN calls though… why would those be happening? And they contain different data too…

The API username I’m using is an API-only (API_FULL_TRANSACTIONS) user, so as not to expose the admin login credentials to our PayFlow account. This seems to be legit, and PayPal confirmed that it’s okay to do… If you think I should change it to the standard admin account, I can give that a shot and see what happens.

Posted: Thursday Feb 28th, 2013 at 11:22 am #43417
Jim Jubak
Username: JubakAM

Also, why are you storing full CC account and user/pass info in plain text in the reg-handler.log?! That seems a bit shady, if you ask me.

Posted: Saturday Mar 2nd, 2013 at 5:23 am #43580

Custom is clearly there and correct.

Yes, that looks correct in the shortcode.

That’s odd about the duplicate IPN calls though… why would those be happening? And they contain different data too…

Yeah, I’m not sure either. I’ll ask Jason about it.

The API username I’m using is an API-only (API_FULL_TRANSACTIONS) user, so as not to expose the admin login credentials to our PayFlow account. This seems to be legit, and PayPal confirmed that it’s okay to do… If you think I should change it to the standard admin account, I can give that a shot and see what happens.

You can test it if you want, but I think it’s fine. I just wanted to make sure that the credential was actually valid and not just a mistake.

Also, why are you storing full CC account and user/pass info in plain text in the reg-handler.log?! That seems a bit shady, if you ask me.

I don’t know. I’ll ask Jason about this too.

I’ll let you know as soon as I hear back from him. Thanks for your patience. :)

I’ll set up a clean environment and test out the plugin shortly to see if we still have issues or not.

Did you get around to test this? Is this clean installation what you’ve been testing with?

Posted: Saturday Mar 2nd, 2013 at 5:36 pm #43642
Staff Member

Thanks for the heads up on this thread :-)

I just did a quick review of your log files.

I find that your existing Payflow integration is configured properly, because API calls are succeeding; so your Payflow Credentials are correct.

Regarding Express Checkout…

I see the following in your most recent paypal-ipn.log file entry.

'charset' => 'windows-1252',
'first_name' => 'Rob',
'mc_fee' => '0.04',
'notify_version' => '3.7',
'custom' => '',
'payer_status' => 'unverified',
'txn_type' => 'web_accept',
'txn_id' => '31B920102P4550115',
and so on —
 's2member_log' => 
array (
  0 => 'IPN received on: Sat Mar 2, 2013 12:41:27 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.',
),

If you are absolutely sure the custom="" Shortcode Attribute is defined in the original PayPal Button or Pro Form Shortcode; I would look elsewhere. The custom="" value is empty in this IPN log entry; indicating there is a problem somewhere. Are you running a central IPN processor or anything non-standard that might be losing the custom value?

On further inspection, it seems this transaction did NOT originate from the Shortcode you posted earlier, because this is a Buy Now transaction (web_accept) and your Pro Form Shortcode is setup for Recurring Billing. If you have a second Shortcode for Buy Now transactions, it could be that one that’s missing the custom="" Shortcode Attribute.

It’s also possible that this particular IPN is being sent to s2Member; but it actually originated from somewhere else (which is why it could be missing the custom="" value). I noticed it is ALSO missing the item_number value as well as other details that s2Member always defines when it processes a transaction through PayPal®. This is why s2Member® will check for the custom="" value to begin with, to ensure that it’s NOT processing a transaction from another integration on the same PayPal® account (perhaps from another site that you operate).

Regarding this paypal-ipn.log entry…

's2member_log' => 
array (
  0 => 'IPN received on: Wed Feb 27, 2013 10:59:05 pm UTC',
  1 => 's2Member POST vars verified with a Proxy Key',
  2 => 's2Member originating domain ( `$_SERVER["HTTP_HOST"]` ) validated.',
  3 => 'Not processing. Duplicate IPN.',
  4 => 's2Member `txn_type` identified as ( `web_accept|subscr_signup` ).',
  5 => 'Duplicate IPN. Already processed. This IPN will be ignored.',
),

This indicates one of two things.

1. It’s actually a duplicate IPN that s2Member® really should ignore.
2. s2Member® is unable to properly get/set WordPress® Transient data due to plugin conflicts; and is therefore unable to properly detect duplicate IPN data because it does NOT have proper return values from get_transient() or set_transient(). See: http://codex.wordpress.org/Transients_API

Object caching plugins are known to cause issues like this.
~ On your installation I found the following potential conflict.

Posted: Monday Mar 4th, 2013 at 11:02 am #43707
Jim Jubak
Username: JubakAM

Odd… those caching files were remnants of W3TotalCache which was deactivated. I removed those files (and the plugin is still deactivated)…

The bottom two logs in paypal-ipn are this morning’s AMEX test… same issue w/ the duplicate logs. And no receipt from S2, although I got the WP new user & user/pass emails.

When I then tried to test PayPal Express (coming from the same pro form), I got the following error when I came back from PayPal:

Error #36. Transaction failed: Fail to obtain approval for the online transaction.
Viewing 25 replies - 1 through 25 (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.