2 Attachment(s)
PayPal Communications Response Testing Tools
*** PLEASE NOTE: this content is now available on the documentation site: https://docs.zen-cart.com/user/troub...cation_issues/
Testing IPN
If you suspect your order-completion communications between PayPal and your site are not working properly, you can test the communications using this quick little tool.
Common symptoms of bad IPN communications:
- orders not showing up in Zen Cart but PayPal receipt issued when using PayPal IPN module
- echeck updates not completing when using Express Checkout module
For v1.3.9h, v1.5.0, v1.5.1 and newer, the tool is already in the /extras/ folder on your Zen Cart site:
1. Run http://your_site.com/extras/ipncheck.php via your browser.
For v1.3.8a, use the attached file below:
1. Upload ipncheck.php to your store's folder on your webserver.
2. Run http://your_site.com/ipncheck.php via your browser (adjust for whatever folder you might have placed it in while uploading).
TO FIX IPN ISSUES, see http://www.zen-cart.com/wiki/index.php/PayPal
Better yet, switch from PayPal Standard to PayPal Express Checkout for more reliable communications.
File legend:
ipncheck.zip = IPNCHECK v1.0
ipncheck139.zip = IPNCHECK v1.3.9 (which has more friendly status reporting)
Re: PayPal Communications Response Testing Tool
Testing CURL
PayPal Express Checkout requires CURL and SSL in order to talk to PayPal's servers for submitting transactions. If CURL is not working properly or is not compiled into PHP with SSL support, you will not be able to submit transactions to PayPal. To enable it, talk to your hosting company or whoever is your webserver administrator.
You can test CURL on your server using the "curltester.php" script in your /extras/ folder.
(If you're using a very old version of Zen Cart, you can get a copy of this file via this post: http://www.zen-cart.com/forum/showpo...2&postcount=13)
If running that script via your browser doesn't bring back a Success message, then CURL support is not operating properly.
It tests numerous connection destinations, not just PayPal. Also included are authorize.net, linkpoint, first data, fedex, usps, etc.
COMMON ERROR CODES:
(7) couldn't connect to host
This usually means either:
- a) your host server's name-lookup found an old IP address. Your host's nameserver cache needs updating, or their resolv.cnf content is outdated.
- b) your store has a VERY OLD old proxy address enabled in it and thus is broken. Turn off CURL Proxy.
(28) connect() timed out
In 2013 it was reported that this could be connected to a problem ATT had with a misconfiguration in their network. Contact PayPal and AT&T directly to get resolution on it. www.paypal.com/mts and [email protected]
NOTE: Zen Cart doesn't use specific IP addresses to reach PayPal. Zen Cart uses name-resolution instead, so any IP address changes PayPal might do will not affect Zen Cart unless your hosting company has done something weird with nameserver caching. In that case any such problems are to be resolved by your hosting company.
Re: PayPal Communications Response Testing Tools
If you are having connectivity issues with PayPal (or other gateways), get your hosting company to look at it using the following two resources:
a) the curltester.php tool output as described above.
b) PayPal's technical guide for communications problems: https://ppmts.custhelp.com/app/answers/detail/a_id/733
Re: PayPal Communications Response Testing Tools
I'm re-posting this because it seems to be coming up as a repeat problem again.
This isn't a problem in Zen Cart. You need to sort it out between your hosting company and AT&T and PayPal.
ERROR: 28 Connect Timed Out!
Common cause:
In the past several months AT&T has been blacklisting various IP addresses in an effort to curb spammy traffic. As a result, some legitimate traffic is also blocked.
ACTION TO TAKE:
1. contact ATT at [email protected] to have them unblock your hosting company's server IP address
2. contact your hosting company to alert them to the problem so they can stop the rogue traffic their servers are sending to AT&T. Provide them the URL to your curltester.php script as discussed above so they can see the problem in action.
3. report the issue to PayPal at www.paypal.com/mts
4. refer to PayPal’s FAQ’s https://www.paypal-techsupport.com/app/answers/detail/a_id/733
Some merchants have found that they could get their host to their store to a new untainted dedicated IP address which will unblock the problem.
TIPS FOR HOSTING COMPANIES:
a) Ensure that your DNS resolution services are active and current. If resolv.cfg is pointed to invalid DNS servers or pointed to servers with stale data, then you might be sending PayPal connection requests to obsolete IP addresses.
b) From the server console, test whether traceroute can actually connect to PayPal's servers: traceroute-T -p 443 api-3t.paypal.com
c) Unblock firewall rules preventing the communications
d) Change your customer to a different IP address
e) See the PayPal FAQ article above.
Re: PayPal Communications Response Testing Tools
About the 28 Connect Timed Out issue ...
PayPal informs me of a resource that you may find helpful:
Quote:
One of our engineers wrote a simple tool which can help test connections from the AT&T network directly to a merchant’s IP address.
This tool can be found at https://sadbox.net/scripts/network/
· Simply choose the provider via which you’d like to check (ie: AT&T)
· Enter the host (IP address or domain name) of the merchant / partner (your server's domain name)
· Click ‘Submit’.
The tool will connect to a server inside the AT&T network and run a traceroute to the merchant’s IP address or domain name.
· If the results show that it connects via multiple non-AT&T hops (even if the traceroute doesn’t entirely complete), the merchant is likely not blocked on the AT&T network.
· If the results show that it gets stuck after a single (AT&T-owned) hop, the merchant is definitely blocked by AT&T.
Feel free to share the test link with your merchants.