Ship Separately Bug

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
7 years ago
Ship Separately does not rate calculate correctly with FedEx when the QTY of a single item is more than 1. However, it does calculate correctly is there are two items with the option selected and each item has a QTY of 1.

Environment: nop 3.9
Shipping Plugin: FedEx. We are not passing dimensions. And no additional charges have been set at the plugin level.

How do I know what the calculations are supposed to be? We did a side by side comparison with our warehouse shipping software which also has our negotiated rates.

The tests. All items have "Ship Separately" enabled. and no "Additional Handling Charges".

1. One item in cart at 33 lbs. and QTY of 1.
Calculation Results: Rates match between plugin and our shipping solution perfectly.

2. Two individual items in cart. Each item at 33 lbs and each with a QTY of 1.
Calculation Results: Rates match between plugin and our shipping solution perfectly.

3. One item in cart at 33 lbs. and QTY of 2.
Calculation Results: Rates did not match between plugin and our shipping solution. The rate did increase compared to test #1 but was still lower than our shipping software.

What we assume is happening is when the calculation is retrieved for test #3 the plugin is simply sending the combined weight in a single api call instead of splitting the call in two as if there were two individual items in the cart. So it is treating the single item in the cart as one package when it should be two or more packages depending on the QTY supplied.

The reason we know this is because in test #3 when we got a mismatch, we changed the package count in our shipping software from 2 to 1 then made the total weight to 66 lbs. Voila!, our shipping software rate matched the plugin rate perfectly. Ahh, the power of deduction.

Regards
7 years ago
It's not considered a "bug".  It's been that way for quite a while (and there are a few posts about it).  This issue stems from the shipping service dealing with "Shopping Cart Items"  The Item is product and quantity (and attributes, etc.).  I agree that it should treat each quantity as a separate item for shipping.

Shipping Director supports it with "Packing".  This is a really old blog about Packing and "Requires Own Package Expression", so don't get too confused by it ;)  Ignore Product.Variant (in nopCommerce, it's just Product now), and also now Shipping Director has helper functions like Product.HasCategory(...).   So in your case, you can get separate packages by quantity too with a simple configuration:

100 String      $PackageBox  "MaxWeight:40,Height:15,Width:15,Length:15"
110 Packing     Pack         true       Packing.FirstFitSingleBox   Product.HasCategory("Ship Separately")
120 OptionExit  Shipping     true       Shipping.UPS


However, you can't use the Product's "Ship Separately" (be sure to remove it).  Instead, create an unpublished category "Ship Separately", and adjust the $PackageBox as needed.

(contact us at support at noptools.com if you need more info)
7 years ago
I see what you are doing here.

What if the package weights are different? Do I need to duplicate the categories and rule sets for each box weight? We use the same box but 8 different weights. Use dimension instead? Still not clear to me but getting close.

Regards,
Drew
7 years ago
The weight/dims you see in $PackageBox are the box itself.  Not the items that get packed into the box.   Packing will pack the shopping cart items into box (by volume - first fit to any 'unfilled' boxed, and then a new box if it does not fit into any).   It can only handle a single box size, but there are ways around that if needed and also it will "shrink" the box dims to occupied space if not full (so you won't be overcharged for partial box).  Configure it with your largest packing box.  Any item that does not fit into an empty box will get its own box using the product's actual dimes/weight.
6 years ago
Done.
We have added setting to send all the items of a product marked as "Ship Separately" separately, not in a single box. You can see changes in this commit.
Thanks for the suggestion.
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.