This article will show you how to set different shipping costs based on whether the user is b2b or b2c, or based on order value or order quantity.
Here's what the end result looks like:
And here's how to set it up:
1) Go to WooCommerce->Settings->Shipping, select a zone, and in Shipping methods disable all methods, and keep only Free Shipping.
2) Click "Edit" on "Free Shipping" and rename it to "Dynamically Calculated Shipping".
That way users would see "Dynamically Calculated Shipping" as costing 0, and then the actual shipping cost below.
3) Create custom "add tax/fee" dynamic rules and name them "shipping cost" depending on whether the user is b2b/b2c. You could create multiple "Add Tax" rules, all named "Shipping Cost", and set conditions such as <500 , >500 AND <1500, >1500, etc to set a different shipping cost based on the order value.
Here's an example of setting shipping cost to $15 for B2B users:
Here's an example of setting shipping cost $10 for orders < $1000: