Shipping Cost Based On Dimensional Weight, Multiple Product Types

As some may know, starting this year almost all the shipping companies started switching to a dimensional weight to calculate shipping charges instead of the actual weight.

This means to get accurate real-time shipping you need to pass the dimensions of the box you are shipping to the shipper. I'm guessing CS-Cart is not yet sophisticated enough to do this based on lack of results when I search the forum, documentation, knowledgebase, or blog, I see very little info regarding development to handle dimensional shipping rates, in fact only references I see are from this past summer saying CS-Cart doesn't handle it.

However this result does reference and input field in the import file for "box size"

http://kb.cs-cart.com/imported-fields-format

Looking at the demo of the current version I see that you can enter min-max product qty for a box size. That's a step in the right direction but is the latest version sending the box size to say, UPS, when getting a real-time quote? If not, has anyone modified the code to do so?

It would seem to get particularly tricky when ordering several different items. Obviously in many cases they can all be combined into one box and will be. To be most accurate it seems you would need the ability to enter into the system all the box sizes you use in your fulfillment. Then for each product you enter the product dimensions and either add-on room for cushioning or enter a master value for minimum cushioning to add to all product dimensions based on an additional percentage of the dimension of the product. Now you have your minimum box size for one product. It can get pretty complicated figuring out the box size for multiple different size products but it's not impossible, Amazon I'm sure does it. Even BigCommerce does it:

https://support.bigcommerce.com/articles/Public/Understanding-the-Shipping-Calculator

I can see why CS-Cart may have not wanted to invest the time in getting this sophisticated but unfortunately, now shippers are using dimensional weight calulation for all rates, it has become MUCHe important to have this type of functionality.

As it stands now, even if CS-Cart was currently using the box size to get shipping costs, based on the info I could find to this point, at best, it's going to get shipping costs assuming each product has it's own shipping box. Maybe this isn't a big concern as then if someone buys a large variety of product, the seller probably ends up charging more for shipping than it actually cost them which is a better problem then losing money on shipping. However it means that their shipping rates may be less competetive with sellers using platforms with more sophisticated/accurate shipping calculations.

I'm really surprised I couldn't find a post showing or pointing to a hack to do something like this to get more accurate dimentional weight shipping rates from some of the major shippers like UPS. It would seem like not to much work to post a PHP have for the real-time shipping function where you can edit an array setting for your box sizes. To keep things simple let's forget about box weight capacity for now. Then in CS-Cart, just set min/max per box to 1 and treat box size a product dimension with cushioning. Then modify the code to use the same forumal as BigCommerce posted, then determine which box to use and get the shipping rate. If it's a heavy item, you could purposely make the dimensions much larger than actual so it won't put too many of them in your largest box. Otherwise trying different combinations of items and box sizes while factoring in total weight of items in the box will get complicated (but not impossible.) If you go over your max box size, then you have to put the remaining items in the next box and get the rate and add to shipping total. Would just be putting a while statement around the whole thing based on a running qty count of items in box.

Without the code hack I proposed above, probably the safest things to do is to choose your min-max and box size based on the average order qty for that item. If it likely many people by 2 of them instead of almost always one, make your box size big enough to fit 2, put your max at 2, and if someone only orders one, then you make a little more money on the shipping cost versus charge differential.

Does anyone know if Big Commerce then actually has a system wide setting for all your possible shipping box dimensions and their max weight capacity?

CS-Cart: You guys need to catch up here!

This functionality is present in CS-Cart since at least version 2.2.x

This functionality is present in CS-Cart since at least version 2.2.x

Only for a single sku/product code and not multiple/different skus/product codes.

This functionality is present in CS-Cart since at least version 2.2.x

No, its not. In reality vendors rarely send 1 single product. They send one or multiple boxes with multiple products. CS-Cart can not calculate total dimension of a combination of multiple products. Which means that its impossible to get an accurate shipping cost with CS-Cart.

Unfortunately CS-Cart often implements features without doing it well enough to make it work. This means that customers need to keep asking about essential functionality until CS-Cart gets multiple releases to finally make it work. It would save CS-Cart and customers so much time and effort if CS-Cart would be perfectionist about features.

This functionality is present in CS-Cart since at least version 2.2.x

