Jump to content
greasemonkey

FedEx - Web Services v9

Recommended Posts

Also - are you using the FedEx WebServices Add-on? or some other fedex freight add-on? That error does not look like it came from WebServices


-Dave

Share this post


Link to post
Share on other sites

I am getting an added fee at checkout_confirmation on deliveries to home addresses and I am not sure why.

 

the rate on checkout shipping shows 10.47 for ex. then if the address has no company the amount on checkout confirmation shows 13.84

 

I have the home delivery fee set to 0 in the admin.

 

If I add a company during checkout shipping, the rate remains 10.47.

 

I am using a simple checkout addon so it very well could be that, and while I'm typing this I'm more confident it is that, but I was curious if there is any place you know I should look or if you ever experienced anything similar.

 

Thanks

Share this post


Link to post
Share on other sites

I am getting an added fee at checkout_confirmation on deliveries to home addresses and I am not sure why.

 

the rate on checkout shipping shows 10.47 for ex. then if the address has no company the amount on checkout confirmation shows 13.84

 

I have the home delivery fee set to 0 in the admin.

 

If I add a company during checkout shipping, the rate remains 10.47.

 

I am using a simple checkout addon so it very well could be that, and while I'm typing this I'm more confident it is that, but I was curious if there is any place you know I should look or if you ever experienced anything similar.

 

Thanks

 

That is how FedEx works. Look at your contract with FedEx, you should see rates and discounts for GROUND and different rates and discounts for HOME.

 

Currently this module uses the Company Name field to determine ground vs home.

The next version will use live address verification to determine the rates.


-Dave

Share this post


Link to post
Share on other sites

Since this whole PHP SOAP vs Pear SOAP started, I've been doing a little research and, just FYI, if you have any of the following Endurance International Group owned ISPs, chances you have PHP SOAP compiled into your *ix Apache code is pretty slim. Chances that you'll be able to get them to install it, unless you go to the EIG website and scream long and loud, are slim as well. If you have a Windows server (.asp) you MAY have PHP SOAP Lite which MAY or MAY NOT work with this module. I don't know for sure. You WILL need PHP SOAP for this module to function correctly because FedEx has switched from a API model to a Web Service model. EIG are the hosting equivalent of The Borg. All in one Data Center, all set up the same, and your individual needs are irrelavent, Just the names are different. Look them up....

 

The ISPs are; www.2slick.com, AccountSupport, www.apollohosting.com, www.berryinfosysllc.com, www.bizland.com, www.bluedomino.com, www.carielweb.com, www.computersconcepts.net, www.dollar2host.com, www.dot5hosting.com, DomainHost, www.easycgi.com, www.ehost.com, www.entryhost.com, www.fatcow.com, www.freeyellow.com, www.globat.com, www.hostaday.com, www.hostcentric.com, www.hostingbyexcel.com, www.hostwithmenow.com, www.hostyoursite.com, www.hypermart.net, IMOutdoorsHosting, www.ipage.com, www.ipower.com, IpowerWeb, www.myresellerhome.com, www.networkshosting.com, www.osullivansystems.com, www.powweb.com, www.purehost.com, www.readyhosting.co.uk, www.readyhosting.com, www.sabapro.com, www.southeastweb.com, www.spry.com, www.startlogic.com, www.tighthost.com, www.usanethosting.com, www.VirtualAve.net, www.vpslink.com, www.web2010.com, www.webdevhosting.com, www.webhost4life.com, WebstrikeSolutions, www.xeran.com, YourWebHosting, www.zipitdesigns.com

 

This list is from 04/2010 and they have "acquired" several more hosting providers since then. The names without a www or .whatever are dead and gone.

 

Even if they do say the will install the extensions, be prepared to wait. I have been waiting, oh, about 32 hours for a 45 minute re-compile.

 

There ARE other ISPs out there that supply PHP SOAP on all their packages, regardless of price or flavour and that aren't owned by EIG. You just have to look for them. I found the one I'm going to if this takes too much longer.

 

I hope this list helps to prevent people from beating their heads against the wall trying to get this contribution to work.

 

The FedEx Direct API module will not work. If you have an account and meter # for it already, it will work until they take it down and you will have to go to the Web Service module (this one) and, if you have one of the above ISPs, chances are you are going to be SOL

 

