Pricing options, image swatches, and more have arrived in Product Add-Ons 3.0

Written by Lauren Smith on October 23, 2018 Blog, Product News.

Today we’re excited to announce that WooCommerce Product Add-Ons 3.0.0 has been released!

Release Highlights

We’ve been listening to your feedback and we’re excited to share with you some new features for WooCommerce Product Add-Ons! We’ve added the ability for you to adjust your pricing strategies with either a flat fee or a percentage ( this is in addition to the quantity pricing that already existed ). We’ve also added the ability for you to add image swatches to your product add-ons allowing customers to have a more visual representation of what they are picking. The last major feature is adding a line-item breakdown of the add-ons that have been selected for the lifecycle of the customers purchase.

Pricing options

As of 3.0.0 you will now be able to select from three different pricing strategies: flat fee, quantity based, and percentage based.

  • Quantity-based will multiply the add-on cost by the product price and product quantity ( this how Product Add-Ons worked prior to 3.0.0 )
  • [New] Percentage-based will calculate a percentage of the product price multiplied by the quantity – you can use this for gratuity, upgrades prices as a percent of the total price, or donations
  • [New] Flat fee will be a flat amount regardless of the product price or quantity – you can use this for upgrades that are applied once, regardless of the quantity ordered, like a printing set-up fee

Image Swatches

We’ve added a feature to allow image swatches for selection as an add-on in the frontend. For example, instead of picking from a list of colors, you can now upload image swatches that customers will be able to choose to add to their cart.

Line items display

We’ve added a line item view on the cart and checkout pages, to let your customers more easily understand how add-ons are contributing to the price they’re being charged.

Here are a couple examples of what that will look like:

Technical Updates


  • Changed woocommerce_add_cart_item hook to woocommerce_cart_contents_changed due to WooCommerce 3.5
  • Added woocommerce_before_cart_item_quantity_zero – Remove add-ons that are tied to parent product in the cart.
  • Added woocommerce_after_cart_item_quantity_update – Update the add-on quantity and line item price when parent product quantity is updated.
  • Added woocommerce_before_calculate_totals – Set the add-on price to the line item total.
  • Added woocommerce_remove_cart_item – Remove the add-on when parent product is removed.
  • Added woocommerce_restore_cart_item – Restore the add-on of the parent product when undo is clicked.

Order item meta

  • Parent product – _wc_pao_attached_addons – the list of add-ons added with the product.
  • Add-on item – _wc_pao_addon_name – add-on name.
  • Add-on item – _wc_pao_addon_value – add-on value.
  • Add-on item – _wc_pao_addon_field_type – add-on field type.
  • Add-on item – _reduced_stock – to prevent parent product from decreasing stock from an add-on.


The following addon types will no longer have option rows:

  • Short Text – Formerly Custom input (text)
  • Long Text – Formerly Custom input (textarea)
  • File Upload
  • Price – Formerly Additional price input
  • Quantity – Formerly Additional price multiplier


Migration on these changes will be seamless for you to upgrade as we’ve written a migration script to handle all of that work for you. We will not migrate settings for existing orders so that all of your records from before 3.0.0 will remain intact.

Everything else . . .

  • We’ve redesigned the way that you build your add-ons both globally and per-product to help make store administration easier and more intuitive

  • We’ve added additional compatibility for these features with WooCommerce Bookings
  • We’ve added compatibility for WooCommerce 3.5

On top of the new features, there are a variety of minor tweaks, and fixes which we won’t go into detail here but you can check out for yourself in the changelog.

We will be continuing to work on more updates. Check out the ideas board to keep up to date or suggest new improvements.

Offer customizable products with WooCommerce Product Add-ons

