| @@ -2,11 +2,11 @@ | ||
| 2 | 2 | |
| 3 | 3 | Contributors: bycrik, freemius |
| 4 | 4 | Tags: woocommerce, tiered pricing, dynamic price, price, wholesale |
| 5 | 5 | Requires at least: 5.0 |
| 6 | -Tested up to: 7.0 | |
| 6 | +Tested up to: 7.1 | |
| 7 | 7 | Requires PHP: 7.4 |
| 8 | -Stable tag: 6.4.0 | |
| 8 | +Stable tag: 8.1.0 | |
| 9 | 9 | License: GPLv2 or later |
| 10 | 10 | License URI: https://www.gnu.org/licenses/gpl-2.0.html |
| 11 | 11 | |
| 12 | 12 | Create bulk, wholesale, and quantity-based pricing in WooCommerce with flexible tables, role-based pricing, and powerful upsells. |
| @@ -16,13 +16,13 @@ | ||
| 16 | 16 | **Tiered Pricing Table for WooCommerce** lets you create bulk discounts, wholesale pricing, and quantity-based offers to increase average order value. |
| 17 | 17 | |
| 18 | 18 | Easily set different prices based on quantity, user roles, or specific customers — and display them using beautiful, customizable pricing tables, blocks, or dropdowns. |
| 19 | 19 | |
| 20 | -[youtube https://www.youtube.com/watch?v=wRyPr6VQHZM] | |
| 20 | +[youtube https://www.youtube.com/watch?v=MlyGAcfxaEQ] | |
| 21 | 21 | |
| 22 | 22 | [**Live Demo**](https://demo.tiered-pricing.com/) | [**Documentation**](https://tiered-pricing.com/documentation/user/) | [**Contact Us**](https://tiered-pricing.com/contact-us/) | [**Plugin Website**](https://tiered-pricing.com/) |
| 23 | 23 | |
| 24 | -**Tiered Pricing Table for WooCommerce** lets you easily set flexible pricing rules based on product quantity. You can apply custom pricing to individual products or categories, all users, specific user roles, or customer accounts. | |
| 24 | +You can apply custom pricing to individual products or categories, all users, specific user roles, or customer accounts. | |
| 25 | 25 | |
| 26 | 26 | Fine-tune pricing for any business model — from retail to wholesale — to serve different customer groups effortlessly. |
| 27 | 27 | |
| 28 | 28 | 📌 **Key features**: |
| @@ -27,24 +27,33 @@ | ||
| 27 | 27 | |
| 28 | 28 | 📌 **Key features**: |
| 29 | 29 | |
| 30 | 30 | ✅ **Quantity-based pricing (Volume pricing)** |
| 31 | -Set different prices for different quantities of products. | |
| 31 | +Offer different prices based on the quantity purchased to encourage larger orders. | |
| 32 | 32 | |
| 33 | -✅ **Role-based pricing** | |
| 34 | -Set different prices for user roles or specific customers, including quantity-based prices. | |
| 33 | +✅ **Role and Customer based pricing** | |
| 34 | +Create custom pricing for user roles or individual customers, including quantity-based discounts. | |
| 35 | 35 | |
| 36 | 36 | ✅ **Minimum, Maximum & Step Quantity Controls** |
| 37 | -Limit minimum, maximum, and quantity step a product can be purchased in. | |
| 37 | +Define minimum and maximum purchase quantities, and enforce quantity increments. | |
| 38 | 38 | |
| 39 | 39 | ✅ **Discount-friendly price formatting** |
| 40 | -Show the lowest price or range from the lowest to the highest price. | |
| 40 | +Display pricing in a way that highlights savings, including the lowest price, a price range or even a custom template. | |
| 41 | 41 | |
| 42 | +✅ **Request a Quote** | |
| 43 | +Allow customers to request a quote with customizable form builder and flexible settings. | |
| 44 | + | |
| 45 | +✅ **Wholesale registration & approval** | |
| 46 | +Let customers apply for a wholesale account with a customizable form, approve them in a queue, and give them the wholesale role automatically. Four e-mails keep everyone informed. | |
| 47 | + | |
| 48 | +✅ **Private store & catalog visibility** | |
| 49 | +Close the store to visitors, or show products and categories to selected roles only for wholesale-only or retail-only catalogs. | |
| 50 | + | |
| 42 | 51 | ✅ **Flexible pricing display (product page & catalog)** |
| 43 | - You can show the tiered prices via: | |
| 44 | -➖ **Table (5 different styles)** | |
| 45 | -➖ **Blocks (5 different styles)** | |
| 46 | -➖ **Options (4 different styles)** | |
| 52 | + Display tiered pricing in the format that best fits your store: | |
| 53 | +➖ **Table (5 styles)** | |
| 54 | +➖ **Blocks (5 styles)** | |
| 55 | +➖ **Options (4 styles)** | |
| 47 | 56 | ➖ **Dropdown** |
| 48 | 57 | ➖ **Horizontal Table** |
| 49 | 58 | ➖ **Plain text** |
| 50 | 59 | ➖ **Tooltip** |
| @@ -53,12 +62,13 @@ | ||
| 53 | 62 | The clean interface and powerful functionality allow you to create any pricing strategy without complexity. |
| 54 | 63 | |
| 55 | 64 | ⚙️ **Advanced Features** |
| 56 | 65 | ✅ Import & Export (WP All Import support). |
| 57 | -✅ Role management: create, edit, and delete user roles. | |
| 58 | -✅ Built-in caching for performance. | |
| 59 | -✅ REST API & debug mode. | |
| 60 | -✅ Show saving amount to users with the "You save: $9.99" template. (difference between original and discounted price). | |
| 66 | +✅ Pricing Labels – Create labels such as “Best Value” or “Most Popular” to make key pricing tiers stand out. | |
| 67 | +✅ Role Management – Create, edit, and delete user roles with ease. | |
| 68 | +✅ Built-in Caching – Improve performance with integrated caching. | |
| 69 | +✅ REST API & Debug Mode – Extend functionality through a REST API and troubleshoot issues with a dedicated debug mode. | |
| 70 | +✅ Savings Display – Show customers how much they save with customizable messages such as “You Save: $9.99”. | |
| 61 | 71 | |
| 62 | 72 | And much more! |
| 63 | 73 | |
| 64 | 74 | 💎 **Premium Extras**: |
| @@ -63,16 +73,17 @@ | ||
| 63 | 73 | |
| 64 | 74 | 💎 **Premium Extras**: |
| 65 | 75 | |
| 66 | 76 | * Percentage quantity-based discounts |
| 67 | -* Role-based pricing (including base prices and min/max order quantity) | |
| 77 | +* Role-based and customer-based pricing (including base prices and min/max order quantity) | |
| 68 | 78 | * Role-based tax options (Override tax options for specific user roles) |
| 69 | 79 | * Custom columns for pricing table |
| 70 | 80 | * Option to hide prices and prevent purchasing for non-logged-in users |
| 81 | +* Cart rules by role: a minimum order amount or quantity per role, payment and shipping methods limited to roles | |
| 71 | 82 | * Min/Max order quantity control per product or category/tag/brand |
| 72 | 83 | * Cart upsells (motivates users to purchase more to get a discount) |
| 73 | 84 | * Totals on the product page |
| 74 | -* Clickable tiered pricing options | |
| 85 | +* Clickable tiered pricing | |
| 75 | 86 | * Show the lowest price or a range of prices instead of default product price |
| 76 | 87 | * Show the tiered price in the cart as a discount |
| 77 | 88 | |
| 78 | 89 | **Works Seamlessly with 3rd-party plugins**: |
| @@ -101,13 +112,21 @@ | ||
| 101 | 112 | Set up a **[demo](https://demo.tiered-pricing.com/)** to see how the plugin works in action. |
| 102 | 113 | |
| 103 | 114 | == Screenshots == |
| 104 | 115 | |
| 105 | -1. Tiered Pricing on the product page | |
| 106 | -2. Set up Tiered Pricing | |
| 107 | -3. Global pricing rules | |
| 108 | -4. Tiered Pricing in the cart | |
| 109 | -5. Tiered Pricing in the product catalog | |
| 116 | +1. Tiered pricing on the product page | |
| 117 | +2. Layout configurator with live preview | |
| 118 | +3. Tiered pricing on shop and category pages | |
| 119 | +4. Wholesale registration and approval | |
| 120 | +5. Private store and catalog visibility | |
| 121 | +6. Role and customer pricing | |
| 122 | +7. Cart rules by role | |
| 123 | +8. Tiered pricing in the cart and upsells | |
| 124 | +9. Request a quote | |
| 125 | +10. Tier labels and badges | |
| 126 | +11. Mix & Match pricing rules | |
| 127 | +12. Roles management | |
| 128 | +13. 3rd-party integrations | |
| 110 | 129 | |
| 111 | 130 | == Installation == |
| 112 | 131 | |
| 113 | 132 | 1. Upload the plugin files to the `/wp-content/plugins/tier-price-table` directory, or install the plugin through the WordPress plugins screen directly. |
| @@ -162,8 +181,104 @@ | ||
| 162 | 181 | Yes! |
| 163 | 182 | Each order has the "recalculate with tiered pricing" button, which recalculates the cost according to the tiered pricing rules. |
| 164 | 183 | |
| 165 | 184 | == Changelog == |
| 185 | + | |
| 186 | += 8.1.0 [2026-10-06] = | |
| 187 | +* New: Pricing test (Settings → Advanced → Utilities): see what a customer pays for a product and which global rule is applied. | |
| 188 | +* New: priority for global pricing rules; the editor shows the rules that override the one you edit. | |
| 189 | +* New: start and end dates for global pricing rules. | |
| 190 | +* New: Rule status box in the rule editor with the status, Suspend / Reactivate, priority, schedule and overriding rules. | |
| 191 | +* New: "Include subcategories" switch and "Guests (not logged in)" role in global pricing rules. | |
| 192 | +* Improvement: the rules list shows status, priority, scope and pricing in four columns and filters by status. | |
| 193 | +* Improvement: rules that change nothing are marked "Skipped" and never block other rules. | |
| 194 | +* Improvement: savings badge styles (text, pill, outline), positions and an "Auto" colour. | |
| 195 | +* Improvement: faster layout configurator preview. | |
| 196 | +* Improvement: filters for the discount decimals and the CSV rule separator; the CSV import accepts "20=100" and maps role columns automatically. | |
| 197 | +* Fix: global rules created before 8.0.0 and never re-saved were ignored. | |
| 198 | +* Fix: block cart quantity changes that break the minimum, maximum or step are rejected. | |
| 199 | + | |
| 200 | += 8.0.2 [2026-09-24] = | |
| 201 | +* New: the catalog quantity box works with the Product Button block (Product Collection, block themes). | |
| 202 | +* Improvement: in the catalog, the quantity box and the add-to-cart button share one line, and the tiers sit right under the price. | |
| 203 | +* Fix: block themes no longer show the catalog pricing, badge and quantity box twice, nor on the single product page. | |
| 204 | +* Fix: the integrated "Request a quote" row spans every column when the table has custom columns. | |
| 205 | + | |
| 206 | += 8.0.1 [2026-09-23] = | |
| 207 | +* Fix: the plugin no longer clears the "section" parameter on other WooCommerce settings tabs; since 7.2.0 this broke the REST API keys screen and saving webhooks. | |
| 208 | +* Improvement: security hardening and PHP 8.1+ compatibility from the WooCommerce QIT audit: escaped template output, sanitized request variables, a nonce check on the quote request endpoint. | |
| 209 | + | |
| 210 | += 8.0.0 [2026-09-23] = | |
| 211 | +* New: wholesale registration and approval: an application form with a form builder (shortcode [tiered_pricing_wholesale_registration]), an approval queue under WooCommerce → Wholesale Applications, automatic or manual approval, four WooCommerce e-mails, a link on the login form, a login redirect, an optional terms checkbox, a honeypot and reCAPTCHA v3. | |
| 212 | +* New: private store, off by default: "Closed store" sends visitors to the login page, and "Catalog visibility by role" adds a "Who can see" rule to every product and category (guests count as a role). Hidden products and categories leave every list, menu, search, the sitemap and the Store API. | |
| 213 | +* New: cart rules by role (premium), off by default: a minimum order amount or quantity per role, and payment and shipping methods limited to selected roles. | |
| 214 | +* Improvement: the Guest Users options moved to the new Wholesale tab; the Tools tab merged into the Modules tab, now called Advanced. | |
| 215 | +* Improvement: the experimental "WooCommerce Product Editor integration" module is no longer listed; a store that switched it on keeps it. | |
| 216 | +* Fix: table styles #1 to #6 keep a quantity range on one line when a tier label sits in the row. | |
| 217 | + | |
| 218 | += 7.2.0 [2026-09-23] = | |
| 219 | +* New: layout configurator with a live preview for the product page, shop & category pages and the cart. It is a module: switch it off to get the classic settings back. | |
| 220 | +* New: ten design styles: table "minimal" and "savings bar", blocks "cards" and "segmented", options "plan picker", "list with savings bar" and "steps", dropdown "pill", plain text "check list" and "one line". The former table style #1 is now #6. | |
| 221 | +* New: layout options: discount format, tier order, spacing, cell padding, discount badge colour, active tier left border. | |
| 222 | +* New: shop & category pages: a bulk savings badge on the product image, "Where it shows", Product Collection block support, and tiers per grid item with a "+N more" link. | |
| 223 | +* New: cart: a one-click link to the next tier in the upsell message, an optional progress bar, and a "Total savings" row. | |
| 224 | +* Improvement: the "Show total price" options are free; the Calculations tab became the Price Calculation group on the General tab; the "nowhere" position is gone (an existing setting behaves as automatic display switched off). | |
| 225 | +* Improvement: default cell padding for themes that leave cells unpadded, smaller badges in the compact layout, new default texts for the "You Save" badge and the upsell message. | |
| 226 | +* Fix: no crossed-out price or "0% off" badge for a tier at the regular price; quantity ranges use the site's number format; table styles #2 and #6 tint the active row correctly; the dropdown starts on the base option; the horizontal table keeps its row count with custom columns. | |
| 227 | + | |
| 228 | += 7.1.8 [2026-09-08] = | |
| 229 | +* Fix: the Request a Quote form for variations of products with many variations, the catalog price format of variable products with SEO integrations and caching, and the "Purge cache" button while caching is disabled. | |
| 230 | + | |
| 231 | += 7.1.7 [2026-09-02] = | |
| 232 | +* New: U2Code Multicurrency integration, and Multicurrency and Product Addons settings sections. | |
| 233 | +* New: Mix & Match settings section: tiered pricing for the products inside Mix and Match containers. | |
| 234 | +* Improvement: settings tabs ordered consistently. | |
| 235 | +* Fix: the maximum order quantity in the block cart (Store API); a pricing rule matching a Mix and Match container no longer re-prices the container itself. | |
| 236 | + | |
| 237 | += 7.1.6 [2026-08-25] = | |
| 238 | +* New: U2Code Product Addons integration and a redesigned integrations page. | |
| 239 | + | |
| 240 | += 7.1.5 [2026-08-14] = | |
| 241 | +* Fix: WooCommerce Subscriptions: percentage tiers were calculated from an already modified price (double-prorated first payments, wrong sign-up fees and trials), and quantity switches ignored the tiered discount. | |
| 242 | + | |
| 243 | += 7.1.4 [2026-08-13] = | |
| 244 | +* Fix: cart prices ignored the exchange rate with the WPML Multicurrency integration (regression in 7.1.3). | |
| 245 | + | |
| 246 | += 7.1.3 [2026-08-09] = | |
| 247 | +* New: WooCommerce Subscriptions and YITH Multi Currency Switcher integrations. | |
| 248 | +* New: WPML/Polylang support for role-based and customer-based pricing on translations; global rules match translated products, categories, tags and brands. | |
| 249 | +* Fix: two possible fatal errors (a null product in the price filter, re-calculating a manual order whose product was deleted), a 100%-off tier charged at full price in manual orders, currency switchers converting percentage tiers twice, add-on costs dropped with a currency switcher, a division-by-zero warning in the Deposits integration, and the SEO structured data offers (Rank Math, Yoast, SEOPress). | |
| 250 | + | |
| 251 | += 7.1.2 [2026-08-06] = | |
| 252 | +* Improvement: Product Bundles integration for manually created orders. | |
| 253 | +* Fix: WPML Multicurrency rounding, double conversion after lowering the quantity below the first tier, and prices with taxes for products without tiers. | |
| 254 | + | |
| 255 | += 7.1.1 [2026-07-29] = | |
| 256 | +* Fix: front-end totals script. | |
| 257 | + | |
| 258 | += 7.1.0 [2026-07-27] = | |
| 259 | +* New: Mix & Match minimum order quantity for variable products; WooPayments Multicurrency integration. | |
| 260 | +* Improvement: role-based and customer-based pricing on their own product tab; updated settings texts. | |
| 261 | + | |
| 262 | += 7.0.1 [2026-07-20] = | |
| 263 | +* Fix: front-end script cache issue. | |
| 264 | + | |
| 265 | += 7.0.0 [2026-07-18] = | |
| 266 | +* New: Request a Quote. | |
| 267 | +* New: totals and "You save" for products without tiered pricing rules. | |
| 268 | +* Improvement: dropdown accessibility. | |
| 269 | + | |
| 270 | += 6.5.0 [2026-07-02] = | |
| 271 | +* New: Product level customer based pricing. | |
| 272 | +* New: Custom template for pricing formatting on the shop page. | |
| 273 | +* Enhance: CSS improvements. | |
| 274 | + | |
| 275 | += 6.4.1 [2026-07-01] = | |
| 276 | +* Fix: MCE JS issue in some languages. | |
| 277 | +* Enhance: tier labels and custom columns friendly UI. | |
| 278 | +* Enhance: Welcome page updated. | |
| 279 | +* Enhance: Compact layout for all pricing templates. | |
| 280 | +* Enhance: Import/Export as a module and can be deactivated. | |
| 166 | 281 | |
| 167 | 282 | = 6.4.0 [2026-06-21] = |
| 168 | 283 | * New: 4 new styles for pricing table. |
| 169 | 284 | * Enhance: custom columns work for horizontal table template. |