2

This night I ran into the problem that the UPS method stopped working.

The error on the front-end: "This shipping method is currently unavailable. If you would like to ship using this shipping method, please contact us."
https://prnt.sc/ncv1mr

By enabled debug for UPS method I got next logs:

[2019-04-16 18:55:13] main.DEBUG: array ( 'request' => array ( 'accept_UPS_license_agreement' => 'yes', '10_action' => '4', '13_product' => 'GNDRES', '14_origCountry' => 'US', '15_origPostal' => '44610', 'origCity' => NULL, '19_destPostal' => '93906', '22_destCountry' => 'US', '23_weight' => 5.0, '47_rate_chart' => 'One Time Pickup', '48_container' => '00', '49_residential' => '01', 'weight_std' => 'lbs', ), 'result' => '', ) [] [] 

No result.
Where might be an issue?

Magento 2.2.6

Thanks.

1
  • double check your UPS settings it might be set to be available for a specific country, city or region or set to specific weight or etc. Commented Apr 16, 2019 at 21:15

1 Answer 1

5

Having the exact same issue on 2.1.5 and 2.1.17. Our last UPS order came through April 15th at 9pm. With no configuration change, it stopped working on April 16th.

You can possibly fix it by changing the gateway url to https rather than http So change

http://www.ups.com/using/services/rave/qcostcgi.cgi

to

https://www.ups.com/using/services/rave/qcostcgi.cgi

This fixed things on my local 2.1.5 instance, but not on my servers. It now gives a slightly better error message:

[2019-04-18 17:26:37] main.DEBUG: array ( 'request' => array ( 'accept_UPS_license_agreement' => 'yes', '10_action' => '4', '13_product' => 'GNDRES', '14_origCountry' => 'US', '15_origPostal' => '28146', 'origCity' => 'Salisbury', '19_destPostal' => '28145', '22_destCountry' => 'US', '23_weight' => 8, '47_rate_chart' => 'Regular Daily Pickup', '48_container' => '00', '49_residential' => '01', 'weight_std' => 'lbs', ), 'result' => array ( 'error' => 'Unable to Connect to ssl://www.ups.com:443. Error #0: ', 'code' => 0, ), ) {"is_exception":false} [] 

EDIT:

I ended up having to edit /public_html/vendor/magento/zendframework1/library/Zend/Http/Client.php and change the adapter from Zend_Http_Client_Adapter_Socket to Zend_Http_Client_Adapter_Curl and it now works for me. I don't feel good about this solution. Can anyone tell me what else I might be screwing up?

protected $config = array( 'maxredirects' => 5, 'strictredirects' => false, 'useragent' => 'Zend_Http_Client', 'timeout' => 10, 'adapter' => 'Zend_Http_Client_Adapter_Curl', 'httpversion' => self::HTTP_1, 'keepalive' => false, 'storeresponse' => true, 'strict' => true, 'output_stream' => false, 'encodecookies' => true, 'rfc3986_strict' => false ); 
4
  • Thanks! It worked! It is strange that the http worked before. Commented Apr 18, 2019 at 18:43
  • Hello Thanks for this one. I'm having the same issue. and turning http to https for the gateway URL worked on my end. Thanks again Commented Apr 22, 2019 at 2:49
  • 1
    This "just" occurred for all of our Magento sites (all 1.9.x versions). Had to update all the gateway urls to https. Weird this just occurred for us now. Commented May 16, 2019 at 0:41
  • This issue occurred without our knowledge on a M 1.9.4.1 site on a shared host. UPS returns the 'unable to connect to SSL'. Switching from Zend to Curl creates a new error and the sysadmin at the shared host is clueless to update the ca-certs on their machine. BUT switching to UPS XML works, but is not an option. Updating the URLs from http to https creates a new SSL error. Only thing working is the USPS. FedEx is dead as well. Commented Aug 8, 2019 at 22:44

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.