Correctly handling the structure and mapping of products when selling the same product by both the case and unit to your customers is essential to ensure that both inventory levels and orders are correctly syncing between WooCommerce and QuickBooks Desktop with MyWorks Sync.
Offering the same product for sale as both a unit and a case is a common practice among many WooCommerce users. However, correctly implementing this in both WooCommerce and QuickBooks can be tricky (but worth it) - to ensure that orders are correctly syncing into QuickBooks and reducing inventory by the correct amount, and inventory levels are correctly being synced up to WooCommerce to keep WooCommerce stock levels accurate.
This doc explores best practices around structuring your products correctly in both WooCommerce and QuickBooks Desktop for these scenarios to accomplish seamless syncing.
In summary, when selling both cases and units in WooCommerce, it's important to make sure that the resulting order includes the correct quantity ordered to ensure that when the order syncs to QuickBooks, it reduces the quantity of a product by X amount. For example, if selling a case of 12 in WooCommerce, the order should reduce 12 from stock in QuickBooks, not just "1" case.
- It's typically best to manage inventory by unit in QuickBooks, and there's a few ways to accomplish this correctly.
- MyWorks Sync always uses the quantity in a WooCommerce order line item to determine the quantity for that same line item in the QuickBooks order.
Using an Inventory Assembly item in QuickBooks Desktop
For example, you have a case of 12 apples you're selling in your WooCommerce store. You also allow customers to purchase 1 apple at a time as a separate product.
In QuickBooks Desktop, you should create two products:
- One inventory product to manage the quantity of actual apples on hand.
- One Inventory Assembly product that's a bundle of 12 of your apple inventory product.
Then, in WooCommerce, you should have two products as well:
- One simple product to allow customers to purchase apples by the unit. This would be mapped to your single Apple product in QuickBooks in MyWorks Sync.
- One bundled product that's a bundle of 12 of your simple single Apple WooCommerce product. This would be mapped to your QuickBooks Inventory Assembly product in MyWorks Sync.
This will result in the following activities:
- When inventory is changed for the single Apple product in QuickBooks, this inventory will be synced to update the WooCommerce simple Apple product. Since the bundle also draws from this WooCommerce product, this will ensure the bundle doesn't ever oversell.
- When the single apple product is ordered, the order will be correctly synced to QuickBooks to reduce the number of single apple products in stock.
- When the case of 12 apples is sold in WooCommerce (for example if someone orders 3 cases), this will correctly sync to QuickBooks with the Inventory Assembly "case" item, which will reduce QuickBooks inventory by 36 apples.
Using a plugin in WooCommerce to manipulate quantity in an order
An alternative approach to using bundles is to instead control the quantity of a product in the WooCommerce order, as this is what we use when syncing the quantity of a specific line item into a QuickBooks order.
We recommend two plugins from WooCommerce.com that will either make this possible:
- WooCommerce Min/Max Quantities - this plugin allows you to set a multiple at which a product must be ordered (e.g. you must purchase in groups of X). This then ensures that if you're selling cases of 12 apples, you can set up a single product in both WooCommerce and QuickBooks to represent one apple, and you can set the product in WooCommerce to only be ordered in groups of 12. This would result in a WooCommerce order with a line item quantity of 36, which would sync into a QuickBooks order with a single line item of 36 apples, if 3 "Cases" were ordered in WooCommerce.
- WooCommerce Measurement Price Calculator - this plugin allows you to set a specific measurement quantity to sell products by - which will be based on the available "units" the product has in inventory.
This is advantageous in scenarios where you're selling products in a measurement other than case - for example lbs of coffee.
You can create a single product in QuickBooks with an inventory that represents all of the available lbs of a specific coffee product - for example 50, representing 50 lbs.
Then, in WooCommerce, this product would also have an available inventory of 50 - which would allow a user to purchase 1.5lbs, for example - which would then remove 1.5 from available quantity in WooCommerce and QuickBooks.