SWPL Product Add-Ons

Getting started with SWPL Product Add-Ons

Last updated July 10, 2026

What SWPL Product Add-Ons does

SWPL Product Add-Ons lets you offer an optional companion product on a WooCommerce variable product page. When a customer picks a variation of the main product, a checkbox appears offering the matching variation of the add-on product. Tick it, and the page’s running total updates on the spot; add to cart, and both products land in the cart as separate line items.

The matching is automatic and tier-aware: if the customer selects the “Single” variation of the main product, the plugin finds the add-on’s own “Single” variation and offers that one, at its real price. Pick “Plus”, and the add-on’s “Plus” variation is offered instead. Because both products are ordinary line items, everything downstream – totals, taxes, order emails, and (if you use SWPL Licensing) license key generation – treats them as the two real products they are, each generating its own license.

Installation

  1. Go to Plugins > Add New > Upload Plugin, upload the plugin zip, and click Install Now.
  2. Click Activate. The plugin requires WooCommerce and works with variable products.
  3. When licensing arrives for your copy, enter your license key where prompted. Until then the plugin runs unlocked.
  4. Edit any variable product – a new Product Add-Ons tab appears in its Product Data box.

Initial setup

Configuration happens per product, on the main product that should offer the add-on:

  1. Edit your main product and open Product Data > Product Add-Ons.
  2. Set three fields:
    • Add-On Product – the variable product to offer as the optional extra.
    • Checkbox Label – the text shown beside the checkbox on the product page. You can use the {product_name} placeholder and it is replaced with the add-on product’s name.
    • Matching Attribute – the attribute slug both products share and that pairs their tiers, for example pa_license-type, pa_plan, or pa_tier.
  3. Update the product. That is the whole setup.

How it works for the customer

  1. The customer selects a variation on the main product (say, “Single”).
  2. The plugin finds the add-on variation with the same value of the matching attribute and shows the checkbox with that variation’s price.
  3. Ticking the checkbox updates the displayed total immediately; unticking removes it again.
  4. On “Add to cart”, the main product and the matching add-on variation are added as two separate cart line items.

Frequently asked questions

What happens when no matching add-on variation exists?

The checkbox is simply hidden for that variation selection. Nothing errors, and the main product can still be bought normally. If you want the add-on offered on every tier, make sure the add-on product carries a variation for each value of the matching attribute.

Do both products get their own license keys?

They appear as separate line items in the order, so if you sell with SWPL Licensing, each product generates its own license key – the add-on is a real purchase of a real product, not a bolt-on price adjustment.

Can I use a different attribute than license type for matching?

Yes. The Matching Attribute field accepts any attribute slug. The only requirement is that the main product and the add-on product both use that attribute for their variations, with matching values for the tiers you want paired.

Does it change my theme or checkout?

No. The plugin adds the checkbox to the variable product form and adds a normal line item to the cart. Cart, checkout, and order screens behave exactly as they do for any two products bought together. The plugin is HPOS compatible, so it works with WooCommerce’s high-performance order storage as well as the classic order tables.

Can the customer remove the add-on later?

Yes. Because the add-on is an ordinary cart line item, the customer can remove it from the cart like any other product while keeping the main product – and the reverse is equally true. The two are offered together on the product page, but they are not welded together in the order.

How do I price the add-on?

The add-on’s price is simply the price of its own variations – there is no separate add-on pricing to maintain. Set each variation’s price on the add-on product itself, and the checkbox displays the price of whichever variation matches the customer’s current selection.