Skip to content

wpcodefactory/order-minimum-amount-for-woocommerce

Repository files navigation

=== Order Minimum/Maximum Amount for WooCommerce ===
Contributors: wpcodefactory, omardabbas, karzin, anbinder, algoritmika, kousikmukherjeeli
Tags: woocommerce, order minimum amount, order maximum amount
Requires at least: 6.1
Tested up to: 6.6
Stable tag: 4.5.3
License: GNU General Public License v3.0
License URI: http://www.gnu.org/licenses/gpl-3.0.html

Implement minimum/maximum order amounts, regulate quantity, weight, volume, dimensions, and apply user-role-specific conditions with Order Minimum/Maximum Amount for WooCommerce

== Description ==

> “What I needed: Easy to configure, and helpful support in the forum. Working as expected.” – ⭐⭐⭐⭐⭐  [reivorz](https://wordpress.org/support/topic/what-i-needed-61/)

[Main Page](https://wpfactory.com/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Main Page**") | [Support Forum](https://wpfactory.com/support/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Support Forum**") | [Documentation & How to](https://wpfactory.com/docs/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Documentation & How to**") | [Demo](https://orderminmax.instawp.xyz/)

As the eCommerce landscape advances, establishing distinct order prerequisites, including setting minimum and maximum bounds, as well as numerous other conditions like weight and volume, becomes imperative, underscoring the necessity for a more refined tool.

Our plugin excels in this domain, providing a comprehensive command over **minimum/maximum limits** and various order conditions for your WooCommerce setup, all embedded within a simple, intuitive interface.

Accommodating a variety of order metrics, the plugin empowers you to enforce constraints whether they relate to **order total, product quantity, or specific dimensional parameters**, delivering a broad application spectrum.

Whether your goal is to enforce specialized limits, numeric prerequisites, or enforce particular conditions for your customers’ orders, our tool has been professionally crafted to fulfill such demands, while concurrently enhancing the entire purchasing process.

**Before delving deeper into our plugin features, here is what to expect:**

* **Expansive Order Limit Management:** Customize minimum and maximum order requirements based on total, quantity, and various physical measurements (e.g., weight, volume, length), along with limitations based on categories and tags, ensuring optimal control especially for bulk purchases or specific order specifications.

* **Multi-Dimensional Capability:** Activate various conditions concurrently, such as min/max order total, quantity, and various physical dimensions, ensuring all aspects of an order comply with established parameters.

* **Tailored Customer Messaging:** Offer customizable messages to customers on cart and checkout pages, enhancing communication and clarity throughout their purchasing journey.

* **Inclusive/Exclusive Calculation Options:** Decide if you want to include or exclude elements like taxes, shipping, discounts, and/or fees when calculating the total order sum, providing unmatched control over order validation.

* **User Role-Specific Conditions:** Choose to apply diverse order conditions based on user roles, enabling a full approach to order management.

* **Checkout Page Management:** Optionally restrict access to the checkout page for customers when amount prerequisites are not fulfilled, preventing "surprises" for your customers a bit late.

* **Advanced Maximum Amount Controls:** For maximum limits, choose to validate amounts immediately upon adding to cart, or alternatively, entirely conceal the “add to cart” button for products when amounts surpass the defined limits.


___
## 🤝 Recommended By##

* [LearnWoo: 6 Best Free Plugins that Restrict Amount](https://learnwoo.com/best-free-plugins-restrict-amount-based-wordpress-user-roles/ "LearnWoo: 6 Best Free Plugins that Restrict Amount")

* [WPHive: Order Minimum/Maximum Amount for WooCommerce](https://wphive.com/plugins/order-minimum-amount-for-woocommerce/ "WPHive: Order Minimum/Maximum Amount for WooCommerce")

* [ThemeLocation: How To Set Minimum Order Amount In WooCommerce](https://www.themelocation.com/how-to-set-minimum-order-amount-in-woocommerce/ "ThemeLocation: How To Set Minimum Order Amount In WooCommerce")

* [Frip In: 6 Best WooCommerce Minimum Maximum Quantity Plugin](https://www.frip.in/woocommerce-minimum-maximum-quantity-plugin/#4 "Frip In: 6 Best WooCommerce Minimum Maximum Quantity Plugin")

* [WPGlob: Best WordPress Product Management Plugins For Easy Usage](https://wpglob.com/best-wordpress-product-management-plugins-for-easy-usage/ "WPGlob: Best WordPress Product Management Plugins For Easy Usage")

## 🚀 Main Features: FREE Version##

### 🚀 Limit Orders by ِAmounts: Sum, Quantities, or BOTH ###

* Restrict minimum & maximum based on order sum amount or product quantities

* Specify customized minimum or maximum sum, minimum or maximum quantities, or any mix of these values to restrict orders

* Select to apply rules collectively (matching all requirements) or any of them

* Choose to calculate sum based on "Order total" vs "Order subtotal"

### 🚀 Ultimate Restrictions Options: Limit Orders by Anything you need ###

* Restrict orders minimum & maximum values based on **Product Weight** added to cart

* Restrict orders minimum & maximum values based on **Product Volume** added to cart

* Restrict orders minimum & maximum values based on **Product Length** added to cart

* Restrict orders minimum & maximum values based on **Product Width** added to cart

* Restrict orders minimum & maximum values based on **Product Height** added to cart

* Restrict orders minimum & maximum values based on **Product Area** added to cart

* Restrict orders minimum & maximum values based on **Number of Unique Products** added to cart

* Restrict orders minimum & maximum values based on **Number of Unique Product Categories** added to cart

* Restrict orders minimum & maximum values based on **Number of Unique Product Tags** added to cart

* **Mix & Match** any of the above values to meet your desired needs

### 🚀 Guide Users With Notification Messages on Product Page, Cart, Mini-Cart & Checkout ###

* Choose to show messages as notices only or error (to prevent proceeding to cart or checkout)

* Select to show the first unmet condition, or a message for each unmet requirement

* Customize messages for each minimum and maximum condition not meeting the defined values

* Show informed messages by highlighting wrong & correct values using %amount% (requirement) and %total% (customer current value), or choose from %diff%, %amount_raw%, %total_raw%, %diff_raw%, %fee_amount% all available to show in any notification message

* Customize messages with full support for HTML

* Multi-Language support (WPML/Polylang): Show translated messages for your multi-language store

#### Notification Messages Position ####

Have a full control where your messages appear based on page (select one more more than a position on each page):

* Product Page: Select one or more of the following locations:
1. Before/after add to cart button
2. Before/after quantity
And more...

* Cart: Select one or more of the following locations:
1. Before cart
2. Before cart table
3. Before cart content
4. Cart content
5. Cart coupons
And more...

* Mini-Cart: Select one or more of the following locations:
1. Before/after mini-cart
2. Before/after mini-cart content
And more...

* Checkout: Select one or more of the following locations:
1. Before Checkout form
2. Before/after customers details
3. In Billing or Shipping
And more...

### 🚀 Customize Orders Minimum & Maximum Limits by User Roles ###

* Control minimum & maximum amounts each customer can buy based on their user role

* Supports all built-in user roles as well as custom roles created by 3rd party plugins

* Full flexibility defining either minimum values, maximum values, or both for any role

* Go further and apply the restrictions on user basis, restrict (or increase) min/max order limits for any selected user

* Control restriction priority (set the order in which min/max amounts are applied across different roles)

### 🚀 Control Restrictions & Limits for Logged/Non-logged in Users ###

* Require non-logged in users to login in order to see min/max requirements

* Customize notification message appearing for guest/non-logged in users

* Select if message will be of a notice or error type

### 🚀 Advanced & Customized Options ###

* Prevent proceeding to checkout by redirecting users to cart page and/or hiding "Checkout" button

* Enable sum cart total rounding (round, ceil, floor) for 100% accuracy of orders sum matching desired restrictions

* Exclude taxes from order total/subtotal

* Exclude shipping, discounts, or fees when applying restrictions on **Order Total**

* Include WC Subscription recurring amount to cart total

* Validate maximum limits when customer clicks "add to cart" button

* Hide "Add to cart" button if maximum limits are reached on shop/archive or product pages

* Show custom messages on shop & product pages when "Add to cart" button is hidden

___ 

> “Just Amazing!: Requested a feature and in no time new version was released with enhancements. Really appreciate the effort!” – ⭐⭐⭐⭐⭐ [Gangesh Matta](https://wordpress.org/support/topic/just-amazing-117/)

> “Very good plugin and excellent support!: Very responsive support. Bugs acknowledged and fixed. Product enhancement requests fulfilled lighting fast. Simply amazing!” – ⭐⭐⭐⭐⭐ [jlstysis](https://wordpress.org/support/topic/very-good-plugin-and-excellent-support-12/)
___


## 🏆 Do More: PRO Version ##

Too many features already?

All what's listed above is included in the free version of the plugin, however, if you would want to unlock new potentials for forcing minimum & maximum amounts for your store, we offer the upgraded [Order Minimum/Maximum Amount for WooCommerce](https://wpfactory.com/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme) plugin.

Upgrade & get a collection of more features, such as:


### 🏆 Add Fees When Going Below Minimum & Exceeding Maximum Amounts  ###

* Allow exceeding defined maximum values while applying custom fees amount

* Sell below minimum amounts but with extra fees

* Define custom fees based on amount type (sum, quantity, weight, volume, etc.)

* Properly title each fees based on amount type

### 🏆 Customize Minimum & Maximum Limits on Users Level ###

* Apply minimum & maximum restrictions on user basis, restrict (or increase) min/max order limits for any selected user

* Define either minimum values, maximum values, or both for any role to apply to any user

* Control restriction priority (prioritize user restriction over shipping restrictions for example)

### 🏆 Create Minimum & Maximum Amounts By Product, Category, or Tag ###

* Set different min/max amounts per product, product category and/or product tag

* Customize values on product, category, or tag edit pages based on the desired rule or combination for rules

* Variation support: Define minimum & maximum allowed amounts by product variations

### 🏆 Customize Minimum & Maximum Amounts By Shipping ###

* Define minimum & maximum amounts per shipping method (by having min/max values for each method)

* Do the same for shipping instance or shipping zone

* Customize messages appearing with wrong values based on shipping criteria

* Hide unavailable shipping methods when no methods are available based on defined values

### 🏆 Customize Minimum & Maximum Amounts By Payment Gateway ###

* Define minimum & maximum amounts per each payment gateway

* Hide unavailable payment gateways when no gateway matches the values defined

* Customize messages appearing with wrong values based on payment gateway

### 🏆 Memberships Compatibility: Define Min & Max Amounts by Membership Plugins ###

* Control order amounts for membership stores

* Compatible with [WooCommerce Memberships](https://woocommerce.com/products/woocommerce-memberships/ "WooCommerce Memberships"), [MemberPress](https://memberpress.com/ "MemberPress") and [SUMO Memberships](https://fantasticplugins.com/shop/sumo-memberships/ "SUMO Memberships") plugins.

### 🏆 Define Minimum & Maximum Amounts by Currency ###

* For multi-currency, specify minimum & maximum amounts per currency

* You can define order amounts (sum, quantity, volume, etc.) for any currency supported by WooCommerce

* Opt to prioritize restrictions by currency over any other restrictions

### 🏆 Apply or Skip Minimum & Maximum Amounts by Coupons ###

* Select to apply minimum/maximum amounts (defined on all plugin settings) ONLY if selected coupon(s) are applied

* Select to remove minimum/maximum restrictions if specific coupon(s) are applied

### 🏆 Apply or Skip Minimum & Maximum Amounts by Product, Category, or Tag ###

* Specify to apply min/max amounts only if desired product(s), category(s), or tag(s) are present in cart

* Similarly, remove any restrictions based on product, category, or tag

* Include & Exclude options support simple products, variable products, and even variations

### 🏆 Calculate Cart Total Based on Specific Product, Category, or Tag ###

* Utilize this option to calculate the limit exclusively for selected product(s), category(s), or tag(s), regardless of other items in the cart

* Calculate cart total to specify the desired minimum or maximum amounts based on a mix of products only

### 🏆 Restrict Quantity Input Field on Product Page by Minimum & Maximum Amounts ###

* Set default quantity based on "Per product" minimum limits

* Set minimum parameter based on "Per product" minimum limits

* Set maximum parameter based on "Per product" maximum limits

### 🏆 More Advanced Options ###

* Use shortcodes for amounts to define custom values

* Control Non-logged in user messages display locations

* **Product Bundles:** Compatibility with [Product Bundles](https://woocommerce.com/products/product-bundles/ "Product Bundles") by including bundled cart item on cart total calculation, or creating bundle price amount type

* **WooCommerce Subscriptions:** Compatibility with [WooCommerce Subscriptions](https://woocommerce.com/pt-br/products/woocommerce-subscriptions/ "WooCommerce Subscriptions") by skipping min/max amount checks if the user has a switching subscription item in cart

* **Currency Switcher for WooCommerce:** Compatibility with [Currency Switcher for WooCommerce – By WP Wham](https://wordpress.org/plugins/currency-switcher-woocommerce/ "Currency Switcher for WooCommerce") to get exchange rates from the Currency Switcher plugin

* **REST API Support:** Add user metas to the REST API

* Premium Support

And much more.

___
## 💯 Why WPFactory?##

* **Experience You Can Trust:** Over a decade in the business
* **Wide Plugin Selection:** Offering 65+ unique and powerful plugins
* **Highly-Rated Support:** Backed by hundreds of 5-star reviews
* **Expert Team:** Dedicated developers and technical support at your service

___

## What's Next? Discover More Plugins by WPFactory ##

WPFactory has a diverse range of plugins tailored to enhance your experience, some of our top-selling plugins are:

* [**Min Max Step Quantity**](https://wpfactory.com/item/product-quantity-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Min Max Step Quantity**"): Set minimum, maximum, step, and default product quantities, including dropdowns and decimal options on WooCommerce (**[Free version](https://wordpress.org/plugins/product-quantity-for-woocommerce/ "Free version")**)

* [**Cost of Goods for WooCommerce**](https://wpfactory.com/item/cost-of-goods-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Cost of Goods WooCommerce**"): Enhance profit maximization and financial management by accurately calculating your WooCommerce store's COGS (**[Free version](https://wordpress.org/plugins/cost-of-goods-for-woocommerce/ "Free version")**)

* [**Maximum Products per User**](https://wpfactory.com/item/maximum-products-per-user-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Maximum Products per User**"): Impose personalized purchase limits based on user roles and date ranges to manage customer buying behavior (**[Free version](https://wordpress.org/plugins/maximum-products-per-user-for-woocommerce/ "Free version")**)

* [**Order Minimum/Maximum Amount**](https://wpfactory.com/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Order Minimum/Maximum Amount**"): Customize order limits by amount, quantity, weight, or volume, including user role, category, and more (**[Free version](https://wordpress.org/plugins/order-minimum-amount-for-woocommerce/ "Free version")**)

* [**EU/UK VAT Manager for WooCommerce**](https://wpfactory.com/item/eu-vat-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**EU/UK VAT Manager for WooCommerce**"): Automate VAT compliance for your WooCommerce store, including settings and VIES validation for a seamless experience (**[Free version](https://wordpress.org/plugins/eu-vat-for-woocommerce/ "Free version")**)

* [**Email Verification for WooCommerce**](https://wpfactory.com/item/email-verification-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Email Verification for WooCommerce**"): Boost security and credibility by verifying customer emails, reducing spam, and improving email marketing (**[Free version](https://wordpress.org/plugins/maximum-products-per-user-for-woocommerce/ "Free version")**)

* [**Free Shipping Over Amount for WooCommerce**](https://wpfactory.com/item/amount-left-free-shipping-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Free Shipping Over Amount for WooCommerce**"): Encourage higher spending by offering free shipping based on amount, with a progress bar for customers (**[Free version](https://wordpress.org/plugins/amount-left-free-shipping-woocommerce/ "Free version")**)

* [**Dynamic Pricing & Bulk Quantity Discounts**](https://wpfactory.com/item/product-price-by-quantity-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme "**Dynamic Pricing & Bulk Quantity Discounts**"): Advanced dynamic pricing and discount rules for WooCommerce, encouraging bulk purchases and driving more sales (**[Free version](https://wordpress.org/plugins/wholesale-pricing-woocommerce/ "Free version")**)

## ❤️ User Testimonials: See What Others Are Saying!##

> “the plugin is very well made, it has many options even in the free version. I needed support and it solved my problem in just a few seconds. I am very satisfied” – ⭐⭐⭐⭐⭐ [Maurizio Coda](https://wpfactory.com/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme)

> “Wow such a fantastic plugin! The ability to set minimum order value saved us completely” – ⭐⭐⭐⭐⭐ [Helen](https://wpfactory.com/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme)

> “Using the Pro version. Support has been very good. They really know their product and WP. Product works well with lots of options.” – ⭐⭐⭐⭐⭐ [Washington Chestnut Co](https://wpfactory.com/item/order-minimum-maximum-amount-for-woocommerce/?utm_source=wporg&utm_medium=organic&utm_campaign=readme)

> “The best: The best supports ever! They have helped me with everything I have needed! It has been a pleasure. Also the Plugin itself work perfectly!” – ⭐⭐⭐⭐⭐ [matte61](https://wordpress.org/support/topic/the-best-2262/)


== Installation ==

**Follow these simplified steps to get your plugin up and running:**

**From the WordPress Admin Panel:**
1. Navigate to “Plugins” > “Add New”.
2. Use the search bar and find the plugin using the exact name.
3. Click “Install Now” for the desired plugin.
4. Once the installation is finished, click “Activate”.

**Manual Installation Using FTP:**
1. Download the desired plugin from WordPress.org.
2. Using your preferred FTP client, upload the entire plugin folder to the /wp-content/plugins/ directory of your WordPress installation.
3. Go to “Plugins” > “Installed Plugins” in your dashboard and click “Activate”.

**Manual download & upload from the WordPress Admin Panel:**
1. Download the desired plugin in a ZIP format.
2. On your site, navigate to “Plugins” > “Add New” and click the “Upload Plugin” button.
3. Choose the downloaded plugin file and click “Install Now.”
4. After the installation is complete, click “Activate”.

**Post-Activation:**
Once activated, access the plugin's settings by navigating to “WooCommerce > Settings” and look for the relevant tab.


== Screenshots ==

1. Frontend example – Cart notice.

== Changelog ==

= 4.5.3 - 18/10/2024 =
* Dev - Add Cross-selling library.
* Dev - Move settings to WPFactory menu.
* Dev - Added the License Key Manager library.
* Dev - Improve compatibility with HPOS.
* WC tested up to: 9.3.

= 4.5.2 - 29/08/2024 =
* Fix - Fees class cleared.
* Fix - Fixed possible javascript error on cart page related to wcBlocksData.

= 4.5.1 - 14/08/2024 =
* Fix - Fixed missing files.

= 4.5.0 - 13/08/2024 =
* Dev - Improved compatibility between Payment Gateways section and checkout block.

= 4.4.9 - 30/07/2024 =
* Tested up to: 6.6.
* WC tested up to: 9.1.

= 4.4.8 - 04/07/2024 =
* Fix - Fees - Improved Fees compatibility on cart and cart block.
* Fix - General - Improved compatibility between "Proceed to checkout button" option and the Cart block.
* Dev - Added 'alg_wc_oma_check_notices_on_block_cart_change' action.
* Dev - Added 'alg_wc_oma_msg_display_on_cart_block_update' javascript event.

= 4.4.7 - 28/06/2024 =
* Fix - Compatibility with cart/checkout block could create a problem on classic cart/checkout.

= 4.4.6 - 27/06/2024 =
* Fix - Cart and checkout messages will auto update on cart/checkout blocks changes.
* Change - Added block positions on Messages > Cart/Checkout sections.
* Dev - Added `alg_wc_oma_msg_templates` filter to control the messages templates.

= 4.4.5 - 24/06/2024 =
* Fix - Messages - Some positions are not being displayed properly
* Dev - Messages - Added a container for the messages: `<div class="alg-wc-oma-msg">{content}</div>`.
* WC tested up to: 9.0.

= 4.4.4 - 04/04/2024 =
* Update - readme.txt
* Tested up to: 6.5.

= 4.4.3 - 26/03/2024 =
* Fix - General - Checkout options - Add "Block store api request" option back.

= 4.4.2 - 25/03/2024 =
* Fix - Multiple warnings of "Creation of dynamic property is deprecated" are being triggered.
* General - Checkout options - Remove "Block store api request" option, making it enabled according to the "Block checkout process" option.
* WC tested up to: 8.7.

= 4.4.1 - 20/02/2024 =
* Fix - Link from `%term_title_with_link%` does not close.

= 4.4.0 - 19/02/2024 =
* Dev - Add `%term_link%` and `%term_title_with_link%` placeholders for "Per product category" and "Per product tag" scopes.
* WC tested up to: 8.6.

= 4.3.9 - 18/12/2023 =
* WC tested up to: 8.4.
* Update readme.txt file.

= 4.3.8 - 24/11/2023 =
* Dev - Compatibility - Add compatibility option with PayPal for WooCommerce plugin to disable the PayPal buttons.
* WC tested up to: 8.3.
* Tested up to: 6.4.

= 4.3.7 - 02/11/2023 =
* Fix - Priority replaces product tag values. Remove it.

= 4.3.6 - 30/10/2023 =
* Dev - General - Block checkout process - New option: Checkout hook.

= 4.3.5 - 18/10/2023 =
* Dev - User roles - New option: Get user roles method.
* WC tested up to: 8.2.

= 4.3.4 - 26/09/2023 =
* WC tested up to: 8.1
* Update plugin icon, banner.

= 4.3.3 - 04/09/2023 =
* Dev - General > Checkout options > Block store api request

= 4.3.2 - 20/08/2023 =
* Fix - Counting all unique product categories in the cart products to restrict order by category count.
* Dev - Messages - New option: Display one message for each limit problem.
* Dev - Checkout options - Block checkout process using REST API.
* Dev - Checkout options - New function `get_cart_total` for REST API.
* Dev - HPOS compatibility.
* WC tested up to: 8.0.
* Tested up to: 6.3.

= 4.3.1 - 09/07/2023 =
* new setting General - Include WC Subscription recurring amount to cart total.

= 4.3.0 - 20/06/2023 =
* WC tested up to: 7.8
* Tested up to: 6.2.

= 4.2.9 - 20/03/2023 =
* Fix plugin name.

= 4.2.8 - 16/03/2023 =
* Fix - Typo in Russian translation.
* WC tested up to: 7.5.

= 4.2.7 - 15/02/2023 =
* Dev - Currencies - New option to calculate currency value by exchange rates.
* Dev - Compatibility - Get exchange rates from the Currency Switcher plugin by WP Wham.
* Dev - Improve the way of initializing the main class.
* WC tested up to: 7.4.

= 4.2.6 - 02/02/2023 =
* Add Russian translation.
* WC tested up to: 7.3.

= 4.2.5 - 05/01/2023 =
* Dev - Messages - Cart - Add "Blocks cart enqueue data" as a way of showing the notice on Cart block.
* Dev - Messages - Checkout - Add "Blocks checkout enqueue data" as a way of showing the notice on Checkout block.
* Dev - General - Checkout options - Block checkout process will now work on Checkout block.
* WC tested up to: 7.2.

= 4.2.4 - 11/11/2022 =
* Fix - General - Cart options - Proceed to checkout button - Disable is not working consistently.

= 4.2.3 - 09/11/2022 =
* Fix - General - Cart options - Proceed to checkout button - Disable is not working consistently.
* Tested up to: 6.1.
* WC tested up to: 7.1.

= 4.2.2 - 15/09/2022 =
* Dev - Improve compatibility with the Avada theme.
* WC tested up to: 6.9.

= 4.2.1 - 12/09/2022 =
* Fix - General - Cart options - Improve "Proceed to checkout buttons" checks.

= 4.2.0 - 16/08/2022 =
* Fix - PHP Warning: Undefined array key "line_subtotal".
* Fix - General - "Maximum" amount limit options - Validate on add to cart.
* Fix - General - "Maximum" amount limit options - Hide "add to cart" button.
* Fix - General - "Quantity" amount type options - Min and Max attributes should reflect when changing between variations.
* Dev - General - "Maximum" amount limit options - Improve hiding on variations.
* WC tested up to: 6.8.

= 4.1.9 - 21/07/2022 =
* Dev - Compatibility - WooCommerce Subscriptions - Add new option to skip min/max amount checks if the user has a switching subscription item in cart.
* WC tested up to: 6.7.

= 4.1.8 - 14/06/2022 =
* Fix - Products - Per product - Error: Cannot access protected property `Alg_WC_OMA_Pro_Products::$do_list_variations`.
* WC tested up to: 6.5.

= 4.1.7 - 06/06/2022 =
* Fix - Products - Per product category/tag is not working properly.
* Fix - PHP Warning: Undefined property: `Alg_WC_OMA_Pro_Products::$do_list_variations`.
* Dev - Memberships - Add compatibility with the SUMO Memberships plugin.
* Dev - Add `user_bought_term_id` param to `alg_wc_oma_amount` shortcode with the possibility of using multiple ids with commas.
* Dev - Add `check_parent_bought_term_id` param to `alg_wc_oma_amount` shortcode. Default is `false`.
* Tested up to: 6.0.

= 4.1.6 - 20/05/2022 =
* Fix - Amounts - Shortcodes are not changing the input type from number to text in all sections.
* Fix - Products - Per product - If "List variations" is disabled the limit set on a variable product should not consider the variations.
* Dev - Currencies - New option: "Using -1 in amounts from other sections will prevent this section from overriding them".
* WC tested up to: 6.5.

= 4.1.5 - 10/05/2022 =
* Fix - General - Checkout options - "Block checkout page" may redirect to cart if paying via "Order pay page".
* WC tested up to: 6.4.

= 4.1.4 - 08/04/2022 =
* Dev - General - Cart options - Improve the disabled button style.
* Dev - Amounts - Create option to allow adding shortcodes on the amounts.
* Dev - Amounts - Create the `[alg_wc_oma_amount]` shortcode.
* Dev - Create `alg_wc_oma_amount_input_type` filter.
* Dev - Shortcode deprecated. From `[alg_wc_order_min_max_amount]` to `[alg_wc_oma_amount_msg]`.

= 4.1.3 - 20/03/2022 =
* Fix - Messages and shortcodes work with "Enable plugin" option disabled.
* WC tested up to: 6.3.

= 4.1.2 - 04/03/2022 =
* Fix - Currencies - Call to undefined method Alg_WC_OMA_Pro_Currencies::get_value_per_product().
* Dev - General - Cart options - Proceed to checkout button - Change the method used to disable the button.
* Dev - Messages - Checkout - Improve "Force refresh" option.
* Dev - Messages - Checkout - Force refresh - Add option to choose the hook used to update the notice.

= 4.1.1 - 23/02/2022 =
* Fix - General - Checkout options - "Block checkout page" redirects to cart even on successful purchases.
* Fix - Products - Per product category - Doesn't work well sometimes with multiple categories at once.
* Fix - Call to a member function get_cart () on null in `Alg_WC_OMA_Core`.
* Dev - Create new section "Fees" to add individual fee for each limit reached.
* Dev - Now `Alg_WC_OMA_Messages::get_notices()` return results in array format.
* Dev - General - Cart Page - Added option to disable "proceed to checkout" button.
* Tested up to: 5.9.
* WC tested up to: 6.2.

= 4.1.0 - 20/01/2022 =
* Dev - Shipping - Special cases - Create "Identification" option.
* Dev - Shipping - Special cases - Create "Comparison method" option.
* Dev - Shipping - Special cases - Create option that will try to autodetect Shipping IDs.
* Dev - General - Sum amount type - Create "Rounding" option.
* Dev - General - Sum amount type - Create "Rounding" precision option.
* WC tested up to: 6.1.

= 4.0.9 - 02/12/2021 =
* Dev - General - Login requirement - Add "Login requirement" option.
* Dev - General - Login requirement - Add "Notice" option
* Dev - General - Login requirement - Add "Notice type" option.
* Dev - General - Login requirement - Add "Display condition" option.

= 4.0.8 - 02/12/2021 =
* Dev - Add `alg_wc_oma_get_cart_value` filter.
* Dev - Compatibility - Product Bundles - Add option to include bundled cart item on cart total calculation.
* Dev - Compatibility - Product Bundles - Add option to create a "bundle price" amount type.
* Dev - Create compatibility section.
* Dev - `alg_wc_oma_get_cart_total_do_count_product` now passes cart item as second parameter.
* Fix - Call to a member function get_cart () on null in `Alg_WC_OMA_Core`.
* WC tested up to: 5.9.

= 4.0.7 - 30/09/2021 =
* Dev - Messages - Product page - Add `woocommerce_before_single_product` position.
* Dev - Improve `is_plugin_active` function.
* Improve readme.
* WC tested up to: 5.7.

= 4.0.6 - 01/09/2021 =
* Fix - General - REST API - Check user metas option.
* Fix - General - Quantity - Default quantity based on "Per product" minimum limits doesn't work correctly on cart.
* Fix - General - Quantity - Fix possible PHP Warning if default quantity is enabled and "Per product" option is disabled.
* Fix - General - Quantity - Min and Max parameters don't work on cart.
* WC tested up to: 5.6.

= 4.0.5 - 02/08/2021 =
* Fix - Free and pro plugins can't be active at the same time.
* Dev - General - Quantity - Add quantity input option to set default quantity based on "Per product" minimum limits.
* Dev - General - Quantity - Add quantity input option to set minimum parameter based on "Per product" minimum limits.
* Dev - General - Quantity - Add quantity input option to set maximum parameter based on "Per product" maximum limits.
* Dev - General - Quantity - Add add to cart button option to set quantity on loop pages based on "Per product" minimum limits.
* Dev - Messages - Checkout - Add "Force refresh" option.
* Dev - Add promoting notice.
* WC tested up to: 5.5.
* Tested up to: 5.8.
* Add github deploy setup.

= 4.0.4 - 04/05/2021 =
* Fix - General - "Maximum" Amount Limit - Hide "add to cart" button - PHP Notice: Undefined index on shop pages.
* Dev - Messages - Add mini-cart notices option.
* Dev - Messages - Replace additional positions by positions.
* Dev - Refactor code creating a new class only for messages.

= 4.0.3 - 20/04/2021 =
* Fix - Messages - Show product page messages from "Display on empty cart" option.
* Dev - Coupons - Add "Exclude all" option allowing to not check min/max amounts if any coupons have been applied.
* Dev - Messages - Add "Smart product scope" option allowing to Show only product scope messages relevant to the current product.
* WC tested up to: 5.2.

= 4.0.2 - 18/03/2021 =
* Fix - Messages - Product page notice gets displayed even when it's disabled.

= 4.0.1 - 17/03/2021 =
* Dev - Settings - Descriptions updated.
* Dev - Settings - Improve notes style.
* Dev - General - Create "Add user metas to the REST API" option.
* Dev - Messages - Add product page notices option.
* Dev - Messages - Add "Display on empty cart" option.
* Tested up to: 5.7.

= 4.0.0 - 13/02/2021 =
* Fix - Messages - "Per product / category / tag > Payment Gateways / Shipping" messages removed.
* Fix - Messages - "Payment Gateways" messages are now properly marked in admin settings.
* Fix - Cart Total - Sum - Was incorrectly calculating total instead of subtotal when "Order Sum Options > Order sum" option was set to "Order subtotal". This is fixed now.
* Fix - Cart Total - Sum - Was ignoring "Order Sum Options > Exclude" options. This is fixed now.
* Dev - General - Amount types - "Products", "Product categories" and "Product tags" options added.
* Dev - General - Amount types - "Length", "Width", "Height" and "Area" options added.
* Dev - Messages - Payment gateways placeholders are now loaded only if "Payment Gateways" section is enabled.
* Dev - Messages - Shipping placeholders are now loaded only if "Shipping" section is enabled.
* Dev - Messages - Advanced Options - "Remove old notices" option added.
* Dev - Products - Per product - "List variations" option added.
* Dev - Shipping - "Hide unavailable" option added.
* Dev - Shipping - "WooCommerce Table Rate Shipping" (by "JEM Plugins") plugin compatibility added.
* Dev - Shipping - "WooCommerce Table Rate Shipping" (by "wpWax") plugin compatibility added.
* Dev - Shipping - "Advanced: Special cases" option added.
* Dev - Payment Gateways - "Hide unavailable" option added.
* Dev - "Coupons" section added.
* Dev - Cart Products - "List variations" option added.
* Dev - Cart Total - "List variations" option added.
* Dev - "Advanced: Priority Options" subsections added to the "User Roles", "Users", "Shipping", "Payment Gateways" and "Memberships" sections.
* Dev - Sum - Changed the way order sum (total and subtotal) is calculated: manually summing line values now (instead of using `WC()->cart->get_subtotal()`, `WC()->cart->get_total( 'edit' )`, etc.).
* Dev - Sum - Now loading shipping script (i.e. update cart on updated shipping method) for "sum + cart notices + include shipping" condition.
* Dev - Shortcodes - `[alg_wc_order_min_max_amount]` - Checking if `scope` is enabled (in case if there is `scope` shortcode attribute set).
* Dev - Settings - `get_products_options()` - Current option values are now added to the list. Used in "Cart Products" and "Cart Total" sections.
* Dev - Settings - Restyled and descriptions updated.
* Dev - Major code refactoring.
* WC tested up to: 5.0.
* Plugin author updated.

= 3.4.1 - 12/01/2021 =
* Dev - Memberships - `get_user_memberships()` function updated (now checking for the `plan` slug as well).
* Dev - Localisation - `load_plugin_textdomain` moved to the `init` action.
* Dev - Code refactoring.
* WC tested up to: 4.9.

= 3.4.0 - 30/12/2020 =
* Fix - Shortcodes - `[alg_wc_oma_translate]` - Moved to the free version.
* Dev - Advanced - "Validate on add to cart" option added.
* Dev - Advanced - 'Hide "add to cart" button' options added.
* Dev - "Payment Gateways" section added.
* Dev - "Memberships" section added.
* Dev - Settings - Shipping - Notes updated.
* Dev - Settings - "Scope Options" moved to a separate "Products" settings section.
* Dev - Settings - "Products" section renamed to "Cart Products".
* Dev - Settings - Restyled.
* Dev - Code refactoring.
* Tested up to: 5.6.
* WC tested up to: 4.8.

= 3.3.0 - 21/11/2020 =
* Fix - Shortcodes - `[alg_wc_order_min_max_amount]` - `%product_title%` and `%term_title%` placeholders are now processed in shortcode content.
* Fix - Developers - Amount types - `format()` - Properly applying the `alg_wc_oma_amount_format` filter now.
* Dev - General - "Require all types" option added.
* Dev - Scope Options - `get_notices_per_product()` - Now grouping notices by scope (instead of by product).
* Dev - Messages - `%shipping_method%`, `%shipping_zone%` and `%shipping_zone_locations%` placeholders added.
* Dev - Messages - Advanced - "Format amounts" options added.
* Dev - Shipping - "Shipping messages" option added.
* Dev - Shipping - "Table Rate for WooCommerce by Flexible Shipping" plugin compatibility added.
* Dev - Shipping - Returning full method ID when retrieving current shipping method as a fallback (e.g. when using old shipping methods without the instance parameter).
* Dev - Products - "Validate all products" option added.
* Dev - "Cart Total" section added.
* Dev - Developers - Amount types - `format()` - `$value` param added to the `alg_wc_oma_amount_format` filter.
* Dev - Developers - `alg_wc_oma_get_notices` filter added.
* Dev - Allowing compares with zero cart total.
* Dev - Admin settings restyled.
* Dev - Code refactoring.
* WC tested up to: 4.7.

= 3.2.2 - 06/11/2020 =
* Fix - Core - `get_default_message()` function produced "fatal error". This is fixed now.
* Fix - Settings per Item - "Nonce verification failed" bug fixed.

= 3.2.1 - 03/11/2020 =
* Dev - General - Advanced - "Block checkout process" option added (defaults to `yes`).

= 3.2.0 - 20/10/2020 =
* Dev - General - "Per product", "Per product category" and "Per product tag" options added.
* Dev - Messages - All options are available in free version now.
* Dev - Messages - Admin settings descriptions updated.
* Dev - User Roles - "Enabled user roles" option added.
* Dev - User Roles - All options are available in free version now.
* Dev - User Roles - Admin settings restyled ("Save all changes for all roles") button removed.
* Dev - Users - Allowing negative amounts now. This is equivalent to "no min/max amount".
* Dev - "Shipping" section added.
* Dev - Currencies - Admin settings restyled ("Save all changes for all currencies") button removed.
* Dev - Code refactoring.
* WC tested up to: 4.6.

= 3.1.2 - 22/09/2020 =
* Dev - General - Order Sum Options - "Order sum" option added. Available values: "Order total" (default) and "Order subtotal".

= 3.1.1 - 17/09/2020 =
* Dev - General - Order Sum Options - "Exclude taxes" option added.
* Dev - General - Order Sum Options - "Exclude fees" option added.
* Dev - Core - `is_equal()` - Epsilon value is always equal to the amount step now.
* Dev - Core - `check_min_max_amount()` - Applying `floatval()` to all arguments now.

= 3.1.0 - 16/09/2020 =
* Dev - "Currencies" section added.
* Dev - "Products" section added.
* Dev - Allowing negative amounts now. This is equivalent to "no min/max amount".
* Dev - Code refactoring.
* Tested up to: 5.5.
* WC tested up to: 4.5.

= 3.0.0 - 04/08/2020 =
* Dev - General - "Limits" (i.e. "Minimum", "Maximum") option added.
* Dev - General - "Types" option added. It's now also possible to set min/max order "Weight" and "Volume" amounts.
* Dev - Messages - Default messages updated.
* Dev - Messages - New placeholders added: `%amount%`, `%total%`, `%diff%`, `%amount_raw%`, `%total_raw%`, `%diff_raw%`. Old placeholders are now deprecated.
* Dev - Messages - Additional Positions - Now displaying multiple notices when applicable (instead of only the first one).
* Dev - Comparing values with epsilon now.
* Dev - Admin settings restyled; "Amounts" section added.
* Dev - Shortcodes - `[alg_wc_order_min_max_amount]` - Shortcodes are now processed in content.
* Dev - Shortcodes - `[alg_wc_order_min_max_amount]` - Optional `on_empty` attribute added.
* Dev - Developers - `alg_wc_oma_placeholders` filter added.
* Dev - Developers - `alg_wc_oma_version_updated` action added.
* Dev - Developers - Amount types - `alg_wc_oma_amount_types`, `alg_wc_oma_amount_cart_total`, `alg_wc_oma_amount_title`, `alg_wc_oma_amount_unit` and `alg_wc_oma_amount_format` filters added.
* Dev - Major code refactoring.
* Description in readme.txt updated.

= 2.2.3 - 18/07/2020 =
* Dev - `alg_wc_oma_check_order_min_max_amount` filter added.
* Dev - `alg_wc_oma_block_checkout` filter added.

= 2.2.2 - 17/07/2020 =
* Dev - `get_cart_total()` - Using `WC()->cart->get_total( 'edit' )` function now (instead of `WC()->cart->total`).
* WC tested up to: 4.3.

= 2.2.1 - 27/05/2020 =
* Dev - Localization - Messages added to the translation file.
* WC tested up to: 4.1.

= 2.2.0 - 14/04/2020 =
* Dev - Messages - "Additional Positions" options added.
* Dev - `[alg_wc_order_min_max_amount]` shortcode added.
* Dev - Code refactoring.
* Dev - Admin "reset settings" notice updated.
* Dev - Admin settings descriptions updated.
* WC tested up to: 4.0.
* Tested up to: 5.4.
* Plugin URI updated.

= 2.1.0 - 30/10/2019 =
* Fix - General - Exclude shipping - Shipping tax function fixed.
* Dev - "Order Min/Max Amount per User" options added.
* Dev - User Roles - Enable section - Defaults to `no` now.
* Dev - Admin settings restyled.
* Dev - Code refactoring.
* WC tested up to: 3.7.

= 2.0.0 - 30/07/2019 =
* Dev - "Order **Maximum** Sum/Quantity" options added.
* Dev - "Order Minimum **Quantity**" options added.
* Dev - Messages - `%min_order_sum_diff%` and `%min_order_qty_diff%` placeholders added.
* Dev - Messages - Placeholders replaced: `%minimum_order_amount%` with `%min_order_sum%` and `%cart_total%` with `%cart_total_sum%`.
* Dev - User Roles - "Enable section" option added (defaults to `yes`).
* Dev - User Roles - Roles settings are stored in array now.
* Dev - User Roles - "Customer" role moved to the top of the list.
* Dev - Step in settings increased to `0.000001`.
* Dev - Major code refactoring.

= 1.2.1 - 25/07/2019 =
* Dev - Messages - Shortcodes are now processed in cart and checkout messages; `[alg_wc_oma_translate]` shortcode added for WPML/Polylang translations.
* Dev - Admin settings - Descriptions updated; "Your settings have been reset" notice added.
* Tested up to: 5.2.
* WC tested up to: 3.6.

= 1.2.0 - 30/10/2018 =
* Fix - "get_cart_url is deprecated" notice fixed.
* Dev - "Exclude discounts" option added.
* Dev - "Notice type on checkout page" and "Notice type on cart page" options added.
* Dev - Now checking all user roles instead of first one only.
* Dev - "Raw" values are now allowed in messages.
* Dev - Amount step decreased in admin settings.
* Dev - Admin settings sections restyled and descriptions updated.
* Dev - Code refactoring.
* Dev - Plugin URI updated.

= 1.1.0 - 24/07/2017 =
* Dev - Autoloading plugin options.
* Dev - `exit` added after `wp_safe_redirect()`.
* Dev - Plugin URI updated.
* Dev - Plugin header ("Text Domain" etc.) updated.

= 1.0.1 - 08/02/2017 =
* Dev - Language (POT) file added.
* Fix - Link fixed in User Role settings.

= 1.0.0 - 04/02/2017 =
* Initial Release.

== Upgrade Notice ==

= 1.0.0 =
This is the first release of the plugin.