Discussion on Table Rate Shipping for WooCommerce

Discussion on Table Rate Shipping for WooCommerce

Cart 20,330 sales
Recently Updated

bolderelements supports this item


This author's response time can be up to 2 business days.

3886 comments found.

Pre-Sales Related
Before purchasing, I tried your plugin, but It seems there is a bug. Hence, Just thought to inform you,
The demo link that I tried is

1. The Drag-and-Drop of Table rows within any one Shipping Option is not working.
Means, when we drag-and-drop the Table rows and click Save changes button. Then, after Saving, when page reloads, we found that the Table rows position are at same position where they were previous. And did not adapt new position.

2. Other than that, Dragging and dropping of Table rows do not position them correctly, everytime. Most of the times, It comes back to its previous place. It requires to be very precise, even more than that. That is really frustrating. I could not find it smooth and easy. Hence, as a workaround, or a solution below
In addition to 4 headed arrows, can you please also Add the feature of Up-and-down arrows alongside each Table row. So that clicking on Up arrow brings that specific Table row to one position Upwards and so on. And clicking down arrow brings one position downwards. That would be much more easier to move and reposition the Table rows within the Shipping options.

3. Also, sometimes, the Delete Selected Row option did not work sometimes or works incorrectly.
Sometimes, it Deletes the Last Table row, rather than the selected one.

If you could please take a look on these thoroughly and resolve.

Pre-sales question: We only charge for local delivery based on postal code. Will we be able to assign delivery (we dont ship) costs per postal code?

This part of the shipping is actually handled by the shipping zones. WooCommerce already has postal code support built in. This plugin adds a new shipping method you can add to each zone to create more complex shipping rules and pricing.

my website will have three shipping options to choose from.

1. Pick up (Self Shipping) 2. Shipping by Air (shipping by Weight) 3. Shipping by sea (volumetric or dimensional shipping)

2. The shipping by weight is sorted. We enter the cost per kg, and based on the weight of an item, the shipping cost is calculated. 3. Shipping by sea, which is based on the volume of the item is my headache here. I want a plugin that will add volumetric shipping. I enter the price per a CBM (volume) and based on the dimensions of the item (length, width, and height), the CBM will be calculated, and then the cost, too.

Question 1: Now, I want to know if this is okay with your plugin.

Question2: does your plugin support WCFM ? Question 3: Do you offer refund if it does not work in my case? Thank you

Hello, I would be happy to help answer any presale questions you have!

It sounds like this plugin might be able to help! I have linked to a couple tutorials below that I believe are what you described above. You can setup volumetric weight with this plugin, as well as an option to charge my weight incrementally. This helps prevent unnecessary extra rows with weight ranges and flat rate costs.

Unfortunately we do not support this particular marketplace plugin at this time. It can calculate shipping based on the items in the cart, but there are no settings specific to the vendors you have setup. We also do not offer a refund once the item has been downloaded.

If there’s anything else I can help with, please let me know!


Pre sales questions about the Table Rate Shipping for WooCommerce. My client requirements are subtotal and zip code wise shipping policy. i am clarifying my requirement:

Rule 1 : 5 different postal code + subtotal = $30 shipping cost.

Rule 2 : 9 different postal code + subtotal ($440 to $999) = $60 shipping cost.

There are 5 more shipping policies of this type.

I got subtotal and surface area from your codecanyon features. Surface area is not a zip code. but I saw on your website that there is a postal code. Where can I buy this plugin ?

By your plugin fill-up my client requirement ?

Sure, I would be happy to answer any presale questions you have!

The postal code portion is handled by the shipping zones within WooCommerce. You would setup multiple zones, one for each group of postal codes. Then you would add a Table Rate method to each zone.

In each shipping method you can configure a subtotal based list of rules similar to this tutorial here:

At this time, the plugin is only able to be purchased through this site, If there is anything else I can help with, please let me know!

Love this plugin. Have been using from many years now. Is there an option in the plugin that can show a message on cart like “Spend $x more to get free shipping.” ? If not, this will be a really good feature for addition to the plugin in next version.

Great, thanks. That seems to work fine :)

Is there any way we can stop showing shipping description inside order emails. As it is adding “Spend $x more to get free shipping” text in emails.

Indeed there is! Try this code snippet here to remove it’s positioning in the order summary and emails. (Code snippets should be added the ‘functions.php’ file of your child theme.)
remove_action( 'woocommerce_order_shipping_to_display', array( $betrs_shipping, 'display_option_description_review' ), 10, 2 );


Our supplier for one product category is in China, and the supplier for another product category is in Colorado. They each use different shipping companies.

Using your table-rate shipping plugin, will I be able to create different shipping methods for different product categories?