47 Responses

  1. Ben J
    October 23, 2018 at 11:49 pm #

    This is awesome! Glad to see this getting developed further. I’ve used this plugin for many clients and this is just going to make it even more important.

  2. Jacob
    October 24, 2018 at 3:37 am #

    Just updated… But now all backend product Add-On menu options are all jumbled up… Everything is all over the place. Help! Please provide an email so I can send a screenshot.

    • Roy Ho
      October 24, 2018 at 5:43 am #

      Hi Jacob,

      The menu is probably just cached. Try doing a hard refresh on your browser.

  3. Joel Steinmann
    October 24, 2018 at 8:05 am #

    cool stuff. but on all my pages since the update the backend interface looks very chaotic. I guess you have some issues with CSS and styling? e.g. the form boxes are weirdly organized. there is no space really between them and I think it has something to do with the loop and its html structure. but you can tell better 🙂 thanks for make it even better.

    • Roy Ho
      October 24, 2018 at 3:31 pm #

      Hi Joel,

      Try doing a hard refresh on your browser.

  4. Moutaz
    October 24, 2018 at 8:51 am #

    Thanks for the plugin idea.

    Same here all boxes are weirdly organized and over lapping each other in admin product page.

    Add-on images are not working when selecting checkboxes. It only works with multiple choice option.

    Also I am getting 1xUndefined for the actual product price How can I change the undefined to product name. If you provide and email to send screen shots.

    • Moutaz
      October 24, 2018 at 9:21 am #

      Hard Refresh fixed my display issue. Thanks for that. Still need clarification on the other 2 points.

      Images to work with checkboxes

      1 x undefined ———— “Product Price”

      Also if I setup multiple choices field as a not required field and the customer click a choice how can they un-select it? currently there are no option.

      • Roy Ho
        October 24, 2018 at 3:33 pm #

        Hi Moutaz,

        > Images to work with checkboxes

        Image swatches only work with Multiple Choice at this time.

        > 1 x undefined ———— “Product Price”

        I would suggest contacting support about this so we can get more details from you.

        > Also if I setup multiple choices field as a not required field and the customer click a choice how can they un-select it? currently there are no option.

        When it is not required, there is an extra “None” option ( radio buttons ) for the first choice.

        • Moutaz
          October 28, 2018 at 7:09 am #

          Thank you so much.

          One more request, Is it possible to add URL validation for short text as an option under restriction. Currently you have:
          Any Text
          Only Text
          Only Numbers
          Only Letters and numbers
          Only Email address

          I would appreciate if you add Only URL so customer can past any link or URL from a website and it will validate it as URL or not.

          Thanks in advance.

  5. alphacreative
    October 24, 2018 at 9:37 am #

    Hi, I think the ‘Flat Fee’ is the option that I have been looking and hoping for, but I have a question about it before I purchase:

    If I have a global add-on that uses a flat fee (for a print logo setup) of say £10, and my customer selects the add-on on 10 completely different products, will they be charged £10, or £100 during checkout for the add-on?

    To add some context to my question, on each of my separate products I will have a file upload add-on, so a customer can upload their logo to be printed on their product. I require them to upload their logo to each product, but I only want them to be charged once (as a flat fee).

    Thanks in advance, Chris

    • Roy Ho
      October 24, 2018 at 3:30 pm #


      Unfortunately it will not work in your favor. Flat fee here means regardless of the quantity of the product added (same product) it will not multiply that by the add-on price. Previous version was always multiplied by quantity.

      There are many plugins out there that may do what you’re looking for though. You can try or this

      I hope that helps.

    • Aviva Pinchas
      October 24, 2018 at 3:35 pm #

      Hey there –

      If you’d like to charge a setup fee just once when a customer goes through checkout (so not based on the specific product they order), then WooCommerce Checkout Add-Ons might be a better fit for you:

      • alphacreative
        October 25, 2018 at 10:19 am #

        Thanks Aviva for your quick reply. Yeah I already have checkout add-ons running, and it does ok, I just thought for my customer journey it would be simpler for them to upload their logo on the product pages rather than the checkout page, as its easier to miss it on the checkout page.

        I have looked into multiple solutions and plugins for exactly what I am looking for and not sure its possible!

        Thanks anyway, i’m a big fan of Woo

  6. Michael Scott
    October 24, 2018 at 10:22 am #

    Where are the Docs for implementing the swatches etc.?
    I assumed you would simply add an image to each attribute, nothing there??
    The CSS is all over the place even after clearing cache & refresh.
    Also, you need to sort this plugin so it works with Stripe Apple Pay – An issue which has been ongoing for at least 2 years now.

    • Roy Ho
      October 24, 2018 at 3:34 pm #

      Hi Michael,

      Here you go

  7. Michael Scott
    October 24, 2018 at 5:15 pm #

    Thank you Roy.
    It doesn’t make much sense.
    We use product attributes to create our product variations (ie: Colour).
    We want to replace the colour attributes with swatches.
    Can we not add an colour image to replace those attributes instead of them appearing in a drop-down?

    • Roy Ho
      October 24, 2018 at 6:07 pm #

      Ah, so is for Product Add-ons only. What you’re referring to is the variations and not related to Product Add-ons. What you probably need is this

      • Adam
        October 27, 2018 at 2:37 pm #

        I might be misunderstanding this but based on this article it sounds like Product Add-ons replaces the WooCommerce Variation Swatches and Photos plug-in. Am I wrong?

  8. 1911builders
    October 24, 2018 at 6:22 pm #

    how go I get this updated? Im currently running 2.9.6

    • Roy Ho
      October 24, 2018 at 6:49 pm #

      You can go to your dashboard to download it from here

      • 1911builders
        October 24, 2018 at 10:57 pm #

        got thanks.

        • 1911builders
          October 24, 2018 at 11:27 pm #

          how can I change the image size smaller than 280 x 280?

          • 1911builders
            October 24, 2018 at 11:46 pm #

            Also the pricing and options calculator are gone?

          • Roy Ho
            October 25, 2018 at 5:09 am #

            Check your thumbnail size setting here

  9. 1911builders
    October 24, 2018 at 11:56 pm #

    it’s gone from the product page itself. The only way to see the total of all your options selected is to put it in the cart.

  10. 1911builders
    October 25, 2018 at 2:05 am #

    On the product page when you select and use variation the item picture goes blurry

  11. Christina Breault
    October 25, 2018 at 12:52 pm #

    I cannot update my options, which suddenly became all required field and no matter how many times I uncheck the required field, and save, it goes right back to required field. I’m not happy at all with this update as the only benefit to me so far is really none but take time to fix what shouldn’t be broken.

    • Christina Breault
      October 25, 2018 at 12:58 pm #

      Just deleted the stubborn field, recreated it from scratch, to be NON-REQUIRED, it saves as a required field. I give up. I’m going to delete the plugin and not use it anymore.

  12. Christina Breault
    October 25, 2018 at 12:58 pm #

    I totally hate to have to deal with a problem I shouldn’t have.

  13. Christina Breault
    October 25, 2018 at 1:14 pm #

    In fact I received an order (since this update) and none of my required fields at the add-on came along with the order. This is a repeat event as I keep receiving orders without the required additional options included, such as photos and extra information I need from the buyer with their orders. Sometimes I get the *required* add-on info I need with my orders and sometimes I don’t. This reoccurring problem is defeating the use of the plugin.

  14. VIParts.NL
    October 25, 2018 at 6:49 pm #


    With many items I have (technical) variations of items and/or selection of production brands.
    With all selections I add an image (when available) and nothing is changing on the website when selecting an option, so the added picture to the specific selection is only visible in the chart.
    Why isn’t the main picture changing to the specific picture of a selection that a viewer selects? THAT would be a major improvement ans now they select, they see some small extra images I’ve added to the main product and that’s it. Would be much more clear to a viewer when they select an option and the main picture shows the uploaded picture to that selection.
    Now I’m searching for an app but haven’t found a good one and next to that another app just slows my website even more down and it’s already going so slow.

    What also would be an improvement to the pictures:

    -When clicking on the main picture you cannot go to the next picture that is shown under it. You need to X and then open the smaller ones. Not good or practical as well.
    It’s not possible to show all pictures in a fixed square when the uploaded pictures aren’t the same size. Looks very messy now. I need to put all pictures into a white square to get them all the same size as otherwise pictures can also get cut at sides or it’s not looking like the original to get it automatically squeezed in the frame bij Woocommerce.

    -The option to put a watermark automatically on all pictures of the items (with a checkbox on/off for the watermark) so I don’t need to process all pictures to add a watermark. Would safe a lot of work and all pictures would be adjusted when a new watermark would be implemented or maybe something would be added for some holidays like Halloween or Xmas. 😉

    If there are options to solve these things easily I would love to hear that!

    Thank you for any response and help.

    Kind regards,
    René van Gestel.

  15. Franck
    October 25, 2018 at 7:18 pm #

    This is great news.
    I just wish there was a support for people who don’t pay woocommerce since I don’t earn money and there is a problem with my small shop


  16. Kristoffer Nygård
    October 26, 2018 at 6:38 am #

    Great update! Still missing the possibility to connect specific add ons to a variaton. I have 5 products of different sizes and my add ons are also different in size/price in accordance. This means i need to make my main product as 5 independent products in order to differentiate between my add ons.

    Is there a chance that this will be enabled in later versions? Brgds Kristoffer

  17. Philip Geenwood
    October 27, 2018 at 2:42 am #

    This update is exactly what we have been waiting for since it does a great job of explaining to customers the options that we offer for a standard product.
    The only problem so far is that order emails sent are a little confusing.
    We have product images set “true” and 48px
    Now each Add-on item list as a separate line item (very handy) but a product image file is also there. The resulting email looks like an order for multiple products not one product with Addons.
    Can we get some thing that will leave product image in the email but remove the image for Addons. Better still where the add-on selector is an image, can this list that add-on image selection?

  18. 1911builders
    October 29, 2018 at 8:48 pm #

    Any Idea how this happened? I’ve lost the dropdown choice and once it’s selected, you can’t un sellet

  19. Christina Breault
    October 29, 2018 at 10:12 pm #

    I lost USD$25 today over a charge-back due to this update as all of my variable products no longer work as virtual products and are now treated as shippable products only. Hence, it imposed and charged my customer international shipping fees on a product that was configured, and previously working, as a variable virtual product. I noticed variable product option is no longer available to be a virtual product and now I can only sell variable virtual products using the plugin. All my variable virtual products became automatically shippable products, which caused me a big headache today and time to adjust all my numerous products! It seems, now, if I don’t have the plugin, I can no longer create variable virtual products as it imposes to be shippable only. While I appreciate the additional features in this plugin, I can see that a trade-in has been imposed by the removal of previously available options perhaps to force sellers of variable virtual products to purchase the plugin as the only option. I feel that you guys should issue me a coupon or some sort of credit for my troubles since these update, which I recognize are good updates but perhaps too intense to spare other functions from being affected.

  20. zerolagperformance
    November 7, 2018 at 2:54 am #

    I have this add on and am having issues with using it. It seems to take the parent weight and package dimensions and ads them to each ” add-on” line item throwing off my calculated shipping costs.

    • Philip Greenwood
      November 7, 2018 at 11:39 pm #

      I have this also and for some products the miscalculation is catastrophic.

  21. tagurgear
    November 7, 2018 at 12:11 pm #

    How do you disable the new line items display and go back to the pre 3.0 style?

  22. 1911builders
    November 8, 2018 at 8:28 pm #

    The calculator is not working. I have 1 item for 240.00 with 2 options
    1 is free
    2 is +10.00

    total on the order is 720 should be 250.00
    its not using the add on option price and taking 240 x 3
    screenshot below
    it was working just fine yesterday

  23. 1911builders
    November 13, 2018 at 11:21 pm #

    I see you’ve updated your plug in and it seems to have fixed the calculator and inventory on hand issues. Your fix has created another issue when using pictures. You have none as an option and with out a photo it looks bad. Can you remove that? Please see my sample image

    What is driving the thumbnail image ? Mine is set at 280 x 280 and its not?