Okay everyone freeze ...
Only if you have an INVALID PARAMATER error ... should you be in this thread ...
If you have the invalid paramater error answer the following questions:
1 Who do you host with?
2 unix or windows?
3 what version of php?
4 clean install or upgrade?
5 are you using IPN or PayPal Express?
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed?
7 is there a pattern or specific country that this happens with?
8 Live or Sandbox?
Then sit quietly while we look at this further to determin the pattern here ...
Thanks!
Linda McGrath
If you have to think ... you haven't been zenned ...
Did YOU buy the Zen Cart Team a cup of coffee and a donut today? Just click here to support the Zen Cart Team!!
Are you using the latest? Perhaps you've a problem that's fixed in the latest version: [Upgrade today: v1.5.5]
Officially PayPal-Certified! Just click here
Try our Zen Cart Recommended Services - Hosting, Payment and more ...
Signup for our Announcements Forums to stay up to date on important changes and updates!
1 Who do you host with? Bluehost
2 unix or windows? Bluehost: Linux
phpmyadmin: Localhost via UNIX socket
3 what version of php? phpmyadmin 2.9.0.2 mysql: 4.1.21
4 clean install or upgrade? Clean install through fantastico with my host
5 are you using IPN or PayPal Express? when receiving this error? Paypal Express
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed? I have both installed but only Paypal Express turned on.
7 is there a pattern or specific country that this happens with? No
8 Live or Sandbox? Live
Last edited by CafePrima; 16 Feb 2007 at 03:42 AM.
1 Who do you host with?
Infinology
2 unix or windows?
UNIX (FreeBSD 4.10)
3 what version of php?
Can't figure this out. I can probably get an answer .... eventually.
4 clean install or upgrade?
Installed all files over 1.3x, database upgrade. Installed Feb 8 patch. Uninstalled and reinstalled PayPal IPN module. Re-pasted API parameters.
5 are you using IPN or PayPal Express?
IPN 'cos PayPal express fails.
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed?
Both are installed.
7 is there a pattern or specific country that this happens with?
So far - US only.
8 Live or Sandbox?
Live
1 Who do you host with? Bluehost
2 unix or windows? Linux
3 what version of php? Php 4.4.4
4 clean install or upgrade? Clean
5 are you using IPN or PayPal Express? PayPal Express
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed?
Currently I only have Express installed (removed PHP because I couldn't get the echeck issue fixed, then removed Express when it quit working and re-installed IPN when Express quit working a few days ago. I have tried running both together to see if it worked, but no change)
7 is there a pattern or specific country that this happens with? I have only had transactions from the US
8 Live or Sandbox? Live
Then sit quietly while we look at this further to determin the pattern here ... (My pleasure)
Thanks!
THANK YOU!!!!
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed?
Currently I only have Express installed (removed PHP because I couldn't get the echeck issue fixed, then removed Express when it quit working and re-installed IPN when Express quit working a few days ago. I have tried running both together to see if it worked, but no change)
**edited***
I meant removed IPN! Sorry!
This is UPDATED info after talking to my host provider. New info is red. I can't delete the other post or I would.
1 Who do you host with? Bluehost
2 unix or windows? Bluehost: Linux
phpmyadmin: Localhost via UNIX socket
3 what version of php? 4.4.4
4 clean install or upgrade? Clean install through fantastico with my host
5 are you using IPN or PayPal Express? when receiving this error? Paypal Express
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed? I have both installed but only Paypal Express turned on.
7 is there a pattern or specific country that this happens with? No
8 Live or Sandbox? Live
FOUND IT!!!! Fixed it (maybe).
but first, the requested data:
1 Who do you host with? goDaddy
2 unix or windows? Linux
3 what version of php? 5.0.4
4 clean install or upgrade? Clean install + latest patch.
5 are you using IPN or PayPal Express? when receiving this error? Paypal Express
6 Do you have 1 or both installed? Meaning, if not using one or the other do you have the other one installed? - only Paypal Express
7 is there a pattern or specific country that this happens with? Definitely US, not certain of others.
8 Live or Sandbox? Live
Being impatient i started looking at the code. In paypalwpp.php in function ec_step2_finish around line 1770 there is a nice check
if (!isset($paypal_ec_payer_info['ship_country_code']))
Well, it just happens that it IS set to '' (nothing).
Changing that line to:
if ((!isset($paypal_ec_payer_info['ship_country_code'])) OR ($paypal_ec_payer_info['ship_country_code']=='')) {$paypal_ec_payer_info['ship_country_code'] = $country1->fields['countries_iso_code_2']; $_SESSION['paypal_ec_payer_info']['ship_country_code']= $country1->fields['countries_iso_code_2'];}
allowed me to successfully complete a transaction.
Now, I do NOT know PHP, and I do NOT understand Zen Cart guts well enough to say that this is IT. The problem is probably somewhere upstream and the fix is more elegant.
I can easily imagine though that PAyPal changed their protocol to return an empty but defined value instead of returning none, thus quietly throwing a wrench into Zen Cart machinery.
I can't wait what the PROs think!
~Andrey
I can't tell you what the PROs will think but I will tell you that *I* could kiss you right now! Thank you thank you!
I get a really long lag after the paypal screen when I'm back on my site and click "confirm" but the order DOES go through and I get both the payment and the order confirm. So slow is better than not at all and I'll take it!
THANK YOU!
This last bit of debug log that you posted is from a DoExpressCheckoutPayment API call. Can you post the GetExpressCheckoutDetails log data for the same transaction? (TOKEN will be the same in both)
PayPal EC processing happens in 3 stages:
1. SetExpressCheckout (sets a TOKEN between PP and your shop, and customer logs into their PP account)
2. GetExpressCheckoutDetails (gets details from PP based on customer-selected options)
3. DoExpressCheckoutPayment (sends payment request and captures funds to complete the order).
(All other debug logs merely show data pieces used in stitching together the entire transaction.)
It seems that perhaps PayPal is sending data back differently in the GetExpressCheckoutDetails step (perhaps due to a recent code-maintenance update on their end), which is causing Zen Cart to be confused over the results. I need to see the GetExpressCheckoutDetails logs that are created just before the error occurs (no need to complete checkout ... just login to PayPal and return to the store).
The fix suggested by andrabr earlier may provide some relief for U.S. shops, but may or may not be the final solution.
Debug logs will be a huge help. If you prefer not to post them here (they should be safe generally), you may PM me with FTP access to your debug log folder as an alternative.
(However, I do apologize in advance for delays in replying (if any), as I'm neck-deep in completing a very intense client project ...)
.
Zen Cart - putting the dream of business ownership within reach of anyone!
Donate to: DrByte directly or to the Zen Cart team as a whole
Remember: Any code suggestions you see here are merely suggestions. You assume full responsibility for your use of any such suggestions, including any impact ANY alterations you make to your site may have on your PCI compliance.
Furthermore, any advice you see here about PCI matters is merely an opinion, and should not be relied upon as "official". Official PCI information should be obtained from the PCI Security Council directly or from one of their authorized Assessors.
Bookmarks