Also, can I use one shipping rate until a certain date, and then shift to a different shipping method past a certain date? We sell a seasonal product – so we can use a cheaper shipping rate up to a certain date, but must then automatically default to the more expensive rate.



Unfortunately I don’t think this would work through categories, but you could use shipping classes instead. These special classes are the only way that shipping methods know to divide a cart.

There is indeed a date condition that could help if you want to set certain options to expire. However it does not have a time element tied to it at this time, so it can’t be more specific than a day.

By default the pricing for both suppliers would have to be setup in the same table of rates. WooCommerce only has one ‘shipping line’ so that means every method would need to account for all items in the cart. A second option would be to split the cart into packages so that each supplier has it’s own shipping line. This is a feature within WooCommerce that can be activated through code or third party plugins like our free one here:

Yes, the table of rates does have an importer however our structure is a little unique so the CSV file have to be modified in order to fit it properly.

If there’s anything else I can help with, please let me know!

Thanks for that information.

Regarding multiple packages solution. We are considering purchasing WooCommerce Products Wizard Plugin ( that I believe will do the same thing (divide items that are one product in the frontend into “kits” built of multiple products in the back end) – plus also allow us to issue coupons that will be applied to only one part of “kitted” products….

Can we use both these plugins together to create the functionality that we need?

Is there a “lite” version for free download, or a free trial or money-back guarantee – so we can make sure that we can make the product work for our needs?


I’m afraid I do not know much about that particular plugin or how they handle in cases like this. I don’t see anything about shipping in their description so I can’t be sure. It would be a better question for them I think on how they handle the shipping because I’m not sure the shipping package will recognize it as two items if it’s meant to look like one item that is split.

There’s no free version at this time but I am happy to try and help once I understand more from the other developer. I’m just not sure what they are doing in the system to make it all work, and how it is translated to shipping methods afterward.

Hello, Are there any articles on how to solve caching issues of the shipping rates?

What kind of issues are you experiencing? Is it with a third party cache or the built in shipping cache? If you’re testing new settings it’s recommended to turn on Debug Mode in your WooCommerce settings. This disables the shipping cache.

Third party plugins should inherently know not to cache the cart and checkout pages. Nonetheless, before final processing all totals are recalculated regardless of cache to ensure accuracy so the orders should be correct when they go through at least

Is is possible to show custom message instead default “There are no shipping methods available. Please double check your address, or contact us if you need any help”?

We do not currently have settings for this but it can be done via a code snippet like in our tutorial here:


I would liket to ask if your plugin can handle these combinations:

We have these three types of shipping: 1.Private carrier, 2.Our own shipping, 3.Personal pickup

Products A – possibility to choose shipping 1 + 2 + 3 (all three options) Products B – possibility to choose only shipping 2 + 3

When I have both type of products in the cart (A + B), I need to display only option 2 + 3. Option 1 must not appear in this combination of products in the basket.

Could your plugin do this?

The second question. At the same time for private carrier, I need to set the price according to weight (1-2kg x $, 2-3kg xx $ .....) Thanks.

It sounds like this plugin would be able to help! Generally I would recommend using shipping classes if you Product A is a group of eligible products so you can group them together. Then when calculating shipping by class, the plugin will require that every class in the cart have a shipping cost from each table. Any table configuration that does offer a price for each available class in the customer’s cart will be considered invalid and removed.

Also when you calculate by class, each group of items can have their own rules. So for just A products you could setup a series of weight ranges, or use one of the weight multipliers, whichever suits your pricing best.

I’m not quite understanding your third question, however. Where did you want this text to appear?

These links might be helpful in seeing some similar configurations:

Ok, thank you…Ragarding the third question..Our private shipping…We want to calculate the price of transport based on the customer’s distance from our place and because we have to calculate this price first, we want to place only the text for this transport, eg “This transport price will be additionally calculated”, so the value of transport would be “from 5 $ per Km” or “we will contact you and specify the cost”.... so the classic price would not be displayed. Unfortunately, WP always wants to see the value of transportation, but in our case this is not possible.

Indeed, in order for the order to be placed you will need something there. This part isn’t difficult, the challenge is putting the order into a ‘pending’ mode so that the customer is not charged until the final value is calculated. You should be able to find another third party plugin to handle this part. At least in my experience it’s been a pretty popular request.

You may want to consider splitting the cart into packages, however. This will make it more clear to the customer that there are specific items you need to calculate still by separating the shipping into multiple rows. We have a pretty simple version for free here if you want to test it out. The feature is built in to WooCommerce but requires code or a third party plugin to activate.

Hi Bolder, This plugin looks promising (as do your others). I’m frustrated with the shipping limitations from Woo out of the box.

Presale question here, with your plugin in can I:

Have two items in the cart that each have a different shipping method THEN add up the cost for EACH of those shipping methods and display just ONE shipping cost at check out?

Example: In cart there is one item using shipping method A with flat rate $4 Then there is another item in the cart using shipping method B for $9

I don’t want a choice supplied the customer, I just want $13 displayed to the customer. Is this possible?

Thanks in advance, Matt

I would be happy to answer any presale questions you have!

Unfortunately if you are using different shipping methods entirely that would cause an issue. With this plugin it could add the costs together, but only if the prices for both items are setup under the same method/table.

It is possible to display multiple shipping lines with each cost if you are willing to have them listed separately rather than together. There is a ‘packages’ system built in to WooCommerce but it’s only activated via code snippets or third party plugins. We have a simple one here you can check out free:


Pre-sale question:

Is it possible to use the Plugin in following scenario ?
1-2 Quantity : Charges (n)
3-4 Quantity : Charges (n) + (b)
5-6 Quantity : Charges (n) + (b X 2)
7-8 Quantity : Charges (n) + (b X 3)
9-10 Quantity : Charges (n) + (b X 4)\

n= 10, b =5
1-2 Quantity : Charges (10$) = 10
3-4 Quantity : Charges (10$) + (5$) = 15
5-6 Quantity : Charges (10$) + (5$ X 2) = 20
7-8 Quantity : Charges (10$) + (5$ X 3) = 25
9-10 Quantity : Charges (10$) + (5$ X 4) = 30
....and so on…..

Please confirm, so I can decide to buy.

I’m not sure I understand. When you add the method to your shipping zone, it should be active by default. Then you click on the title to gain access to the settings page.

(1) Would it work this way ? it will not work if put United Status in ZONEName1 while method is flat-rate, and then I put United Stats in Zonename2 and method is Table-Rate

(2) How to configure this : (* *Flat Base fees $5 over the order + $5 upon every 2 Items **)

With reference to your first reply ===>Yes, I think you could make this work! There is a cost option that could help make this scenario pretty simple. You can charge ‘for every’ x number of items, so in your case it would read ”$5 for every 2 items”. Then if you add a flat fee of $5 on top of that, it should always calculate per your example above, and need only one row in your table to accomplish it <===

It looks like you opened a ticket with this same response. It has been updated there explaining the rules of zones needing to all be unique. Customers are only allowed one zone so if you have duplicate zones, only the first one is ever going to count.

In regards to the configuration, please refer to this example on the demo site:

hi…i wonder if your plugin can do my senario: my standard shipping price for total cart is 15 USD for first 15 KG. after 15 KG i charge customer Extra 2 USD for each new 1KG after the 15 KG.

thats meen: A – in this case weight <=15.

if Total cart weight <=15 KG then the Total shipping price will be 15 USD.

B- in this case weight >15.

if Total Cart Weight =17 KG then the Total shipping price will be 19 USD.

if Total Cart Weight =20 KG then the Total shipping price will be 25 USD.

if Total Cart Weight =40 KG then the Total shipping price will be 65 USD.

can i make this with your plugin?tell me how ..because i try to in your demo But I couldn’t understand it

Definitely! This is a popular setup, but the configuration is a little different than expected. There’s no specific setting for this pricing type, but it is indeed doable.

This tutorial can help explain some of the details, and it’s similar to your scenario:

The trick is to remember that the incremental weight fee is going to count towards the entire order, not just everything past 15kg. So we have to adjust the base fee accordingly.

If you have any further questions, please let me know!

Hello. It is pre sale question.

I am trying dynamic price by subtotal. I made two condition. First is if subtotal less then 19.99, display 9.75$ second is if subtotal less then 39.99 display 11.50$ for shipping. Here is the configuration:

But when i set cart total as 18$ it shows 11.50$ shipping. Where i am wrong?

I’m happy to answer any presale questions you have!

I looked at the screenshot you attached and the problem seems to be the order of the rows. The shipping method is going to go through the table one row at a time, comparing the conditions to see if the other qualifies. A subtotal if $18 would qualify for both rows, so the second row is overriding the first. If you switch the rows it will work better :)