Can you please explain how the dimensional shipping weight functionality available since 2.2.x works for multiple products, I also cannot find the information in the knowledge base.
I have products with sizes assigned in their shipping properties however I cannot find where in shipping methods to add the shipping box sizes that the assorted products being sold can then to go into.
Also, is there somewhere I can customise the DIM volumetric divisor so I can use manual shipping methods?
Thanks

Only for a single sku/product code and not multiple/different skus/product codes.

I just tested this in default CS-Cart 4.3.4 and as far as I see this functionality works well when several different products are added to the cart (I tested with UPS and USPS). If you can provide a step-by-step instructions on how to reproduce the situation when this functionality doesn't work, please post a bug in our bug tracker (http://forum.cs-cart.com/tracker/project-1-cs-cart/) so we could check it.

Can you please explain how the dimensional shipping weight functionality available since 2.2.x works for multiple products, I also cannot find the information in the knowledge base.
I have products with sizes assigned in their shipping properties however I cannot find where in shipping methods to add the shipping box sizes that the assorted products being sold can then to go into.

You can specify the package dimensions on the Configure tab of the shipping method. If the products are added to the cart do not fit in a single package, system calculates the shipping rates for the required number of packages (via shipping service API).

Also, is there somewhere I can customise the DIM volumetric divisor so I can use manual shipping methods?

Please clarify this request in more details

755.png

I just tested this in default CS-Cart 4.3.4 and as far as I see this functionality works well when several different products are added to the cart (I tested with UPS and USPS). If you can provide a step-by-step instructions on how to reproduce the situation when this functionality doesn't work, please post a bug in our bug tracker (http://forum.cs-cart.com/tracker/project-1-cs-cart/) so we could check it.