Has there been any headway made in the past 2 years here? Have an EIG ISP and only PEAR SOAP, so soap test fails :(

Share this post


Link to post
Share on other sites

@@Caver Dave

 

ADD

 

// IF SOAP COMPILED WITH PEAR UNCOMMENT BELOW

require_once('SOAP/Client.php');

 

 

ABOVE

 

$client = new SoapClient($path_to_wsdl, array('trace' => 1, 'connection_timeout' => MODULE_SHIPPING_FEDEX_WEB_SERVICES_CONNECTION_TIMEOUT));

 

 

and adapt path to your setup - should work fine


-Dave

Share this post


Link to post
Share on other sites

ADD

 

// IF SOAP COMPILED WITH PEAR UNCOMMENT BELOW

require_once('SOAP/Client.php');

 

 

ABOVE

 

$client = new SoapClient($path_to_wsdl, array('trace' => 1, 'connection_timeout' => MODULE_SHIPPING_FEDEX_WEB_SERVICES_CONNECTION_TIMEOUT));

 

 

and adapt path to your setup - should work fine

 

Brilliant! Is it "fedexwebservices.php" that gets the additional code?

Edited by Caver Dave

Share this post


Link to post
Share on other sites

 

 

Brilliant! Is it "fedexwebservices.php" that gets the additional code?

 

yes, find the $client line, add above. then make sure 'SOAP/Client.php'); is pointing to where it should for your pear soap to interact.

 

 


-Dave

Share this post


Link to post
Share on other sites

Here's what I have:

 

 //Class Methods