If there’s anything else I can help with, do let me know!

I logged a support call on the Bolder website April 28th and still no reply!

When I imported CSV data everything looks OK until I click on Save. The Conditions and Costs fields go blank.

If I manually enter data into the table and press Save, when I go back into the table the Conditions and Costs fields have gone blank.

I apologize for the delay in responding to your ticket. I thought this was related to another problem being experienced with the Import feature that is still ongoing. If it happens with normal configuration as well then it would be a different problem.

Unfortunately I cannot replicate the issue on my own. Is it all of your rows that lose data or just the newly added ones? If your table has a lot of rows in it, it’s possible you are maxing out your server’s limitation on form fields. By default this maximum is set to 100. Our first recommendation is to try and reduce the number of rows using different cost types to handle repetitive pricing. If that’s not possible, you will need to adjust your PHP settings as seen here:


We don’t get any error messages when saving the table. php_value max_input_vars was set to 2000 but we changed it to 5000 and it made no difference.

I can manually add rows now and save the data and it stays in the table but we have 60 rows per table (one for each country we ship to).

If I import a CSV file there is no error but when I go back into the table all the Conditions and Cost fields are empty – the Description field still has the data in it.

If I re import the old data that was already in the table it also disappears.

Okay, I’m sorry I misunderstood before. If manually adding the rows works correctly then I can further narrow down the problem to just the importer, which makes more sense.

