=== PickPair - Product Bundles, Frequently Bought Together, Cart Upsell & Checkout Order Bump for WooCommerce ===
Contributors: ysinnovations
Donate link: https://ysplugins.com/pickpair/
Tags: product bundles, frequently bought together, woocommerce upsell, order bump, cross sell
Requires at least: 5.3
Tested up to: 7.1.4
Requires PHP: 7.4
Requires Plugins: woocommerce
Stable tag: 2.0.3
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Create WooCommerce product bundles, Frequently Bought Together, cart upsells & checkout order bumps in one fast plugin. Boost AOV easily.

== Description ==

**Stop Installing 5 Separate Plugins Just to Increase Your WooCommerce Order Value.**

If you want customers to buy more than one item in your WooCommerce store, you normally have to install one plugin for product bundles, another for Frequently Bought Together boxes, a third for cart upsells, a fourth for checkout order bumps, and a fifth for thank you page coupons. That slows down your site and costs too much to manage.

**PickPair gives you all of them inside one fast, lightweight WooCommerce plugin.**

Without writing a single line of code, you can show Amazon-style Frequently Bought Together recommendations on product pages, sell discounted product bundles, trigger add-to-cart popups, recommend cross-sells in the cart, add one-click order bumps at checkout, and send next-order coupons on the Thank You page.

