Product Assembly / Gift Wrap / … Cost for WooCommerce


This plugin allows you to add an option to your WooCommerce products to enable assembly, gift wrap or any other service and optionally charge a fee for it.

In WooCommerce > Settings > Products you can set up the default service status and cost, the service name, the message and the way the costs are shown on the cart.

If the customer chooses to add the service when buying the product, that information is shown in the cart and orders. The service cost can be added to the cart as a global fee, instead of at the product level, to avoid discount plugins to also affect it.

This is a fork of WooCommerce Product Gift Wrap by Mike Joley

Banner photos by Igor Ovsyannykov and


I need help, can I get technical support?

This is a free plugin. It’s our way of giving back to the wonderful WordPress community.

There’s a support tab on the top of this page, where you can ask the community for help. We’ll try to keep an eye on the forums but we cannot promise to answer support tickets.

If you reach us by email or any other direct contact means, we’ll assume you are in need of urgent, premium, and of course, paid-for support.

Is it possible to customize the message on each product page?

Yes. Use the product_assembly_cost_message filter. Here’s an example: link

Can I contribute with a translation?

Sure. Go to GlotPress and help us out.


November 28, 2020
Thanks Marco for making this simple but effective plugin. 🙂
July 22, 2020
Hi Thank you for creating such a wonderful plugin. Need to know it is showing same amount for multi currency. can it be changed for other currency.
Read all 3 reviews

Contributors & Developers

“Product Assembly / Gift Wrap / … Cost for WooCommerce” is open source software. The following people have contributed to this plugin.


“Product Assembly / Gift Wrap / … Cost for WooCommerce” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Product Assembly / Gift Wrap / … Cost for WooCommerce” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


2.2.2 – 2021-08-13

  • Tested with WordPress 5.9-alpha-51607 and WooCommerce 5.6.0-rc.2
  • Requires PHP 7.0

2.2.1 – 2021-03-10

  • Tested with WordPress 5.8-alpha-50516 and WooCommerce 5.1.0

2.2.0 – 2020-12-21

  • Stop using deprecated woocommerce_add_order_item_meta action and function
  • Tested with WordPress 5.7-alpha-49782 and WooCommerce 4.8

2.1.0 – 2020-11-19

  • Add the checkbox even if it wasn’t specified on the message template
  • Do not load our class unless WooCommerce is active
  • Tested with WordPress 5.6-beta3-49562 and WooCommerce 4.8.0-beta.1

2.0.1 – 2020-08-27

  • Bugfix when adding the service information to the order item metadata

2.0.0 – 2020-08-16

  • New option to multiply service cost by the quantity of product purchased (default) or charge only once per cart line (new)
  • It’s now possbile to set variation service cost (breaking change if you’re already using this for variations, please check all your variations)
  • Fix taxes bug (sorry guys 😐) – but still defaulting to the standard tax and cost set to taxable (we will revise this on a next version)
  • Drop WooCommerce prior to 3.0 support
  • Tested with WordPress 5.6-alpha-48783 and WooCommerce 4.4.0-rc.1


  • Follow the “Prices entered with tax”, “Display prices in the shop” and “Display prices during cart and checkout” WooCommerce tax settings
  • Tested with WooCommerce 4.2.0-beta.1


  • Technical support clarification
  • Tested with WordPress 5.5-alpha-47761 and WooCommerce 4.1.0


  • Bugfix when used with AutomateWoo
  • Tested with WooCommerce 4.0.0


  • You can now enable the service by default and then explicitly disable it on each product
  • New product_assembly_cost_message filter to customize the message
  • Bugfix on the default service status
  • Tested with WordPress 5.3.3-alpha-46995 and WooCommerce 3.9.0-rc.2


  • Make the service name configurable so that it can be used for anything rather than just assembly
  • New option to add the service name to the product name on the cart and order items, which can be useful for warehouse operations or invoicing
  • Plugin name change
  • Tested with WordPress 5.3.1-alpha-46798 and WooCommerce 3.9.0-beta.1


  • Tested with WordPress 5.2.5-alpha and WooCommerce 3.8.0


  • Added “/ unit” on assembly cost on each cart item
  • Tested with WooCommerce 3.5.1 and bumped WC tested up to tag


  • Use WooCommerce 3.0 (and above) CRUD functions to read/update product meta
  • Bumped WC tested up to tag


  • Fix for variations with assembly cost


  • readme.txt improvements