I had what I thought was a decent enough idea in that I took out the item number in the PayPal button code because my client only has one item (a one-year membership) and has no real need to track anything by product ID. I didn't want to confuse them with more data. This was apparently a bad idea.
I was rooting around the paypal-return.inc.php code in the s2Member plugin, and it looks like omitting the item number breaks all the parsing you're doing of the stuff PayPal sends back to the site. Somewhere around line 92 of the code (at least in my editor) it looks for $paypal["item_number"], which like I said I didn't use in my button code. I guess instead of failing gracefully and ignoring the fact that it's missing, it just fails on down to the else statement that writes the error I got in the logs.
I didn't realize until just now that this had nothing to do with subscriptions vs. buy now. It's just that the subscription test I did used the item number and the buy now I ran did not. D'oh!
It might be worth setting this up to where it can live with what I did and still allow the process to not fail and the member to register. I think what I did wasn't unreasonable though I should have thought more about the implications of it before I did it.
And knowing's half the battle!
Thanks.
T2Statistics: Posted by Tsquared — May 21st, 2010, 6:08 pm
]]>