Unless something has changed since 2.2.x (I don't know because I haven't tested it since it didn't work in the beginning), the system only allowed you to put multiple items of one sku/product code in a box because you have to specify the minimum and maximum for that sku/product code only. Because of this, it will not allow you to put multiple/different skus/product codes in one box.

Here is my thread with CS-Cart Support from the past two days. THEIR response seems to indicate that the system always/only uses the package dimensions set in the global setting in Shipping Methods. THEN, it uses the box dimensions of the product to see if the product fits in the package dimension you specificied in Shipping Methods settnig and if not, it will then (I assume) get rates for multiple packages. This makes no sense to me, at minimimum all the dimensions in the Shipping Method settings should be used for is as a default if the product doesn't have box dimensions specified! I would expect the system would ignore the Shipping Method settings dimension and use the product box dimensions when getting rates but their response, as far as my interpretation, seems to indicate otherwise. Their words are "by default" it uses the dimensions in the Shipping Method settings but their response failed to confirm if they use box dimensions of the product in place of that!

Are you using box dimensions to calculate shipping charges with UPS and with USPS since they use dimensional weight now for all shipments?

If you are not sending dimensions where on the timeline/blueprint will this functionality be added (estimate) 1-3 months? 3-6 months?

If it is not being used or on the short-term of new features can you quote customization cost for modifying the USPS and UPS real time calculation to send dimensions? It would seem the API you are using must require it, no?

Thank you for your message.

You can specify the package detentions for UPS and USPS shipping methods on the Configure tab of the shipping method settings page. For more information about setting up these shipping methods, please refer to the following pages:

http://kb.cs-cart.com/setting-ups
http://kb.cs-cart.com/setting-usps

Let us know if you have any questions.

But that allows for only one package dimension - most sellers ship with different package dimensions. This setting you are referring to is a system-wide setting so that those dimensions would be used when calculating shipping cost for any product, correct? As I understand it, with most shippers starting in 2015 weight is essentially ignored and dimensions are used in most all cases to calculate shipping charge.

If box dimensions are used for the product shipping information, will those dimensions be sent to the shipper instead of the system wide shipping method dimension setting?

Thank you for your message.

By default CS-Cart is using the package dimensions from the shipping method settings and splits the shipment to several packages if products do not fit in one package. We recommend to post your suggestion about improving this functionality on here:

http://cscart.uservoice.com

This service helps us give an impartial estimation of the necessity to create a certain feature. Any CS-Cart user who is registered on CS-Cart Forums can vote for a feature and offer their own one. The most popular features have good chances to be developed and added to the nearest CS-Cart releases.

I just tested this in default CS-Cart 4.3.4 and as far as I see this functionality works well when several different products are added to the cart (I tested with UPS and USPS). If you can provide a step-by-step instructions on how to reproduce the situation when this functionality doesn't work, please post a bug in our bug tracker (http://forum.cs-cart.com/tracker/project-1-cs-cart/) so we could check it.

You have tested using a real-time shipping configuration (UPS and USPS). Can you please do the same test for configuring a manual shipping method and advise the process.

You have tested using a real-time shipping configuration (UPS and USPS). Can you please do the same test for configuring a manual shipping method and advise the process.

This functionality works only with real-time shipping methods

You can specify the package dimensions on the Configure tab of the shipping method. If the products are added to the cart do not fit in a single package, system calculates the shipping rates for the required number of packages (via shipping service API).

This is what I mean. The functionality is not there, because what you describe is not dimensional weight functionality. There is a misunderstanding about what functionality is needed to make it return the correct dimensional weight shipping costs. Please let me explain:

If I have a product that fits in a small box or envelope then this has a completely different shipping cost than a large box. A customer with a small size order should get cheaper shipping rates than a customer with a large size order.
This is the whole point of calculating dimensional weight.

Setting the store to always calculate the same package dimension is exactly the opposite of dimensional weight. To work with a preset package dimension, means that we need to set the maximum size box. Otherwise the system would start dividing up shipments in many smaller boxes. So maximum size will be used. Which means that it will always calculate maximum volume. i.e. maximum cost.

This means that a customer with a small size order will still pay for the same large package dimension. Because no dimensional weight is calculated for this order. It just uses a fantasy size. (the size preset in admin)

The only thing that is calculated, is how many boxes are needed for the products in the shipment. And if I understand you correctly even that only works for realtime shipping methods.

Please see what dimensional weight calculation means:

https://www.ups.com/content/us/en/resources/ship/packaging/dim_weight.html

The Carrier needs to know weight and the real size of the box, to determine the billable weight. You cannot use a preset dimension. You need the real size or the shipping costs will be wrong.

To illustrate:

if I ship a letterbox package from the Netherlands to USA with UPS, then the real costs are: €89

But as the parcel dimensions 60x40x40 are set in admin, this returns a shipping cost in CS-Cart: €348 !

You can imagine that any customer will cancel the order because the shipping costs calculated are extreme.

For Dimensional weight to work, we will need to be able to set multiple package dimensions. For example we always work with 8 difference package sizes ranging from small to large. CS-Cart should calculate which package size will be used for the order. Only then the dimension is known and dimensional weight can be calculated by the carrier.

This is the latest response from CS-Cart support and to me it is just plain NUTS. Essentially if I read this right, the box dimensions for the product shipping settings are only used to determine number of boxes and the box size comes from the global system wide Shippng Method settings as I alluded before. This makes NO SENSE. You could have your shipping method settings for UPS set to box size of 20x20x20 and then have product box dimensions 10x10x10 with max 2 items per box. If the person orders 1-2 items you are going to get rate for 20x20x20 box, not 10x10x10 box. If you buy 3 items, it thinks you need 2 boxes so you will pay for 2 20x20x20 boxes instead of 2 10x10x10 boxes. That could be a HUGE shipping cost difference.

I seriously can't believe when there are product-level box dimensions those override the settings for the system-wide shipping method setup.

----

Thank you for your patience and sorry for the delay in answering.

It is unclear from your response which dimensions you send to the shipping company such as UPS.

There are two settings in the system regarding shipping package dimensions:

1) Shipping Methods Setting - this is a system-wide setting

2) Individual Product - Shipping Detains - Box Dimensions

If the individual product has box dimensions specified, do you use those dimensions when requesting the shipping rate, or do you use the dimensions specified in the Shipping Methods setting?

CS-Cart is always using the package dimensions from the shipping method settings.

If you use product shipping box dimensions when specified, I assume you determing the number of boxes required by min/max setting and multiple shipping rate when more than one box is needed to ship the item when ordering multiple quantities?

If the box dimensions are specified for the product, the system checks if all ordered items fit in a single package (dimensions of this package are specified in the shipping method settings) and increases the number of packages if necessary. Then the system gathers the shipping rates from the shipping service.

