News:

Support the VirtueMart project and become a member

Main Menu

Shipping isn't being added into the total

Started by dustinh, April 08, 2010, 06:47:23 AM

Previous topic - Next topic

dustinh

I'm having an issue when shipping to an overseas address. When an item is put in the shopping cart and the user goes to check out it adds the handling cost as the total shipping cost (sending a package to the UK from the US doesn't cost $6.00...). So the persons total is item cost plus handling price excluding the actual UPS shipping cost. I'm using the UPS shipping module with the most updated version of VM and Joomla!

Please select a Shipping Method!

  UPS Worldwide Express SM ($6.00)  -  USD181.26 Guaranteed Day(s) To Delivery
  UPS Worldwide Expedited SM ($6.00)  -  USD169.38 Guaranteed Day(s) To Delivery
  UPS Saver ($6.00)  -  USD175.59 Guaranteed Day(s) To Delivery


That's the output on the page when the user goes to select the shipping method. It looks like the total price is being added correctly (where it says USD181.26, etc) but it isn't being carried over correctly. I've run debug mode and the XML result that is being returned from UPS is correct. Has anyone else had this issue? I need to get it solved ASAP!

Thanks in advance!

sharij3

I'm having the same exact issue.  I tried altering the UPS.PHP file as instructed in one post.  But that did not work either.  It's a shame so many people are having trouble with the UPS shipping module.  I appreciate the fact that this is a free component, but I've wasted a lot of hours trying to get it to work for clients. 

I hope you find something that works DustinH.  It appears this UPS problem has been around since 2007.  I'm going to start recommending clients use something else.

lowmips

Visit my website at www.lowmips.com
View my newsletters Here (sign up for newsletters on the front page of my website)

yaani

I too am having this problem using Joomla 1.5.22 & Virtuenart 1.1.7 & UPS 1.0 shipping module.

It seems there is a bug in the UPS 1.0 shipping module code.

I get this back after I turn on the debugging

QuoteUPS Worldwide Expedited SM ($0.00) - Weight: 10 LBS, Fee: [[(1)]+0](1)]  -  USD124.47 Guaranteed Day(s) To Delivery
UPS Saver ($0.00) - Weight: 10 LBS, Fee: [[(1)]+0](1)]  -  USD133.43 Guaranteed Day(s) To Delivery (ETA: 1)
UPS Standard ($33.55) - Weight: 10 LBS, Fee: [[33.55(1)]+0](1)]

I don't see where to report bugs. Can a moderator please submit this as a bug?

The UPS Standard shipping option returns the correct amount, the UPS Worldwide Expedited SM & UPS Saver options get the correct amount returned but don't add it into the total so the shopper gets to choose the $0.00 shipping for those options.

I'm afraid I don't have the php skills to fix this. I have looked at the code in the ups.php file but am not sure where to begin with this.

Thanks!

jerepops

Had the same problem and I figured out what was wrong.
Open the file ups.php in administrator/components/com_virtuemart/classes/shipping

Change line 232 from:
if( $currNode->childNodes[$e]->nodeName == 'RatedShipmentWarning') {

to:

while( $currNode->childNodes[$e]->nodeName == 'RatedShipmentWarning') {

the problem is ups sometimes returns more then one 'RatedShipmentWarning' so you need to loop through all of them.  The if satement just goes through one occurence, so if more then one was returned then the shipping price would get mapped wrong.

and boom goes the dyanmite!


katalystsol

Thank you. This is perfect. I had the same issue although it only seemed to be an issue for heavy packages and not for the lighter packages. This seems to have done the trick. I guess it was the RatedShipmentWarning that was generated from the heavier packages.