My only shipping source is FedEx. They determine the rate using the dimensions. The FedEx plugin for 2.3 is only sending the weight info although the dimension info is being captured to the database.
Any ideas as to why it is only sending the weight and not length, width and height?
After all the install problems I can't use NOPCommerce if I can't resolve this and I'm sure it must be a setting I'm missing.
Any ideas as to why it is only sending the weight and not length, width and height?
After all the install problems I can't use NOPCommerce if I can't resolve this and I'm sure it must be a setting I'm missing.
There is no setting. It's hard coded that way - there's a comment that says "//it's better to don't pass dims now"
Ok, I've spent some time looking into this in some detail. What I see is that it calculates "Total" of each for height, width, length.
e.g.
getShippingOptionRequest.GetTotalLength()
foreach (var shoppingCartItem in this.Items)
...
totalLength += productVariant.Length * shoppingCartItem.Quantity;
Then uses Totals dims to estimate the number of packages (based on fedex max of 108 inches for girth + length).
The problem is that these totals don't work geometrically. For example, take 8 cubes of 1x1x1.
Thus, Totals for height, width, length each are 8cubes x 1 = 8.
TotalPackageSize
int girth = height + height + width + width;
int total = girth + length;
TotalPackageSize
int girth = 8 + 8 + 8 + 8
int total = 32 + 8;
= 40 (5 x 8)
But, 8 of 1x1x1 is 8 cubic, which is "packed" as 2x2x2. (i.e cube root of 8 = 2)
TotalPackageSize
int girth = 2 + 2 + 2 + 2
int total = 8 + 2;
= 10 (5 x 2)
So, the existing algorithm estimates 4 times as many packages as needed.
You can see the same for more "typical" packages; let's say 8 packages of 10 x 10 x 10, "Total" of each height, width, length = 80
TotalPackageSize = 5 x 80 = 400 - ceiling(400/108) = 4packages
But, 10 x 10 x 10 = 1000 cubic. x8 = 8000 cubic. Cube root of 8000 = 20. TotalPackageSize 5 x 20 = 100 - ceiling(100/108) = 1 package.
I'm sure this correction would help the FedEx algorithm better estimate shipping.
In my Shipping Director (nopTools.com), I will be releasing beta 2 with a "First Fit by Volume/Weight" packager. It's not perfect (optimal bin packing is hard). It will allow specifying dimensions of a single box size and max weight. Additionally, it will allow for optional AddItemWeight and AddItemDimension that will adjust each item for packing material. Also, it will allow expressions to calculate RequiresOwnPackage, and SenderIdentifier (to handle shipping from multiple locations - items will only be packed in a box for same sender). Items will be packed in first package that can fit the item not to exceed volume or weight, else a new package is created. Items too big for box dimension or max weight will be considered a separate package. Each package is then passed to the specified shipping option rate calculation method, and the rates for same method name are summed.