I will update your ticket shortly with a patch you can test and see if it resolved this issue on your site as well.

Hello, i´ve created a support ticket 5 days ago and didn´t received any feedback. We urgently need your support to get this Plugin up and running. Ticket no. #4000. Thanks


I use “Boxtal” as a shipping plugin. It allows you to select on a map a pickup location. It works perfectly with the classic shipping methods of WooCommerce (Package, free shipping…). Unfortunately it doesn’t work with your plugin. Your plugin offers me the possibility to select “Boxtal” in the “Settings from Other Plugins” it’s perfect. But on the frontend, when selecting the “table rate” method, the link of the “Boxtal” card does not appear. It’s strange because your plugin is only a delivery calculator and “Boxtal” uses the classic Woocommerce method.

Do you have any idea of the problem? I know I don’t have support with you anymore, but if you tell me there is a solution, I will buy a new license to get the solution.


Would the Boxtal plugin need to verify which method or option is selected? Does that change anything? It’s possible our slightly different ID structure is to blame. It hasn’t been a problem as of late with most plugins, but a little while back that was the case for these types of issues.

Are you using a free version I can try to test and see?

Does this plugin has any video tutorials?

I’m afraid we do not at this time. The knowledgeable has tutorials with screenshots, and the demo site allows you to login and try the settings page if you like.

Hello, the import/export function does not work… The same problem existed in the previous version of the plugin and you had a modified version that you were sharing. Is there any plan to fix it permanently? My support has expired to be honest, but I’m not sure whether I have to renew support just to get this feature fixed.

I’m sorry to hear you are having trouble with the feature. I have not had any issues importing settings myself so I went back through the ticket system to review our previous conversation. (Generally when I offer a coded solution it’s just to get you through until the next update where the change will be made permanent.)

Based on the history there wasn’t any changes made to the Import/Export feature. We had figured that one of the bug fixes released in 4.2.1 had stopped the issue. So I am not quite sure what the issue is unfortunately.

If you don’t mind, would you try importing again? Then check your PHP error log to see if there’s a new error that has been added recently. It would be good to know if there is a message I can work from to determine the cause of the problem as I can’t replicate it on my own server.

If it’s easier, WooCommerce now tries to log your errors in a place that’s easier to find. From your dashboard to WooCommerce > Status > Logs. On the right side there is a select box where you can choose a different log. Try to find one with a ‘last updated’ date that is most recent.

Thank you for your reply, I realized that it is a user role issue. The admin role has no problem. The role I have this problem with is the Shop Manager role… Shop Manager can edit and save any table of rates but the import/export function does not work for him.

I have not modified any capabilities of this role. It has all the default WooCommerce capabilities as explained here: and here:

These capabilities include the import/export…

Thank you very much for the additional information. This definitely makes more sense. Our Import/Export feature is unique to this plugin so it uses different code and thus it’s own permissions check. I can see where this could cause an issue for the different user roles and I will get that adjusted ahead of the next update.

Thank you again for bringing this to my attention

Hello, a pre sale question:

For a client I need different shipping prices, depending on how much quantity is selected from different products (or more of the same product). The total of the cart needs to get something like this:

1 item – 85 2 items – 140 3 items – 164 4 items – 188 5 items – 212 6 or more – custom price (only after contact with the client)

the last option (6+ items) is not neccesary, but would be great if that could be implemented.

Is above possible with this plugin?

Yes, this plugin could definitely handle that! It does not offer a custom quote option when you reach your max, however. The link below has an example of a simple quantity range setup:

If there’s anything else I can answer, please let me know!

Nice Work! Best of luck with more sale :)

Thank you :)


Tell us what you think!

We'd like to ask you a few questions to help improve CodeCanyon.

Sure, take me to the survey