function quote($method = '') {
/* FedEx integration starts */
global $shipping_weight, $shipping_num_boxes, $cart, $order;

require_once(DIR_FS_CATALOG . DIR_WS_INCLUDES . 'library/fedex-common.php5');
$path_to_wsdl = DIR_FS_CATALOG . DIR_WS_INCLUDES . "wsdl/RateService_v9.wsdl";
ini_set("soap.wsdl_cache_enabled", "0");
$client = new SoapClient($path_to_wsdl, array('trace' => 1));
$this->types = array();
if (MODULE_SHIPPING_FEDEX_WEB_SERVICES_INTERNATIONAL_PRIORITY == 'true')

 

So I need the following, with some adjustment to the path?:

 

//Class Methods
function quote($method = '') {
/* FedEx integration starts */
global $shipping_weight, $shipping_num_boxes, $cart, $order;
require_once(DIR_FS_CATALOG . DIR_WS_INCLUDES . 'library/fedex-common.php5');
$path_to_wsdl = DIR_FS_CATALOG . DIR_WS_INCLUDES . "wsdl/RateService_v9.wsdl";
ini_set("soap.wsdl_cache_enabled", "0");
// IF SOAP COMPILED WITH PEAR UNCOMMENT BELOW
require_once('SOAP/Client.php');
$client = new SoapClient($path_to_wsdl, array('trace' => 1));
$this->types = array();
if (MODULE_SHIPPING_FEDEX_WEB_SERVICES_INTERNATIONAL_PRIORITY == 'true')

Share this post


Link to post
Share on other sites

Hello

 

Im having some problems with this add--on I have installed on version 2.3.3 I am using the development test credentials from fedx and my account.

 

the first is that I do not get any rates whatsoever

 

also when I enable the "ready ship" I get the following error on the font side when checking out:

 

1054 - Unknown column 'products_ready_to_ship' in 'field list'

 

SELECT products_ready_to_ship, products_ship_sep, products_weight FROM products WHERE products_id = 82 LIMIT 1;

 

[TEP STOP

 

The fedx SQL file did add a record for the ship separately as I confirmed it being in the SQL table.

 

Any tips on this issue would be great I have checked and double checked everything I can see - Has any one else had this issue??

 

 

Thank You!

Share this post


Link to post
Share on other sites

Hello

 

Im having some problems with this add--on I have installed on version 2.3.3 I am using the development test credentials from fedx and my account.

 

the first is that I do not get any rates whatsoever

 

also when I enable the "ready ship" I get the following error on the font side when checking out:

 

1054 - Unknown column 'products_ready_to_ship' in 'field list'

 

SELECT products_ready_to_ship, products_ship_sep, products_weight FROM products WHERE products_id = 82 LIMIT 1;

 

[TEP STOP

 

The fedx SQL file did add a record for the ship separately as I confirmed it being in the SQL table.

 

Any tips on this issue would be great I have checked and double checked everything I can see - Has any one else had this issue??

 

 

Thank You!

 

Read post #523 above. That should sort you out.


-Dave

Share this post


Link to post
Share on other sites

Thanks Dave

 

is this the add-on the post is referring to "UPS XML Rates and Services v1.4" Adding this will also solve the issue where I'm not getting any rates quoted?

 

Thanks

Share this post


Link to post
Share on other sites

fix the 2nd error and hopefully will resolve the first. If you do not have UPSXML installed

 

find

 

$dimensions_query = "SELECT products_ready_to_ship, products_ship_sep, products_weight FROM " . TABLE_PRODUCTS . "

WHERE products_id = " . (int)$product['id'] . "

LIMIT 1;";

$dimensions = tep_db_query($dimensions_query);

if ($product_dimensions = tep_db_fetch_array($dimensions)) {

if ($product_dimensions['products_ready_to_ship'] == 1 || $product_dimensions['products_ship_sep'] == 1) {

 

 

and replace with

 

$dimensions_query = "SELECT products_ship_sep, products_weight FROM " . TABLE_PRODUCTS . "

WHERE products_id = " . (int)$product['id'] . "

LIMIT 1;";

$dimensions = tep_db_query($dimensions_query);

if ($product_dimensions = tep_db_fetch_array($dimensions)) {

if ($product_dimensions['products_ship_sep'] == 1) {


-Dave

Share this post


Link to post
Share on other sites

Hello Dave,

 

I do not have UPSXML so I will use the code you have posted and Post my results tonight.

 

Thank you for your help!

 

Dan

Share this post


Link to post
Share on other sites

I posted the code as above and that resolved the issue with "ready ship" no more error.

 

But still not getting any rates

 

Going to go thru the install once again to see if I missed something.

 

Thanks,

 

Dan

Share this post


Link to post
Share on other sites

Stop using development credentials and use the real credentials.

 

The mod wont work with development credentials unless you make edits and changes to the WSDL.


-Dave

Share this post


Link to post
Share on other sites

Dave

I switched to the production credentials and the Mod is now working,

I was not aware to use the production credentials in the beginning, Thanks for the code to fix the ready ship error and for following up with me on the issue.

 

Excellent work!

 

Dan

Share this post


Link to post
Share on other sites

It does. I just got off the phone with fedex and they looked at the transaction. For some reason, osC is not sending the province code with the address. I am still at osC2.2 and I uploaded the latest webservices v9 yesterday. UPSXML is not getting the code either, but usps is. Any help will be appreciated.

Jim

Share this post


Link to post
Share on other sites

look for these lines, switch the //, and test.

 

if($ShipmentRateDetail->ShipmentRateDetail->RateType=='PAYOR_LIST_PACKAGE')

// if($ShipmentRateDetail->ShipmentRateDetail->RateType==('PAYOR_LIST_PACKAGE' || 'PAYOR_LIST_SHIPMENT')) // try this if having international quoting errors

 

change to

 

// if($ShipmentRateDetail->ShipmentRateDetail->RateType=='PAYOR_LIST_PACKAGE')

if($ShipmentRateDetail->ShipmentRateDetail->RateType==('PAYOR_LIST_PACKAGE' || 'PAYOR_LIST_SHIPMENT')) // try this if having international quoting errors.


-Dave

Share this post


Link to post
Share on other sites

FedEx Please enter a ZIP Code to obtain your shipping quote.

Or possibly:

If no rate is shown, the heavy weight of the item(s) in your Shopping Cart suggests a Request for Freight Quote, rather than FedEx Ground service, is recommended.

 

I'm getting this error. This is a brand new install of 2.3.3.2 and this is the only mod I have attempted. My webhost is forcing me to PHP 5.4 on Oct 1, so my 10 yr old installation of 2.2 is a goner. ANYWAY, I've tried all the suggestions. I can't even get the radio button that allows me to select this option on my frontend on checkout. Any suggestions?

 

I've downloaded v9.4.3 (Full install) and the update at v9.4.3.1. I have NOT worried about the ship separately, since I won't be using that. I've got a test environment setup, complete with store address, customer address, and the test shipping components from FEDEX.

 

I had the old FEDEX quote system working on my OLD and about to obsolete shopping cart prior to them deprecating the API in 2012. I've been faking it ever since, and was hoping I wouldn't have to do that now that I'm building a new shopping cart. Where can I look for errors. I've installed the add-on twice, reverified my FEDEX logins, passwords, etc several times, and can't even get to a point where I'm able to send a request. Any ideas? Does anyone really have this working on 2.3.x? I haven't seen any posts that indicate that it does work. I've seen a lot of "it SHOULD work", but that is a far cry from "yea, I've tested it, it works like a champ".

 

Please help

Share this post


Link to post
Share on other sites

Disregard my prior post. Basically, FEDEX screwed up. Since I had test credentials and production credentials from when the API was valid, their system kept munging the information that it was giving me when I requested production info for Web Services. Ultimately, it took about 30 minutes on the phone with FEDEX techies to figure out what the hell was going on. AND SO, I'm gonna say it--I'm using OsCommerce 2.3.3.2, with v9.4.3.1 and "Yea, I've tested it, it works like a champ!"

Share this post


Link to post
Share on other sites

I have successfully installed the Ship module and run into a few hick ups that have been resolved. After calling FEDEX it turned out I had to change theh URL inside the RateService_v9.wsdl I had to update the gateway.fedex.com to gatewaybeta.fedex.com. Once the web services call is made it looks like the data is failing the WSDL coming back to me.

 

Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Unexpected WSDL element <text> in /includes/modules/shipping/fedexwebservices.php:70

Stack trace: #0 /includes/modules/shipping/fedexwebservices.php(70): SoapClient->SoapClient('/hsphere/local/...', Array) #1 /includes/classes/shipping.php(81):

fedexwebservices->quote('') #2 /checkout_shipping.php(146): shipping->quote() #3 {main} thrown in /includes/modules/shipping/fedexwebservices.php on line 70

 

During the install I didnt see anything about possibly updating checkout_shipping.php.

 

 

Does anyone know if I have to tell fedex to use a different WSDL for the os commerce v9 add on ?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×