Thank you.

It seems to me that CS-Cart support / development do not understand how dimensional weight works in real life. As far as I can see there is no way that the current functionality can work for any vendor who ships out multiple products in varying box sizes.

The real problem with this is not just that this causes inaccurate shipping cost calculation, but more importantly customers will not order when they are confronted with very high shipping costs. We get a lot of feedback from customers who complain about this and the number of abandoned carts is really high.

I have considered just turning realtime cost calculation off for UPS, but manual shipping costs have a similarly problematic issue that prevents accurate shipping cost calculation.

Thank you for your feedback.

If you think that CS-Cart operates improperly, please post the detailed problem description to our Bug Tracker. If you think that CS-Cart functionality should be improved, please post your suggestion to the UserVoice service. The detailed information and explanation why this feature is important to be implemented will help it to earn more votes and probably be among the top features that might be added to CS-Cart.

We constantly work on improving CS-Cart functionality and take into consideration requests from our customers.

If you need the dimensional weight calculation for manual shipping method, you can contact us so that we will estimate the complexity of this modification ( https://simtechdev.com/helpdesk ). I should say it is not a small modification.

We are also at your service

Yes, I have confirmed via support that shipping cost calculation can be extremely inaccurate. I am absolutely flabbergasted that the system doesn't AT LEAST substitute product box dimension settings when present. That is an EASY modification. I will post mod when I make it.

Sent to support:

--------------------

Dear Nail,

So let's say my box dimensions in Shipping Methods for UPS are 12 x 12 x 12.

So then, if I had a large product that required a 30 x 30 x 30 box to ship in and I entered those box dimensions for that products shipping details with minimum 1 and maximum 1 per box, CS-Cart is going to get dimensional rate for 12 x 12 x 12?

Conversely, if I has a very small item that fits in 6 x 6 x 6 box (1 max) system is going to ignore product detail box dimensions and get rate for 12 x 12 x 12?

If this is true, is it not simple to override Shipping Methods dimensions with Product-specific dimensions when they are present? Otherwise, your code logic is basically saying that the seller only ships items in one size box. This if of course not realistic.

CS-Cart Reply

------------------

Thank you for the reply.

At the moment shipping rates are calculated with the box dimensions specified in the shipping method settings. So, yes it is assumed that the seller ships all items in one size box.

We recommend to post your suggestion about improving this functionality here:

http://cscart.uservoice.com

Thank you.

Dear CS-Cart. Just look here for ideas:

https://help.x-cart.com/index.php?title=X-Cart:Setting_Up_Dimensional_Shipping

This is still not as smart as Big Commerce which will determine box dimensions on multiple different items in order.

Thank you for your feedback.

If you think that CS-Cart operates improperly, please post the detailed problem description to our Bug Tracker. If you think that CS-Cart functionality should be improved, please post your suggestion to the UserVoice service. The detailed information and explanation why this feature is important to be implemented will help it to earn more votes and probably be among the top features that might be added to CS-Cart.

We constantly work on improving CS-Cart functionality and take into consideration requests from our customers.

Dimensional weight is already in uservoice and got hundreds of votes. CS-Cart then marked it as implemented, which is untrue.

If we ask support about it, they simply state that there is no dimensional weight calculation, as there can only be one package dimension set. (basically using a fantasy dimension)

I know once I have time, I could probably within a couple hours sucessfully modify the PHP code to AT LEAST use the box dimensions from the product instead of the shipping method calc - assuming the system calculates a shipping cost for each product in the order than adds them all together (it's been a couple years since I had to customize CS-Cart code.) This seems like a very easy hack.

Ultimately, I would hope either CS-Cart figures this out or I will write a module and sell it that allows you do to do the following:

1. Specify all box sizes you use to ship products and weight limit for each box size

2. Remove/Ignore min/max setting for product per box in product details.

3. Implement logic same logic as Big Commerce to calculate what box to use to combine different products but go one step further and calculate total weight to make sure products are not too heavy for the box. If too heavy, remove largest product and put in separate box and check weight for each box again. If still too heavy remove next largest item and put in separate box. Getting total shipping costs by getting real time calculation for actual dimensions of each box used.

The weight check is getting pretty fancy but to be accurate, it IS necessary.