===  WowRevenue - Product Bundles & Bulk Discounts ===
Contributors: wpxpo, anik4e, jakirhasan
Tags: product bundles, bogo, bulk discount, bought together, upsells  
Requires at least: 6.8
Tested up to: 7.1
Requires PHP: 7.4
Stable tag: 3.0.0
License: GPLv3
License URI: http://www.gnu.org/licenses/gpl-3.0.html

WowRevenue is a combination of product bundles and discount campaigns, including bulk discounts, buy x get y discounts, and more.

== Description ==

💲 **Increase AOV** with product bundles & **discount campaigns.**
📈 **Boost** your **revenue** without increasing the **marketing cost.**
💕 A plugin by **WPXPO**, that empowers **65K+ businesses!**
📞 Dedicated support team.

🔥 [**WowRevenue Pro**](https://www.wowrevenue.com/) | 📃 [**Documentation**](https://www.wowrevenue.com/docs/)

### WowRevenue - Increase your Order Value with Product Bundles & Strategic Discount Campaigns

WowRevenue is an all-in-one product bundle plugin specially crafted to boost the WooCommerce store’s revenue by showing high-converting bundle and discount offers. Its effective marketing campaigns help you start upselling and cross-selling instantly. As a result, you can enjoy better revenue without increasing the number of customers. So you don’t need to spend more on customer acquisition.

[youtube https://www.youtube.com/watch?v=PwiB8hmvVAY]


## Product Bundling Features in WowRevenue ##

WowRevenue gives you flexible controls for building and displaying product bundle offers based on your store's requirements.

* **Trigger Product Selection:** Choose the product that activates and displays the bundle offer.

* **Minimum Product Quantity:** Set the minimum quantity customers need to purchase for individual bundle products.

* **Flexible Bundle Discounts:** Define discount values and choose the applicable discount type for offered products.

* **Animated Add to Cart:** Apply an animated Add to Cart effect to supported campaigns.

* **Campaign Scheduling:** Set a start date and time and optionally define when the bundle campaign should end.

* **Multiple Page Placements:** Control the WooCommerce pages where supported bundle campaigns appear.


## Product Bundle and Discount Campaigns in WowRevenue ##

✅ **Normal Discount:** Apply discounts to specific products, multiple products, or selected product groups.

✅ **Bundle Discount:** Combine multiple products into a bundle and set up pricing or discounts.

✅ **Mix and Match:** Let customers choose products from a predefined selection and create their own bundle.

✅ **Volume / Quantity Discount:** Create quantity-based pricing tiers and apply discounts based on how many items customers purchase.

✅ **Buy X Get Y:** Create offers where customers purchase qualifying products and receive another product for free or at a discounted price. Buy One Get One (BOGO) and Buy 2 Get 1 Free offers are covered too.

✅ **Frequently Bought Together:** Display related products together and let customers add multiple items to the cart from one offer.

**Explore how you can increase your WooCommerce store’s revenue.**

[youtube https://www.youtube.com/watch?v=bLSobzgh7Mo]


## Other Wow Plugins!

We have more useful plugins for WooCommerce and WordPress users. Take a look at them:

📄 [**WowInvoice**](https://wordpress.org/plugins/wow-pdf-invoices-packing-slips/) The PDF invoices & packing slips plugin for WooCommerce that streamlines invoice, packing slip, and shipping label creation.

🚚 [**WowShipping 🔥**](https://wordpress.org/plugins/wow-table-rate-shipping/): A complete table rate shipping solution for WooCommerce, allowing you to set flexible delivery rates using 30+ conditions and get live rates from popular carriers like UPS, USPS, DHL, Sendle, and more.

➕ [**WowAddons 🔥**](https://wordpress.org/plugins/product-addons/): The most advanced and flexible plugin to sell customizable products by creating a personalized shopping experience with product addons and extra options.

💝 [**WowStore**](https://wordpress.org/plugins/product-blocks/): An all-in-one solution to build gorgeous-looking and professional WooCommerce stores with various conversion-focused features.

📦 [**WholesaleX**](https://wordpress.org/plugins/wholesalex/): A collection of dynamic features for setting advanced pricing and discounts based on user roles. You can use it for creating complete B2B or B2B+B2C hybrid stores.

🧲 [**WowOptin**](https://wordpress.org/plugins/optin/): The next-generation opt-in plugin for collecting leads, increasing sales, and boosting conversions. It is powered by a canvas-like opt-in builder and advanced placement & targeting options.

📃 [**PostX**](https://wordpress.org/plugins/ultimate-post/): PostX is a News Magazine plugin powered by a dynamic site builder for Gutenberg. With its rich library of Templates, you can build any kind of News, Magazine, or Blogging site with three simple steps.

= Author =
Developed by [WPXPO](https://www.wpxpo.com). [Contribute to Revenue on Bitbucket](https://bitbucket.org/wpstabon/revenue/src/main/) and join the party.

### 📗 Translations 

Revenue plugin is compatible with WPML Plugin and also it works perfectly with loco translate plugin. 
You can Translate Revenue on [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/revenue/).


== External services ==

This plugin does not contact any external server on its own. Nothing is sent when you load the admin, the storefront or the plugin's pages. The only external request the plugin can make is the one below, and only when an administrator clicks the button for it.

= WordPress.org plugin directory (optional plugin install) =

* What it is: the plugin directory and download service run by WordPress.org.
* When it is used: only when an administrator clicks an Install or Activate button for a recommended plugin in the plugin's admin pages. Never automatically, never in the background.
* What is sent: the slug of the plugin you chose (for example `woocommerce`), plus the standard request data WordPress itself sends to api.wordpress.org (WordPress and PHP versions, site locale). The plugin file is then downloaded from downloads.wordpress.org.
* Endpoints: api.wordpress.org and downloads.wordpress.org.
* Terms of use: https://wordpress.org/about/terms/ and privacy policy: https://wordpress.org/about/privacy/

= Links =

The plugin shows plain links to its documentation, support forum and a YouTube tutorial video. They open in a new tab, and nothing is sent to those sites until you click them.

== Installation ==

= Minimum Requirements =

* WordPress 6.8 or greater
* PHP version 7.4 or greater
* MySQL version 5.6 or greater

= Automatic installation =

Automatic installation is the easiest option as WordPress handles the file transfers itself and you don’t even need to leave your web browser. 

1. Go to your WordPress Plugin installation menu (Dashboard > Plugins > Add New)
2. In the search field type "Revenue" and press enter.
3. "Install Now" and then click "Active"


= Manual installation =

For Manual installation, you download our product from WordPress directory uploading it to your web-server via your FTP or CPanel application.

1. Download the plugin and unzip it
2. Using an FTP program or CPanel upload the unzipped plugin folder to your WordPress installation’s wp-content/plugins/ directory.
3. Activate the plugin from the Plugins menu (Dashboard > Plugins > Installed Plugins) within the WordPress admin.

= Upgrading =

Automatic update working great for this plugin. If you customize the plugin make sure to store a backup before update.

Sometimes because of the permalink issue during the plugin update, just go to WordPress > Settings > Permalinks and hit the ‘Save’ button.

== Frequently Asked Questions ==

= Is WowRevenue easy to use for beginners? =
Yes, WowRevenue is designed and developed in a way that both beginners and experts can use it with ease.
= Do I need any coding knowledge to use WowRevenue? =
No, you don’t need any coding knowledge to use WowRevenue.
= Will I get Support for WowRevenue? =
Yes, we have a dedicated team for WowRevenue to provide on-demand support and assistance.


== Screenshots ==
1. Dashboard
2. Campaign List
3. Campaign Builder
4. Buy X Get Y Discount
5. Bundle Discount
6. Frequently Bought Together
7. Quantity Discount
8. Product Mix and Match
9. Normal Discount
10. Cross-selling on Cart Page

== Changelog ==

= 3.0.0 – 11 October 2026 =
* Security: Added nonce verification to cart-total and product-view AJAX requests.
* Fix: Existing v2 Free campaigns continue running on the storefront after upgrading.
* Fix: Campaign initialization now waits for page content and deferred scripts to load.
* Fix: Frequently Bought Together now respects individual quantity selections and synchronizes companion quantities only when required.
* Fix: Buy X Get Y now respects the repeat-offer setting when calculating reward prices and accepts zero-discount rewards.
* Fix: Volume Discount savings badges respect WooCommerce currency formatting, variable tiers honor the selected price basis, and preview titles match the storefront.
* Fix: Custom campaign theme colors remain synchronized when switching templates.
* Fix: Spending Goal fixed discounts remain selected when reopening and saving campaigns.
* Fix: Mix and Match supports decimal tier amounts, handles variable gift selections correctly, and displays the selected bundle's regular total in Block Cart.
* Fix: Improved free-gift quantity handling and labeling in Cart and Checkout blocks.
* Fix: Campaign sales reports account for order status and refunds, and displayed revenue uses the store's currency formatting.
* Fix: Improved legacy campaign variation styling, drawer layouts, and stock-scarcity messages.
* New: Bundle Product, sell a bundle as a real WooCommerce product.
* New: Mix and Match Product, let shoppers build their own box as a WooCommerce product.
* New: Volume and Buy X Get Y offers now work with the Add to Cart button on the product page.
* New: Legacy Campaigns page to manage campaigns created in v2.
* New: Notice on campaigns that use features unavailable on the site.
* Improvement: Rebuilt campaign builder and storefront for speed.
* Fix: No usage limits and no third-party tracking in the free plugin.

= 2.3.2 – 29 September 2026 =
* Improvement: Renamed the plugin to "WowRevenue - Product Bundles & Bulk Discounts" for clarity in the plugin directory and admin list.
* Improvement: Removed the Upgrade to Pro section and related UI components from the Overview page.

= 2.3.1 – 27 September 2026 =
* Security: Added AJAX nonce verification to the add-to-cart and coupon save actions.
* Security: Sanitized theme and typography values before they are written into generated CSS, preventing stored CSS injection via the settings API.
* Fix: Renamed AJAX actions and cache keys to use a consistent 'revenue_' prefix, and switched AJAX/admin URLs to dynamic references.
* Fix: Removed unused campaign update code and redundant script enqueues from the single product view.
* Improvement: Minor code cleanup across AJAX handlers and initialization hooks.

= 2.3.0 – 20 September 2026 =
* New: No usage limits in the free plugin. Create as many campaigns as you need, of any of the eight free types, with unlimited normal discounts, cloning, offer rows and campaign scheduling.
* Privacy: Removed all telemetry and third-party services from the free plugin. No usage tracking, no IP lookup, no deactivation survey and no remotely loaded scripts. The free plugin now makes no outbound request of its own; everything that can contact an external server is listed under "External services" in this readme.
* Security: Added capability and nonce checks to REST routes that were reachable without them.
* Security: Escaped returned markup, added missing ABSPATH guards and switched remaining includes to require_once.
* Improvement: Removed the legacy pre-2.0 rendering path. All campaigns now render through the current template, which cuts the plugin size and speeds up frontend rendering.
* Improvement: Removed the in-plugin support widget. Support is available from the plugin's documentation and community links.

= 2.2.15 – 18 September 2026 =
* Security: Escaped previously unescaped buffered output in campaign rendering, popups, floating bars, and admin notices.
* Security: Hardened extract() usage across campaign templates with EXTR_SKIP to prevent overwriting existing variables.
* Security: Switched a direct database query to $wpdb->prepare() with placeholders.
* Security: Sanitized posted product data in the Buy X Get Y add-to-cart handler.

= 2.2.14 – 09 September 2026 =
* Improvement: Performance Improved.

= 2.2.13 – 30 August 2026 =
* Fix: Tested for wordpress 7.1

= 2.2.12 – 24 August 2026 =
* Fix: Resolved slow campaign rendering by optimizing database queries.
* Fix: Fixed add-to-cart failing for variable products with non-Latin attribute values.
* Fix: Fixed variation attribute options not resolving correctly for non-Latin attribute names.
* Fix: Corrected generated URLs missing a slash before the hash fragment.

= 2.2.11 – 28 July 2026 =
* Improvement: Refactored code for better maintainability.
* Fix: Prevent frontend script load when file is missing.

[See changelog for all versions](https://bitbucket.org/wpstabon/revenue/raw/release/changelog.txt).
