=== Table Rate for WooCommerce by Flexible Shipping ===
Contributors: wpdesk,dyszczo,grola,piotrpo,marcinkolanko,damianmachnik
Donate link: https://flexibleshipping.com/table-rate/
Tags: table rate, table rate shipping, conditional shipping, shipping method, woocommerce shipping, flexible shipping, woocommerce table rate shipping, cart based shipping, weight shipping, weight based shipping, totals based shipping, order based shipping, shipping zones, shipping classes, shipping, free shipping, advanced shipping
Requires at least: 4.5
Tested up to: 5.4.1
Stable tag: 3.9.19
Requires PHP: 5.6
License: GPLv3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html

The most flexible Table Rate Shipping WooCommerce plugin. Create almost every shipping scenario you need based on totals, weight, quantity and more.

== Description ==

= Table Rate Shipping Killer =

Flexible Shipping is the most advanced shipping plugin for WooCommerce stores allowing you to calculate the shipping costs based on weight and/or cart total. Combine it with the PRO version and it will become the only WooCommerce shipping plugin you'll ever need.

[youtube https://www.youtube.com/watch?v=C7dQ2jQ-iVc]

> **Upgrade to Flexible Shipping PRO**<br />
> Upgrade to [Flexible Shipping PRO now](https://flexibleshipping.com/table-rate/) to get the priority e-mail support and gain an access to all the PRO features!

= Possible Shipping Scenarios =

* Shipping costs based on cart weight
* Shipping costs based on cart total
* Adding handling fee or an insurance cost after reaching a certain order value
* Creating COD (Cash On Delivery) shipping method with additional costs
* Different shipping costs for different shipping classes (PRO)
* Disable/hide shipping method if a defined rule has been matched in the cart (PRO)
* Add a cost per whole order and per each one product in the cart (PRO)

These are only a few examples of the Flexible Shipping usage, however, its possibilities are almost endless and sky is the limit ;) We have described some of them in our docs and [Ready to use scenarios](https://docs.flexibleshipping.com/category/24-ready-to-use-scenarios).

= Features =

* Unlimited shipping methods and costs calculation rules
* Possibility of adding the titles and **descriptions** to your shipping methods
* Shipping cost based on cart total and/or weight
* Minimum and maximum values for cart total and/or weight
* Summing up the costs of e.g. two different rules at the same time e.g. one based on cart total and the second based on weight
* Free shipping override
* Option to display the selected shipping methods only for logged-in users
* Further shipping companies integrations (see the info below for details)
* Compatible with WooCommerce 2.6 Shipping Zones (see the info below for details)
* WPML and Polylang compatibility
* CSV Import

= PRO Features =

* All free features
* **Shipping classes support**
* Shipping costs based on products' quantity and/or cart line item count
* Additional costs for price, weight, item, cart line item
* Stopping a rule (if the rule is matched the following rules will not be calculated)
* Cancelling a rule (if the rule is matched it will remain hidden and not be displayed among the shipping methods at the checkout)
* Additional calculation methods (sum, lowest cost, highest cost)
* Maximum shipping cost per shipping method
* Free shipping coupons support
* CSV Export

[Upgrade to PRO Now &rarr;](https://flexibleshipping.com/table-rate/)

= Flexible Shipping Locations Add-On =

Flexible Shipping Locations Add-On extends the default Flexible Shipping for WooCommerce functionalities and adds the possiblity to create the additional rules based on locations. It works with both ,the free and PRO versions so you can buy it separately if you do not need the PRO features.

[Buy Flexible Shipping Locations Add-On now &rarr;](https://flexibleshipping.com/products/flexible-shipping-locations-woocommerce/)

= Docs =

[View Flexible Shipping Docs](https://docs.flexibleshipping.com/collection/20-fs-table-rate)

= Support Policy =

We provide a limited support for the free version of our Flexible Shipping plugin on the [dedicated plugin Support Forum](https://wordpress.org/support/plugin/flexible-shipping/). Please upgrade to PRO version to get the priority e-mail support as well as all PRO features. [Upgrade Now &rarr;](https://flexibleshipping.com/table-rate/)

= Further Integrations =

**United Kingdom**

We have released a DPD UK WooCommerce integration for Flexible Shipping covering the whole UK teritory. Check our plugin and [offer your customers the DPD UK services at your shop &rarr;](https://flexibleshipping.com/products/dpd-uk-dpd-local-woocommerce/)

**Poland**

There are also some more further integrations that we provide for Flexible Shipping in Poland:

* DPD - WooCommerce
* DHL - WooCommerce
* Paczkomaty InPost - WooCommerce
* eNadawca Poczta Polska - WooCommerce
* Paczka w Ruchu - WooCommerce

[View all the Polish integrations here &rarr;](https://www.wpdesk.pl/kategoria-produktu/wysylka/)

> **Get more WooCommerce plugins from WP Desk**<br />
> We provide premium plugins for the checkout/products' customization, shipping, invoicing and more. Check our [premium WooCommerce plugins here →](https://www.wpdesk.net/products/)

= Supported Currency Switchers =

* Aelia Currency Switcher
* Multi Currency Store
* WooCommerce Currency Switcher
* WPML

= Translations =

* English - default, always included
* Polish
* German by [jensratzel](https://profiles.wordpress.org/jensratzel/)

= Flexible Shipping in a nutshell =

Key features:

* improve shipping-related user experience,
* create custom shipping rules,
* offer the free shipping based on the price or products' in the cart quantity,
* cost based shipping cost
* weight based shipping cost
* total order based shipping cost,
* item count based shipping cost,
* shipping class based shipping cost,
* WooCommerce shipping cost rules,
* WooCommerce shipping plugin,
* WooCommerce table rate shipping.

Give it a try and find out that our Flexible Shipping is the only one Table Rate Shipping plugin you need!

== Installation	 ==

This plugin can be easilly installed like any other WordPress integration by following the steps below:

1. Download and unzip the latest zip file release.
2. Upload the entire plugin directory to your /wp-content/plugins/ path.
3. Activate the plugin using the Plugins menu in WordPress sidebar menu.

Optionally you can also try to upload the plugin zip file using Plugins -> Add New -> Upload Plugin option from the WordPress sidebar menu. Then go directly to point 3.

== Frequently Asked Questions ==

= How to configure the plugin? =

To make it clear and as easy as possible we have prepared the detailed step-by-step guides in our [Flexible Shipping Docs here](https://docs.flexibleshipping.com/collection/20-fs-table-rate).

= Do you offer support? =

We provide a limited support for the free version of our Flexible Shipping plugin on the [dedicated plugin Support Forum](https://wordpress.org/support/plugin/flexible-shipping/). Please upgrade to PRO version to get the priority e-mail support as well as all PRO features. [Upgrade Now &rarr;](https://flexibleshipping.com/table-rate/)

== Screenshots ==

1. Main Settings in WooCommerce 2.5.
2. Main Settings in WooCommerce 2.6 and up.
3. Shipping Methods list.
4. Add/Edit Shipping Method.
5. Shipping Rules Settings.

== Upgrade Notice ==

If you are upgrading from the old Flexible Shipping version (1.3.2, woo-flexible-shipping) make sure to completely delete the old version first. If you install the new version without deleting the old one it may break your WordPress installation.

== Changelog ==

= 3.9.19 - 2020-05-05 =
* Added package items on shipping in admin order page
* Fixed infinite loop with third party shipping methods

= 3.9.18 - 2020-04-28 =
* Added integration with WooCommerce Multi-Currency plugin

= 3.9.17 - 2020-04-24 =
* Added Beacon functionality for Flexible Shipping PRO
* Changed PRO advertising

= 3.9.16 - 2020-04-14 =
* Fixed warning in cart and checkout when no shipping methods selected

= 3.9.15 - 2020-04-07 =
* Added JavaScript trigger after AJAX call for WP Desk shipping integrations

= 3.9.14 - 2020-03-27 =
* Added contextual info for DHL Express

= 3.9.13 - 2020-03-18 =
* Fixed icon for shipments with manifest created status

= 3.9.12 - 2020-03-17 =
* Added support for WooCommerce 4.0

= 3.9.11 - 2020-03-09 =
* Added additional security hardenings
* Fixed integrations link

= 3.9.10 - 2020-03-02 =
* Added bulk labels functionality - ability to print multiple labels in one file

= 3.9.9 - 2020-02-17 =
* Added log messages in WPDesk_Flexible_Shipping_Shipment class.
* Fixed fatal error in checkout: strongly typed array in woocommerce_shipping_chosen_method filter

= 3.9.7 - 2020-02-04 =
* Fixed import method with existing title

= 3.9.6 - 2020-01-03 =
* Added flexible_shipping_is_free_shipping filter

= 3.9.5 - 2020-01-03 =
* Added support for WooCommerce 3.9

= 3.9.4 - 2019-12-11 =
* Fixed WPML string translations compatibility

= 3.9.3 - 2019-10-07 =
* Added shipment data to WooCommerce REST API Order response
* Added A/B Tests on deactivation form
* Changed deactivation form to popup window
* Removed A/B Tests for pointer messages

= 3.9.2 - 2019-10-04 =
* Added support for WooCommerce 3.8 and Wordpress 5.3

= 3.9.1 - 2019-10-21 =
* Fixed tracker loader

= 3.9.0 - 2019-10-07 =
* Added prefixed libraries
* Fixed js problem with select2

= 3.7.0 - 2019-07-28 =
* Flexible Shipping Connect has been removed

= 3.6.4 - 2019-08-21 =
* Remove connect shutdown notice
* Removed Connect Sign up ability in shipping method settings
* Changed label for Calculation Method to Rules Calculation on shipping method settings

= 3.6.3 - 2019-08-12 =
* Added support for WooCommerce 3.7

= 3.6.2 - 2019-08-05 =
* Fixed Fatal error: boolean given in mutex

= 3.6.1 - 2019-07-30 =
* Connect shutdown notice
* Removed connect for new users

= 3.6.0 - 2019-07-24 =
* Added filter flexible_shipping_csv_delimiter to CSV delimiter
* Fixed support for &#44; in exported csv file
* Fixed import speed for more complex shipment methods

= 3.5.1 - 2019-07-11 =
* Fixed rare change for fatal error when activating plugin

= 3.5.0 - 2019-07-10 =
* Most code moved to shared libraries

= 3.4.0 - 2019-05-22 =
* Added new filter wpdesk_is_wp_log_capture_permitted

= 3.3.14 - 2019-05-20 =
* Fixed logs hijack even when log is disabled

= 3.3.13 - 2019-05-13 =
* Fixed fatal when can't unserialize the token from persistence container
* Added option of hiding the FS Connect box
* Added plugin rate notice
* Fixed CSS select height

= 3.3.12 - 2019-05-08 =
* Fixed export/import for shipping classes with comma in name

= 3.3.11 - 2019-05-06 =
* Fixed chance for exception when using woocommerce logger

= 3.3.10 - 2019-05-06 =
* Changed logs library to the newest version

= 3.3.9 - 2019-04-25 =
* Fixed tag version

= 3.3.8 - 2019-04-25 =
* Fixed conflict with wp-notice/wp-logs library

= 3.3.7 - 2019-04-23 =
* Changed priority for shipping creation hook for shipping integrations

= 3.3.6 - 2019-04-16 =
* Fixed export - to many methods in export file

= 3.3.5 - 2019-04-10 =
* Fixed polish translations

= 3.3.4 - 2019-04-10 =
* Removed Flexible Shipping menu

= 3.3.3 - 2019-04-04 =
* Fixed notices in order meta box
* Fixed changelog entries

= 3.3.2 - 2019-04-02 =
* Fixed weight calculation for float weight values
* Conditional logic on fields in order meta box

= 3.3.1 - 2019-04-01 =
* Fixed CSV import with multiple shipping classes

= 3.3.0 - 2019-03-19 =
* Added support for EDT (Electronic Trade Documents)

= 3.2.0 - 2019-03-11 =
* Added support for UPS Access Points for FS Connect
* Removed argument types for WooCommerce types (ie. WC_Order)

= 3.1.12 - 2019-03-05 =
* Fixed inifinite method call on WooCommerce 3.1

= 3.1.11 - 2019-02-27 =
* Fixed empty description in commodities (customs values)

= 3.1.10 - 2019-02-27 =
* Fixed price calculation in customs values

= 3.1.9 - 2019-02-21 =
* Fixed fatal error on wp-notice library

= 3.1.8 - 2019-02-19 =
* Fixed error handling on bulk labels generation
* Fixed polish translation for Create

= 3.1.7 - 2019-02-12 =
* Fixed warnings in cart or checkout when shipment default method is not valid for current package

= 3.1.6 - 2019-02-07 =
* Added filter for deactivation data in tracker

= 3.1.5 - 2019-02-04 =
* Fixed parameters order in notice constructor
* Fixed default shipment method in cart/checkout

= 3.1.4 - 2019-01-28 =
* Fixed fatal when free shipment
* Fixed issue for shipment with no costs

= 3.1.3 - 2019-01-23 =
* Tweaked pl translation
* Fixed issues on shipment creating by FS Connect

= 3.1.2 - 2019-01-16 =
* Fixed adding slashes to title and description
* Fixed error on saving integration settings when no service settings are saved
* Fixed configuration of shipping method integration form when multiple integrations enabled

= 3.1.1 - 2018-12-20 =
* Fixed label file extension

= 3.1 - 2018-12-13 =
* Added Cache settings in FS Connect Advanced settings
* Added info and link to planned integrations
* Added support for not allowed demo domain
* Fixed missing tracker message
* Fixed typo in Connect notices
* Fixed COD Enable for shipping methods functionality
* Fixed UK counties
* Fixed for free shipping zero value in settings

= 3.0.7 - 2018-12-07 =
* Added define to change shop saas domain using SAAS_FLEXIBLESHIPPING_URL_SHOP_DOMAIN
* Added filter to change shop saas domain flexible_shipping_saas_domain
* Fixed required PHP version
* Fixed missing manifests functions
* Fixed typo in connect notice
* Fixed translations in integration settings

= 3.0.6 - 2018-11-29 =
* Added Flexible Shipping Connect to create packages and generate shipping labels automatically from WooCommerce Orders list and manually from each order
* Added integration with UPS (Worldwide). Now you can connect your shop with your UPS account. No extra software is needed. You can cover the whole shipping process directly from your UPS WooCommerce environment.

= 3.0.5 - 2018-11-28 =
* Fixed residential address and send-as field from saas
* Fixed empty services handler

= 3.0.4 - 2018-11-22 =
* Fixed live rates on non supported service should not to initialize
* Fixed negotiated rates in live rates

= 3.0.4 - 2018-11-09 =
* Fixed negotiated rates

= 3.0.3 - 2018-11-09 =
* Fixed urls

= 3.0.0 - 2018-11-07 =
* First release of flexibleshipping.com platform integration
* Fixed multiple shipments in some cases

= 2.1.10 - 2018-10-17 =
Fixed error 500 after update to 2.1.8/2.1.9 version

= 2.1.9 - 2018-10-17 =
Fixed error 500 after update to 2.1.8 version

= 2.1.8 - 2018-10-16 =
* Added support for WooCommerce 3.5
* Dropped support for WooCommerce below 3.0 (the plugin may still work with older versions but we do not declare official support)
* Fixed multiple shipments in some cases

= 2.1.7 - 2018-09-05 =
* Fixed issue with the generation of many shipments for one order

= 2.1.6 - 2018-06-26 =
* Fixed error with conflict static tracker

= 2.1.5 - 2018-06-25 =
* Tweaked tracker data anonymization
* Fixed tracker notice

= 2.1.4 - 2018-06-11 =
* Fixed missing metabox Add Shipment in WooCommerce 3.4

= 2.1.3 - 2018-05-29 =
* Fixed opt-in/opt-out links

= 2.1.2 - 2018-05-23 =
* Added support for WooCommerce 3.4

= 2.1.1 - 2018-05-10 =
* Fixed calculation method message when taxes disabled
* Fixed session starting - do not start session in AJAX calls

= 2.1 - 2018-05-07 =
* Added Flexible Shipping tab on WooCommerce Shipping
* Tweaked calculation method for shipping rules - based on WooCommerce tax display
* Fixed display printer name on order edit
* Fixed notice after all rules delete

= 2.0.1 - 2018-03-01 =
* Fixed problems with deactivation plugin on multisite
* Fixed WP Desk Tracker warning after enabling the plugin

= 2.0 - 2018-01-24 =
* Added support for WooCommerce 3.3
* Fixed installing the plugin by wp-cli
* Fixed error on cart page for WooCommerce below 3.2

= 1.9.12 - 2017-12-22 =
* Fixed generating empty zip file for labels with no shipment
* Fixed some minor notices with WooCommerce 3.2.x

= 1.9.11 - 2017-11-20 =
* Fixed shipment filtering for shipping integrations
* Fixed saving decimal values for free shipping

= 1.9.10 - 2017-10-10 =
* Added support for WooCommerce 3.2

= 1.9.9 - 2017-09-25 =
* Fixed parse error on PHP 5.3 after update to version 1.9.8

= 1.9.8 - 2017-09-11 =
* Added compatibility with WooCommerce DPD UK 1.0

= 1.9.7 - 2017-08-09 =
* Added compatibility with Flexible Shipping PRO 1.5

= 1.9.6 - 2017-07-27 =
* Fixed a problem with WPML when using multiple currencies
* Fixed an error when product weight is not set
* Tweaked message in WP Desk Tracker class

= 1.9.5 - 2017-07-14 =
* Added support for WooCommerce 3.1
* Fixed display shipping methods after adding Flexible Shipping to COD payment method

= 1.9.4 - 2017-06-22 =
* Added support for WordPress below 4.7 in the WP Desk Tracker class
* Fixed shipping methods export in Flexible Shipping PRO

= 1.9.3 - 2017-06-13 =
* Added compatibility with WooCommerce DPD 1.0
* Integrated WP Desk Tracker class to help us understand how you use the plugin (you need to opt in to enable it)

= 1.9.2 - 2017-06-07 =
* Added compatibility with WooCommerce InPost 3.4

= 1.9.1 - 2017-06-02 =
* Added compatibility with WooCommerce InPost 3.3

= 1.9 - 2017-03-30 =
* Added support for upcoming WooCommerce 3.0
* Added support for bulk shipping available in our shipping integrations

= 1.8 - 2017-01-24 =
* Added CSV import for shipping methods including rules
* Added WooCommerce Currency Switcher support
* Added shipping classes support in WPML
* Changed cart weight calculting to WC()->cart->cart_contents_weight
* Dropped support for WooCommerce 2.4 and lower
* Removed Enable checkbox in general settings

= 1.7 - 2016-12-14 =
* Added WPML and Polylang support
* Added custom "free shipping" label
* Removed decrecated enable/disable for main shipping method
* Fixed choosing default shipping method in the checkout

= 1.6.2 - 2016-10-26 =
* Tweaked support for the default "Rest of the world" shipping zone
* Added support for "Network activated" WooCommerce on Multisite installations

= 1.6.1 - 2016-10-14 =
* Added information about DHL WooCommerce integration

= 1.6 - 2016-09-29 =
* Added support for Flexible Shipping Locations Add-On
* Fixed WooCommerce 2.3.x compatibility

= 1.5 - 2016-09-12 =
* Added support for currency switching: WPML, Aelia Currency Switcher, Multi Currency Store
* Added optional shipping method description

= 1.4.1 - 2016-06-17 =
* Fixed default shipping method in the checkout

= 1.4 - 2016-06-14 =
* Converted to English
* Added Polish (pl_PL) translation
* Added FREE and PRO versions

= 1.3.2 - 2016-04-12 =
* Fixed a few notices

= 1.3.1 - 2016-03-14 =
* Fixed default shipping method in the checkout

= 1.3 - 2016-03-07 =
* Added enabling shipping method only for logged in users
* Fixed a notice in generate_shipping_methods_html

= 1.2 - 2016-01-26 =
* Automatic updates

= 1.1.1 - 2015-12-01 =
* Added WooCommerce 2.3 compatibility

= 1.0 - 2015-11-03 =
* First release!