[Visit Official Website](https://ysplugins.com/pickpair/) | [See All Features](https://ysplugins.com/pickpair/features/) | [View Pricing & Plans](https://ysplugins.com/pickpair/pricing/) | [Get Support](https://ysplugins.com/support/)

= Why WooCommerce Store Owners Choose PickPair =

- **Replace 5 Plugins With 1:** Run product bundles, Frequently Bought Together, cart upsells, checkout bumps, popups, free shipping bars, and post-purchase offers from one dashboard.
- **One-Click No-Reload Cart Additions:** Shoppers can check the items they want and add entire bundles or order bumps to their cart instantly via AJAX without reloading the page.
- **Full Discount Control:** Offer percentage discounts, fixed amount discounts, or a single flat price for a bundle. You can apply bundle discounts to the main trigger product, the add-on items, or both.
- **Works With Modern WooCommerce Blocks:** Fully compatible with both classic WooCommerce cart/checkout shortcodes and the new WooCommerce Cart & Checkout Gutenberg Blocks.
- **Smart Display & Targeting Rules:** Show offers based on specific products, categories, cart subtotals, user roles, login status, or whether the shopper has bought from you before.
- **Built-In Revenue Analytics:** See exactly how many views, clicks, orders, and extra sales each campaign brings in.
- **Zero Storefront Bloat:** Frontend scripts load only on the pages where an active offer is running, keeping your store and checkout fast.

= Cover Every Step of Your Customer's Buying Journey =

Most shoppers buying a phone do not go hunting through your catalog to find the right phone case, screen protector, or warranty. They need to see those items at the exact moment they are ready to buy. PickPair lets you place targeted offers at every stage of your store funnel:

**1. On the Product Page (Before They Add to Cart)**

- **Frequently Bought Together:** Display an Amazon-style box right on the product page showing items that go together. Customers tick the checkboxes they want and add everything to the cart in one click.
- **Product Bundles:** Group 2 or more related products into a package deal at a percentage off, a fixed discount, or a flat bundle price (for example, a Cleanser + Toner + Moisturizer skincare kit for $49).
- **Product Page Add-ons:** Let shoppers add simple one-click extras to an item, such as gift wrapping, custom engraving, or an extended warranty.

**2. The Moment They Click "Add to Cart"**

- **Add-to-Cart Popup Offers:** Catch the shopper's attention right as they add an item to their cart with a clean popup suggesting a matching accessory or special deal.

**3. Inside the Cart Page or Cart Drawer**

- **Cart Upsells & Cross-Sells:** Recommend complementary items or product upgrades while the shopper is reviewing their cart.
- **Cart Add-ons:** Offer whole-order extras like priority order handling or gift packaging with a single click.
- **Free Shipping Progress Bar:** Show buyers how much more they need to spend to unlock free shipping, encouraging them to add one more product to their cart.

**4. On the Checkout Page (Right Before Payment)**

- **One-Click Checkout Order Bumps:** Place a compact, high-converting offer box right next to the payment section. Shoppers tick one box to add an impulse item, protection plan, or rush shipping without leaving checkout.

**5. On the Thank You Page (After Checkout)**

- **Post-Purchase Offers:** Show a special one-time deal on the order confirmation page right after checkout is completed.
- **Next Order Coupons:** Automatically generate a personalized discount coupon for the customer's next purchase, complete with an expiration date and custom brand colors to turn first-time buyers into repeat customers.

= Smart Pricing, Stock & Currency Controls =

PickPair is built for real WooCommerce catalog management so your margins and inventory stay protected:

- **Target Your Bundle Discounts:** Choose whether a Frequently Bought Together discount applies to the main product, the recommended add-on items, or the entire bundle.
- **Sale Price vs. Regular Price Rules:** Decide whether campaign discounts calculate from a product's regular price or its active WooCommerce sale price.
- **Out-of-Stock Bundle Protection:** Automatically prevent a bundle from being purchased if any required item inside the bundle runs out of stock.
- **Automatic Self-Exclusion:** If a customer already has an item or is viewing it, PickPair never recommends that same product as its own add-on.
- **Multi-Currency Support:** Works smoothly with supported WooCommerce multi-currency conversion plugins for international stores.

= Target Offers So Customers Only See What Fits =

Showing the same generic upsell to every visitor does not convert. PickPair lets you set precise rules for every campaign:

- **Product & Category Rules:** Trigger offers only when specific products or categories are being viewed or are inside the cart.
- **Cart Value Conditions:** Show an offer only when the cart total is above or below a specific amount (for example, offer a discounted accessory on orders over $50).
- **Customer & Role Targeting:** Display different offers to guest visitors, logged-in customers, wholesale roles, or VIP members.
- **Past Purchase History:** Target returning customers based on their previous orders, or show a special welcome bundle to first-time buyers.
- **Flexible Page Placement:** Choose the exact position where your offer widget appears on product, cart, and checkout pages so it matches your theme cleanly.

= Real-World Examples You Can Set Up in Minutes =

- **Electronics & Gadgets:** Show a Frequently Bought Together box on a camera page with a memory card and carrying bag at 10% off, then offer a 2-year warranty as a checkout order bump.
- **Clothing & Apparel:** When a shopper adds a dress or jacket to their cart, show a cart cross-sell for a matching belt or handbag.
- **Health, Beauty & Supplements:** Bundle 3 bottles or a 3-step routine together at a flat bundle price to double your average order value on the product page.
- **Pet Supplies:** Trigger an add-to-cart popup offering discounted pet treats whenever a customer adds a bag of pet food to their cart.
- **Digital Products & Courses:** Offer a companion workbook or template pack as a one-click checkout order bump or Thank You page offer.
- **Any WooCommerce Store:** Display a Next Order Coupon on the Thank You page that expires in 14 days to bring buyers back for a second order.

= Track Every Sale With Built-In Campaign Reports =

Stop guessing which offers are actually making money. PickPair includes a clean analytics dashboard inside WordPress that tracks:

- **Total extra revenue** generated by PickPair across your store
- **Campaign-by-campaign breakdown** of views, clicks, conversion rates, and revenue earned
- **Quick search, sorting, and filtering** so you can see your top-performing bundles and order bumps at a glance

Explore all features on the [PickPair features page](https://ysplugins.com/pickpair/features/) or compare plan options on the [pricing page](https://ysplugins.com/pickpair/pricing/).

== Installation ==

= Minimum System Requirements =

- WordPress 5.3 or higher
- WooCommerce 4.0 or higher
- PHP 7.4 or higher

= Automatic Installation =

1. Log in to your WordPress admin dashboard.
2. Go to **Plugins > Add New**.
3. Search for **PickPair**.
4. Click **Install Now**, and then click **Activate**.
5. Click **PickPair** in your left-hand WordPress menu to launch your first campaign.

= Manual Installation =

1. Download the PickPair plugin ZIP file.
2. In your WordPress dashboard, go to **Plugins > Add New > Upload Plugin**.
3. Select the ZIP file, click **Install Now**, and activate the plugin.

= How to Create Your First High-Converting Offer in 2 Minutes =

1. Go to **PickPair > Campaigns** and click to create a new campaign.
2. Select **Frequently Bought Together** (for product pages) or **Checkout Order Bump** (for the checkout page).
3. Pick the product you want to recommend, set an optional discount (such as 10% off), and click **Publish**.
4. Visit your store to see the offer live, and check **PickPair > Reports** after a few days to track your extra sales.

== Frequently Asked Questions ==

= How do I create Amazon-style Frequently Bought Together bundles in WooCommerce? =

Install PickPair, create a new **Frequently Bought Together** campaign, choose your main trigger product, and select the matching products you want to recommend alongside it. You can offer them at regular price or add a percentage, fixed, or flat discount. Customers can check the items they want and add them all to the cart in one click.

= Can I choose whether the bundle discount applies to the main product or only the add-on items? =

Yes. In Frequently Bought Together campaigns, you can apply the discount to the trigger product only, the recommended add-on products only, or both.

= How do I add a one-click order bump on the WooCommerce checkout page? =

Create a **Checkout Order Bump** campaign in PickPair, select the product or service you want to offer (such as gift wrapping, priority shipping, or a small accessory), and choose your targeting rules. A clean offer box will appear on the checkout page where buyers can add it to their order with a single click before paying.

= Does PickPair work with the new WooCommerce Cart and Checkout Blocks? =

Yes. PickPair works out of the box with both classic WooCommerce `[woocommerce_cart]` and `[woocommerce_checkout]` shortcodes and the modern WooCommerce Cart and Checkout Gutenberg Blocks.

= Will PickPair slow down my WooCommerce website? =

No. PickPair only loads its frontend scripts on pages where an active offer campaign is displayed. It is also built to work smoothly with caching plugins like WP Rocket and LiteSpeed Cache.

= What is the difference between Product Bundles and Frequently Bought Together? =

**Product Bundles** group items together as a fixed package deal (buy all of these together to get the bundle price). **Frequently Bought Together** lets the shopper customize their selection by checking or unchecking individual recommended items before clicking "Add Selected to Cart." PickPair includes both.

= Can I offer one-click add-ons like gift wrap or an extended warranty? =

Yes. You can use **Product Add-ons** on individual product pages, **Cart Add-ons** on the cart page, or **Checkout Order Bumps** at checkout to offer extra services or warranties in one click.

= Can I show upsells or cross-sells based on what is already in the customer's cart? =

Yes. You can set targeting rules based on specific products in the cart, product categories, minimum or maximum cart subtotals, user roles, login status, and past customer orders.

= What happens if one of the products in a bundle goes out of stock? =

You can enable stock protection so that if any required item inside a bundle goes out of stock, the bundle is automatically prevented from being purchased.

= Does PickPair support multi-currency stores? =

Yes. PickPair includes multi-currency support for supported WooCommerce currency switcher plugins. You can also choose whether offer discounts calculate from the regular price or the current sale price.

= Can I automatically send a coupon for the customer's next order? =

Yes. The **Next Order Coupon** campaign generates a discount coupon on the Thank You page after checkout, with customizable expiry dates, colors, and minimum spend rules to encourage repeat orders.

= How do I track how much revenue PickPair generates for my store? =

Go to **PickPair > Reports** in your WordPress dashboard to view total extra revenue, impressions, clicks, and conversion counts for every campaign you run.

= Where can I get support or see plan options? =

You can ask questions in the WordPress.org support forum, visit the [PickPair website](https://ysplugins.com/pickpair/), compare plans on the [pricing page](https://ysplugins.com/pickpair/pricing/), or contact our team on the [support page](https://ysplugins.com/support/).

== Screenshots ==

1. Main Dashboard: Track total extra revenue, campaign conversions, and sales performance at a glance.
2. Frequently Bought Together Widget: Amazon-style product page bundle box with checkboxes and one-click add to cart.
3. Campaign & Bundle Editor: Set up trigger products, add-on items, discount targeting, and pricing rules in minutes.
4. Cart Upsell & Free Shipping Bar: Suggest matching cross-sells in the cart while motivating buyers to unlock free shipping.
5. Checkout Order Bump: High-converting one-click offer placed right before payment on the checkout page.
6. Smart Targeting Rules: Filter who sees each offer by product, category, cart total, user role, and past orders.
7. Revenue & Conversion Reports: Measure views, clicks, orders, and extra revenue for each campaign.

== Privacy ==

PickPair uses WooCommerce store data to determine which offers to display. Depending on the conditions configured by the store administrator, the plugin may check cart contents, cart totals, customer login status and previous orders.

The campaign reports feature records offer views, clicks and sales. The Next Order Coupon feature creates a coupon for a customer's next purchase after an order is placed.

Store administrators are responsible for reviewing their site's data collection and processing practices, maintaining an appropriate privacy policy and complying with applicable privacy requirements.

== Upgrade Notice ==

= 2.0.3 =
Introduces advanced Targeting & Condition Engine with recursive Rule Groups and Root Group Arbitration, Cross-Page Anti-Cannibalization, Product Presentation controls (Show All vs Rotate 1 at Random), restored Order Status Pill Badges, and CampaignOrchestrator anti-fatigue safeguards. Updating is recommended.

= 2.0.2 =
Introduces A/B testing for campaigns, high-performance bulk campaign management via AJAX, dashboard performance caching, and UI typography refinements. Updating is recommended.

= 2.0.1 =
Adds interactive widget position preview across all campaign editors, dynamic multi-format image resolution (.webp, .png, .jpg), smooth tactile preview animations, soft background blur, and stability improvements.

= 2.0.0 =
Major release featuring a completely revamped admin dashboard and navigation, modernized tabbed campaign editors, improved product variation handling, and UI/UX performance optimizations.

= 1.1.3 =
Includes important fixes for fixed discount calculations across all offers, in-cart popup product filtering, and widget display improvements. Updating is recommended.

== Changelog ==

= 2.0.3 - November 5, 2026 =
* New: Advanced Targeting & Condition Engine with recursive Rule Groups, nested AND/OR condition logic, and Root Group Arbitration across campaigns.
* New: Cross-Page Anti-Cannibalization control to automatically suppress redundant checkout offers if a product has already been added to the cart during the customer session.
* New: Product Presentation controls for multi-item offers: choose between displaying all selected items or rotating 1 product at random with optional fallback pool support.
* New: CampaignOrchestrator service for centralized offer orchestration, session state evaluation, and anti-fatigue frequency management.
* Improved: Server-side ConditionEvaluator with comprehensive evaluation of customer lifetime spend, order history, cart totals, and user roles.

= 2.0.2 - October 30, 2026 =
* New: A/B testing support for campaigns to test variants and compare performance.
* New: High-performance bulk campaign operations via WordPress AJAX (bulk activate, pause, delete, and quick inline rename).

= 2.0.1 - October 17, 2026 =
* New: Interactive Widget Position Preview modal and trigger button for all campaign editors (Frequently Bought Together, Product Add-ons, Cart Upsell, Cart Add-ons, Checkout Upsell, Thank You Upsell, Next Order Coupon).
* Improved: Real-time automatic position preview reflection when selecting options from the position dropdown.
* Fixed: Order tracking and analytics recording reliability.

= 2.0.0 - October 9, 2026 =
* New: Completely redesigned admin user interface with a modern dashboard layout, collapsible sidebar, and breadcrumb navigation.
* New: Unified tabbed workflow (Product, Design, Behavior) across all campaign editors for faster offer configuration and live preview simulation.
* Improved: Product variation handling, custom attribute selection, and stock checks for Cart and Thank You Page upsell offers.
* Improved: Added impression view count limits and refined targeting behavior for Cart Upsell and Product Add-on campaigns.
* Improved: Modernized revenue analytics with interactive revenue trend charts, conversion breakdowns, and top performing categories.

= 1.1.3 September 23, 2026 =
* Fixed: Fixed Amount discounts now correctly subtract the discount from the product price across all campaign types.
* Fixed: Products already in the cart are no longer shown in the Upsell Popup.
* Fixed: Upsell Popup now triggers correctly when adding products from single product pages.
* Fixed: Lengthy product titles in the Cart Upsell widget now wrap cleanly without breaking the layout.
* Fixed: FBT bundle variation selections and total savings calculations.
* Improved: Live preview price calculations in all campaign editors now accurately match storefront pricing.

= 1.1.2 - September 10, 2026 =
* New: Discount targeting option for Frequently Bought Together bundles. Apply discounts to trigger products, add-on products, or both.
* Security: Fixed unauthorized bundle discount application.
* Security: Improved bundle product validation.
* Improved: Hardened campaign validation.

= 1.1.1 - September 4, 2026 =
* New: Multi-currency support for supported currency conversion plugins.
* Fixed: Product add-on totals now use the current sale price for the main product and show regular prices in the original total.
* Fixed: Add-on discounts now calculate consistently with the selected sale or regular price setting.

= 1.1.0 - August 28, 2026 =
* New: Next Order Coupon offer with a custom expiry date, colors, and conditions.

= 1.0.6 - August 20, 2026 =
* New: Cart Add-on and Product Add-on offers.
* Improved: Offers can now be shown based on a customer's past orders.

= 1.0.5 - August 13, 2026 =
* New: Pop-up offer shown when a product is added to the cart.

= 1.0.4 - August 7, 2026 =
* New: Special offer on the Thank You page after checkout.

= 1.0.3 - July 31, 2026 =
* New: Setting to choose sale price or regular price for offers.
* Improved: Offer prices now follow the selected price type.
* Improved: Updated plan feature management.

= 1.0.2 - July 24, 2026 =
* Fixed: A product could no longer be shown as its own add-on.
* Fixed: Product positions and product selection in the campaign editor.
* Fixed: Labels and styling for Product Add-ons, and dropdown and card display on the offer list page.
* Improved: Layout and styling across the editor pages.

= 1.0.1 - July 17, 2026 =
* New: Reports page with revenue, sales, and offer performance.
* New: PickPair icon in the admin menu.
* Improved: Search, filters, and sorting on the offer list page, with views and revenue shown for each offer.
* Improved: Rebuilt the admin area and sped up the admin dashboard.

= 1.0.0 - July 13, 2026 =
* First public release.
* Frequently Bought Together offers, Product Bundles, Product Page Add-ons, Cart Recommendations and Cart Upsells, and Checkout Recommendations.
* Rules and conditions: target by products, categories, cart total, customer type, and past orders.
* Campaign reports.
* Support for WooCommerce Cart & Checkout Blocks.
* No-reload cart updates and a mobile-friendly design.
* Stock checks for bundled products.